grpc 0.13.0.pre1.1-universal-darwin

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of grpc might be problematic. Click here for more details.

Files changed (95) hide show
  1. checksums.yaml +7 -0
  2. data/etc/roots.pem +5114 -0
  3. data/grpc_c.32.ruby +0 -0
  4. data/grpc_c.64.ruby +0 -0
  5. data/src/ruby/bin/apis/google/protobuf/empty.rb +44 -0
  6. data/src/ruby/bin/apis/pubsub_demo.rb +256 -0
  7. data/src/ruby/bin/apis/tech/pubsub/proto/pubsub.rb +174 -0
  8. data/src/ruby/bin/apis/tech/pubsub/proto/pubsub_services.rb +103 -0
  9. data/src/ruby/bin/grpc_ruby_interop_client +33 -0
  10. data/src/ruby/bin/grpc_ruby_interop_server +33 -0
  11. data/src/ruby/bin/interop/interop_client.rb +51 -0
  12. data/src/ruby/bin/interop/interop_server.rb +50 -0
  13. data/src/ruby/bin/math.rb +32 -0
  14. data/src/ruby/bin/math_client.rb +147 -0
  15. data/src/ruby/bin/math_server.rb +206 -0
  16. data/src/ruby/bin/math_services.rb +27 -0
  17. data/src/ruby/bin/noproto_client.rb +108 -0
  18. data/src/ruby/bin/noproto_server.rb +112 -0
  19. data/src/ruby/ext/grpc/extconf.rb +129 -0
  20. data/src/ruby/ext/grpc/rb_byte_buffer.c +70 -0
  21. data/src/ruby/ext/grpc/rb_byte_buffer.h +47 -0
  22. data/src/ruby/ext/grpc/rb_call.c +908 -0
  23. data/src/ruby/ext/grpc/rb_call.h +66 -0
  24. data/src/ruby/ext/grpc/rb_call_credentials.c +319 -0
  25. data/src/ruby/ext/grpc/rb_call_credentials.h +46 -0
  26. data/src/ruby/ext/grpc/rb_channel.c +432 -0
  27. data/src/ruby/ext/grpc/rb_channel.h +47 -0
  28. data/src/ruby/ext/grpc/rb_channel_args.c +169 -0
  29. data/src/ruby/ext/grpc/rb_channel_args.h +53 -0
  30. data/src/ruby/ext/grpc/rb_channel_credentials.c +268 -0
  31. data/src/ruby/ext/grpc/rb_channel_credentials.h +47 -0
  32. data/src/ruby/ext/grpc/rb_completion_queue.c +183 -0
  33. data/src/ruby/ext/grpc/rb_completion_queue.h +55 -0
  34. data/src/ruby/ext/grpc/rb_event_thread.c +158 -0
  35. data/src/ruby/ext/grpc/rb_event_thread.h +37 -0
  36. data/src/ruby/ext/grpc/rb_grpc.c +336 -0
  37. data/src/ruby/ext/grpc/rb_grpc.h +85 -0
  38. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +560 -0
  39. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +843 -0
  40. data/src/ruby/ext/grpc/rb_loader.c +72 -0
  41. data/src/ruby/ext/grpc/rb_loader.h +40 -0
  42. data/src/ruby/ext/grpc/rb_server.c +400 -0
  43. data/src/ruby/ext/grpc/rb_server.h +47 -0
  44. data/src/ruby/ext/grpc/rb_server_credentials.c +284 -0
  45. data/src/ruby/ext/grpc/rb_server_credentials.h +47 -0
  46. data/src/ruby/lib/grpc.rb +44 -0
  47. data/src/ruby/lib/grpc/2.0/grpc_c.bundle +0 -0
  48. data/src/ruby/lib/grpc/2.1/grpc_c.bundle +0 -0
  49. data/src/ruby/lib/grpc/2.2/grpc_c.bundle +0 -0
  50. data/src/ruby/lib/grpc/2.3/grpc_c.bundle +0 -0
  51. data/src/ruby/lib/grpc/core/time_consts.rb +71 -0
  52. data/src/ruby/lib/grpc/errors.rb +62 -0
  53. data/src/ruby/lib/grpc/generic/active_call.rb +488 -0
  54. data/src/ruby/lib/grpc/generic/bidi_call.rb +218 -0
  55. data/src/ruby/lib/grpc/generic/client_stub.rb +471 -0
  56. data/src/ruby/lib/grpc/generic/rpc_desc.rb +147 -0
  57. data/src/ruby/lib/grpc/generic/rpc_server.rb +504 -0
  58. data/src/ruby/lib/grpc/generic/service.rb +234 -0
  59. data/src/ruby/lib/grpc/grpc.rb +34 -0
  60. data/src/ruby/lib/grpc/logconfig.rb +59 -0
  61. data/src/ruby/lib/grpc/notifier.rb +60 -0
  62. data/src/ruby/lib/grpc/version.rb +33 -0
  63. data/src/ruby/pb/README.md +42 -0
  64. data/src/ruby/pb/generate_proto_ruby.sh +51 -0
  65. data/src/ruby/pb/grpc/health/checker.rb +75 -0
  66. data/src/ruby/pb/grpc/health/v1alpha/health.rb +29 -0
  67. data/src/ruby/pb/grpc/health/v1alpha/health_services.rb +28 -0
  68. data/src/ruby/pb/test/client.rb +469 -0
  69. data/src/ruby/pb/test/proto/empty.rb +15 -0
  70. data/src/ruby/pb/test/proto/messages.rb +80 -0
  71. data/src/ruby/pb/test/proto/test.rb +14 -0
  72. data/src/ruby/pb/test/proto/test_services.rb +64 -0
  73. data/src/ruby/pb/test/server.rb +253 -0
  74. data/src/ruby/spec/call_credentials_spec.rb +57 -0
  75. data/src/ruby/spec/call_spec.rb +163 -0
  76. data/src/ruby/spec/channel_credentials_spec.rb +97 -0
  77. data/src/ruby/spec/channel_spec.rb +177 -0
  78. data/src/ruby/spec/client_server_spec.rb +475 -0
  79. data/src/ruby/spec/completion_queue_spec.rb +42 -0
  80. data/src/ruby/spec/generic/active_call_spec.rb +373 -0
  81. data/src/ruby/spec/generic/client_stub_spec.rb +476 -0
  82. data/src/ruby/spec/generic/rpc_desc_spec.rb +331 -0
  83. data/src/ruby/spec/generic/rpc_server_pool_spec.rb +138 -0
  84. data/src/ruby/spec/generic/rpc_server_spec.rb +576 -0
  85. data/src/ruby/spec/generic/service_spec.rb +345 -0
  86. data/src/ruby/spec/pb/health/checker_spec.rb +232 -0
  87. data/src/ruby/spec/server_credentials_spec.rb +94 -0
  88. data/src/ruby/spec/server_spec.rb +209 -0
  89. data/src/ruby/spec/spec_helper.rb +69 -0
  90. data/src/ruby/spec/testdata/README +1 -0
  91. data/src/ruby/spec/testdata/ca.pem +15 -0
  92. data/src/ruby/spec/testdata/server1.key +16 -0
  93. data/src/ruby/spec/testdata/server1.pem +16 -0
  94. data/src/ruby/spec/time_consts_spec.rb +89 -0
  95. metadata +319 -0
@@ -0,0 +1,843 @@
1
+ /*
2
+ *
3
+ * Copyright 2016, Google Inc.
4
+ * All rights reserved.
5
+ *
6
+ * Redistribution and use in source and binary forms, with or without
7
+ * modification, are permitted provided that the following conditions are
8
+ * met:
9
+ *
10
+ * * Redistributions of source code must retain the above copyright
11
+ * notice, this list of conditions and the following disclaimer.
12
+ * * Redistributions in binary form must reproduce the above
13
+ * copyright notice, this list of conditions and the following disclaimer
14
+ * in the documentation and/or other materials provided with the
15
+ * distribution.
16
+ * * Neither the name of Google Inc. nor the names of its
17
+ * contributors may be used to endorse or promote products derived from
18
+ * this software without specific prior written permission.
19
+ *
20
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31
+ *
32
+ */
33
+
34
+ #ifndef GRPC_RB_GRPC_IMPORTS_H_
35
+ #define GRPC_RB_GRPC_IMPORTS_H_
36
+
37
+ #include <grpc/support/port_platform.h>
38
+
39
+ #ifdef GPR_WIN32
40
+
41
+ #include <windows.h>
42
+
43
+ #include <grpc/census.h>
44
+ #include <grpc/compression.h>
45
+ #include <grpc/grpc.h>
46
+ #include <grpc/grpc_security.h>
47
+ #include <grpc/impl/codegen/alloc.h>
48
+ #include <grpc/impl/codegen/byte_buffer.h>
49
+ #include <grpc/impl/codegen/log.h>
50
+ #include <grpc/impl/codegen/slice.h>
51
+ #include <grpc/impl/codegen/slice_buffer.h>
52
+ #include <grpc/impl/codegen/sync.h>
53
+ #include <grpc/impl/codegen/time.h>
54
+ #include <grpc/support/avl.h>
55
+ #include <grpc/support/cmdline.h>
56
+ #include <grpc/support/cpu.h>
57
+ #include <grpc/support/histogram.h>
58
+ #include <grpc/support/host_port.h>
59
+ #include <grpc/support/log_win32.h>
60
+ #include <grpc/support/string_util.h>
61
+ #include <grpc/support/subprocess.h>
62
+ #include <grpc/support/thd.h>
63
+
64
+ typedef int(*census_initialize_type)(int features);
65
+ extern census_initialize_type census_initialize_import;
66
+ #define census_initialize census_initialize_import
67
+ typedef void(*census_shutdown_type)(void);
68
+ extern census_shutdown_type census_shutdown_import;
69
+ #define census_shutdown census_shutdown_import
70
+ typedef int(*census_supported_type)(void);
71
+ extern census_supported_type census_supported_import;
72
+ #define census_supported census_supported_import
73
+ typedef int(*census_enabled_type)(void);
74
+ extern census_enabled_type census_enabled_import;
75
+ #define census_enabled census_enabled_import
76
+ typedef census_context *(*census_context_create_type)(const census_context *base, const census_tag *tags, int ntags, census_context_status const **status);
77
+ extern census_context_create_type census_context_create_import;
78
+ #define census_context_create census_context_create_import
79
+ typedef void(*census_context_destroy_type)(census_context *context);
80
+ extern census_context_destroy_type census_context_destroy_import;
81
+ #define census_context_destroy census_context_destroy_import
82
+ typedef const census_context_status *(*census_context_get_status_type)(const census_context *context);
83
+ extern census_context_get_status_type census_context_get_status_import;
84
+ #define census_context_get_status census_context_get_status_import
85
+ typedef void(*census_context_initialize_iterator_type)(const census_context *context, census_context_iterator *iterator);
86
+ extern census_context_initialize_iterator_type census_context_initialize_iterator_import;
87
+ #define census_context_initialize_iterator census_context_initialize_iterator_import
88
+ typedef int(*census_context_next_tag_type)(census_context_iterator *iterator, census_tag *tag);
89
+ extern census_context_next_tag_type census_context_next_tag_import;
90
+ #define census_context_next_tag census_context_next_tag_import
91
+ typedef int(*census_context_get_tag_type)(const census_context *context, const char *key, census_tag *tag);
92
+ extern census_context_get_tag_type census_context_get_tag_import;
93
+ #define census_context_get_tag census_context_get_tag_import
94
+ typedef char *(*census_context_encode_type)(const census_context *context, char *buffer, size_t buf_size, size_t *print_buf_size, size_t *bin_buf_size);
95
+ extern census_context_encode_type census_context_encode_import;
96
+ #define census_context_encode census_context_encode_import
97
+ typedef census_context *(*census_context_decode_type)(const char *buffer, size_t size, const char *bin_buffer, size_t bin_size);
98
+ extern census_context_decode_type census_context_decode_import;
99
+ #define census_context_decode census_context_decode_import
100
+ typedef int(*census_trace_mask_type)(const census_context *context);
101
+ extern census_trace_mask_type census_trace_mask_import;
102
+ #define census_trace_mask census_trace_mask_import
103
+ typedef void(*census_set_trace_mask_type)(int trace_mask);
104
+ extern census_set_trace_mask_type census_set_trace_mask_import;
105
+ #define census_set_trace_mask census_set_trace_mask_import
106
+ typedef census_timestamp(*census_start_rpc_op_timestamp_type)(void);
107
+ extern census_start_rpc_op_timestamp_type census_start_rpc_op_timestamp_import;
108
+ #define census_start_rpc_op_timestamp census_start_rpc_op_timestamp_import
109
+ typedef census_context *(*census_start_client_rpc_op_type)(const census_context *context, int64_t rpc_name_id, const census_rpc_name_info *rpc_name_info, const char *peer, int trace_mask, const census_timestamp *start_time);
110
+ extern census_start_client_rpc_op_type census_start_client_rpc_op_import;
111
+ #define census_start_client_rpc_op census_start_client_rpc_op_import
112
+ typedef void(*census_set_rpc_client_peer_type)(census_context *context, const char *peer);
113
+ extern census_set_rpc_client_peer_type census_set_rpc_client_peer_import;
114
+ #define census_set_rpc_client_peer census_set_rpc_client_peer_import
115
+ typedef census_context *(*census_start_server_rpc_op_type)(const char *buffer, int64_t rpc_name_id, const census_rpc_name_info *rpc_name_info, const char *peer, int trace_mask, census_timestamp *start_time);
116
+ extern census_start_server_rpc_op_type census_start_server_rpc_op_import;
117
+ #define census_start_server_rpc_op census_start_server_rpc_op_import
118
+ typedef census_context *(*census_start_op_type)(census_context *context, const char *family, const char *name, int trace_mask);
119
+ extern census_start_op_type census_start_op_import;
120
+ #define census_start_op census_start_op_import
121
+ typedef void(*census_end_op_type)(census_context *context, int status);
122
+ extern census_end_op_type census_end_op_import;
123
+ #define census_end_op census_end_op_import
124
+ typedef void(*census_trace_print_type)(census_context *context, uint32_t type, const char *buffer, size_t n);
125
+ extern census_trace_print_type census_trace_print_import;
126
+ #define census_trace_print census_trace_print_import
127
+ typedef int(*census_trace_scan_start_type)(int consume);
128
+ extern census_trace_scan_start_type census_trace_scan_start_import;
129
+ #define census_trace_scan_start census_trace_scan_start_import
130
+ typedef int(*census_get_trace_record_type)(census_trace_record *trace_record);
131
+ extern census_get_trace_record_type census_get_trace_record_import;
132
+ #define census_get_trace_record census_get_trace_record_import
133
+ typedef void(*census_trace_scan_end_type)();
134
+ extern census_trace_scan_end_type census_trace_scan_end_import;
135
+ #define census_trace_scan_end census_trace_scan_end_import
136
+ typedef void(*census_record_values_type)(census_context *context, census_value *values, size_t nvalues);
137
+ extern census_record_values_type census_record_values_import;
138
+ #define census_record_values census_record_values_import
139
+ typedef census_view *(*census_view_create_type)(uint32_t metric_id, const census_context *tags, const census_aggregation *aggregations, size_t naggregations);
140
+ extern census_view_create_type census_view_create_import;
141
+ #define census_view_create census_view_create_import
142
+ typedef void(*census_view_delete_type)(census_view *view);
143
+ extern census_view_delete_type census_view_delete_import;
144
+ #define census_view_delete census_view_delete_import
145
+ typedef size_t(*census_view_metric_type)(const census_view *view);
146
+ extern census_view_metric_type census_view_metric_import;
147
+ #define census_view_metric census_view_metric_import
148
+ typedef size_t(*census_view_naggregations_type)(const census_view *view);
149
+ extern census_view_naggregations_type census_view_naggregations_import;
150
+ #define census_view_naggregations census_view_naggregations_import
151
+ typedef const census_context *(*census_view_tags_type)(const census_view *view);
152
+ extern census_view_tags_type census_view_tags_import;
153
+ #define census_view_tags census_view_tags_import
154
+ typedef const census_aggregation *(*census_view_aggregrations_type)(const census_view *view);
155
+ extern census_view_aggregrations_type census_view_aggregrations_import;
156
+ #define census_view_aggregrations census_view_aggregrations_import
157
+ typedef const census_view_data *(*census_view_get_data_type)(const census_view *view);
158
+ extern census_view_get_data_type census_view_get_data_import;
159
+ #define census_view_get_data census_view_get_data_import
160
+ typedef void(*census_view_reset_type)(census_view *view);
161
+ extern census_view_reset_type census_view_reset_import;
162
+ #define census_view_reset census_view_reset_import
163
+ typedef int(*grpc_compression_algorithm_parse_type)(const char *name, size_t name_length, grpc_compression_algorithm *algorithm);
164
+ extern grpc_compression_algorithm_parse_type grpc_compression_algorithm_parse_import;
165
+ #define grpc_compression_algorithm_parse grpc_compression_algorithm_parse_import
166
+ typedef int(*grpc_compression_algorithm_name_type)(grpc_compression_algorithm algorithm, char **name);
167
+ extern grpc_compression_algorithm_name_type grpc_compression_algorithm_name_import;
168
+ #define grpc_compression_algorithm_name grpc_compression_algorithm_name_import
169
+ typedef grpc_compression_algorithm(*grpc_compression_algorithm_for_level_type)(grpc_compression_level level);
170
+ extern grpc_compression_algorithm_for_level_type grpc_compression_algorithm_for_level_import;
171
+ #define grpc_compression_algorithm_for_level grpc_compression_algorithm_for_level_import
172
+ typedef void(*grpc_compression_options_init_type)(grpc_compression_options *opts);
173
+ extern grpc_compression_options_init_type grpc_compression_options_init_import;
174
+ #define grpc_compression_options_init grpc_compression_options_init_import
175
+ typedef void(*grpc_compression_options_enable_algorithm_type)(grpc_compression_options *opts, grpc_compression_algorithm algorithm);
176
+ extern grpc_compression_options_enable_algorithm_type grpc_compression_options_enable_algorithm_import;
177
+ #define grpc_compression_options_enable_algorithm grpc_compression_options_enable_algorithm_import
178
+ typedef void(*grpc_compression_options_disable_algorithm_type)(grpc_compression_options *opts, grpc_compression_algorithm algorithm);
179
+ extern grpc_compression_options_disable_algorithm_type grpc_compression_options_disable_algorithm_import;
180
+ #define grpc_compression_options_disable_algorithm grpc_compression_options_disable_algorithm_import
181
+ typedef int(*grpc_compression_options_is_algorithm_enabled_type)(const grpc_compression_options *opts, grpc_compression_algorithm algorithm);
182
+ extern grpc_compression_options_is_algorithm_enabled_type grpc_compression_options_is_algorithm_enabled_import;
183
+ #define grpc_compression_options_is_algorithm_enabled grpc_compression_options_is_algorithm_enabled_import
184
+ typedef void(*grpc_metadata_array_init_type)(grpc_metadata_array *array);
185
+ extern grpc_metadata_array_init_type grpc_metadata_array_init_import;
186
+ #define grpc_metadata_array_init grpc_metadata_array_init_import
187
+ typedef void(*grpc_metadata_array_destroy_type)(grpc_metadata_array *array);
188
+ extern grpc_metadata_array_destroy_type grpc_metadata_array_destroy_import;
189
+ #define grpc_metadata_array_destroy grpc_metadata_array_destroy_import
190
+ typedef void(*grpc_call_details_init_type)(grpc_call_details *details);
191
+ extern grpc_call_details_init_type grpc_call_details_init_import;
192
+ #define grpc_call_details_init grpc_call_details_init_import
193
+ typedef void(*grpc_call_details_destroy_type)(grpc_call_details *details);
194
+ extern grpc_call_details_destroy_type grpc_call_details_destroy_import;
195
+ #define grpc_call_details_destroy grpc_call_details_destroy_import
196
+ typedef void(*grpc_register_plugin_type)(void (*init)(void), void (*destroy)(void));
197
+ extern grpc_register_plugin_type grpc_register_plugin_import;
198
+ #define grpc_register_plugin grpc_register_plugin_import
199
+ typedef void(*grpc_init_type)(void);
200
+ extern grpc_init_type grpc_init_import;
201
+ #define grpc_init grpc_init_import
202
+ typedef void(*grpc_shutdown_type)(void);
203
+ extern grpc_shutdown_type grpc_shutdown_import;
204
+ #define grpc_shutdown grpc_shutdown_import
205
+ typedef const char *(*grpc_version_string_type)(void);
206
+ extern grpc_version_string_type grpc_version_string_import;
207
+ #define grpc_version_string grpc_version_string_import
208
+ typedef grpc_completion_queue *(*grpc_completion_queue_create_type)(void *reserved);
209
+ extern grpc_completion_queue_create_type grpc_completion_queue_create_import;
210
+ #define grpc_completion_queue_create grpc_completion_queue_create_import
211
+ typedef grpc_event(*grpc_completion_queue_next_type)(grpc_completion_queue *cq, gpr_timespec deadline, void *reserved);
212
+ extern grpc_completion_queue_next_type grpc_completion_queue_next_import;
213
+ #define grpc_completion_queue_next grpc_completion_queue_next_import
214
+ typedef grpc_event(*grpc_completion_queue_pluck_type)(grpc_completion_queue *cq, void *tag, gpr_timespec deadline, void *reserved);
215
+ extern grpc_completion_queue_pluck_type grpc_completion_queue_pluck_import;
216
+ #define grpc_completion_queue_pluck grpc_completion_queue_pluck_import
217
+ typedef void(*grpc_completion_queue_shutdown_type)(grpc_completion_queue *cq);
218
+ extern grpc_completion_queue_shutdown_type grpc_completion_queue_shutdown_import;
219
+ #define grpc_completion_queue_shutdown grpc_completion_queue_shutdown_import
220
+ typedef void(*grpc_completion_queue_destroy_type)(grpc_completion_queue *cq);
221
+ extern grpc_completion_queue_destroy_type grpc_completion_queue_destroy_import;
222
+ #define grpc_completion_queue_destroy grpc_completion_queue_destroy_import
223
+ typedef grpc_alarm *(*grpc_alarm_create_type)(grpc_completion_queue *cq, gpr_timespec deadline, void *tag);
224
+ extern grpc_alarm_create_type grpc_alarm_create_import;
225
+ #define grpc_alarm_create grpc_alarm_create_import
226
+ typedef void(*grpc_alarm_cancel_type)(grpc_alarm *alarm);
227
+ extern grpc_alarm_cancel_type grpc_alarm_cancel_import;
228
+ #define grpc_alarm_cancel grpc_alarm_cancel_import
229
+ typedef void(*grpc_alarm_destroy_type)(grpc_alarm *alarm);
230
+ extern grpc_alarm_destroy_type grpc_alarm_destroy_import;
231
+ #define grpc_alarm_destroy grpc_alarm_destroy_import
232
+ typedef grpc_connectivity_state(*grpc_channel_check_connectivity_state_type)(grpc_channel *channel, int try_to_connect);
233
+ extern grpc_channel_check_connectivity_state_type grpc_channel_check_connectivity_state_import;
234
+ #define grpc_channel_check_connectivity_state grpc_channel_check_connectivity_state_import
235
+ typedef void(*grpc_channel_watch_connectivity_state_type)(grpc_channel *channel, grpc_connectivity_state last_observed_state, gpr_timespec deadline, grpc_completion_queue *cq, void *tag);
236
+ extern grpc_channel_watch_connectivity_state_type grpc_channel_watch_connectivity_state_import;
237
+ #define grpc_channel_watch_connectivity_state grpc_channel_watch_connectivity_state_import
238
+ typedef grpc_call *(*grpc_channel_create_call_type)(grpc_channel *channel, grpc_call *parent_call, uint32_t propagation_mask, grpc_completion_queue *completion_queue, const char *method, const char *host, gpr_timespec deadline, void *reserved);
239
+ extern grpc_channel_create_call_type grpc_channel_create_call_import;
240
+ #define grpc_channel_create_call grpc_channel_create_call_import
241
+ typedef void(*grpc_channel_ping_type)(grpc_channel *channel, grpc_completion_queue *cq, void *tag, void *reserved);
242
+ extern grpc_channel_ping_type grpc_channel_ping_import;
243
+ #define grpc_channel_ping grpc_channel_ping_import
244
+ typedef void *(*grpc_channel_register_call_type)(grpc_channel *channel, const char *method, const char *host, void *reserved);
245
+ extern grpc_channel_register_call_type grpc_channel_register_call_import;
246
+ #define grpc_channel_register_call grpc_channel_register_call_import
247
+ typedef grpc_call *(*grpc_channel_create_registered_call_type)(grpc_channel *channel, grpc_call *parent_call, uint32_t propagation_mask, grpc_completion_queue *completion_queue, void *registered_call_handle, gpr_timespec deadline, void *reserved);
248
+ extern grpc_channel_create_registered_call_type grpc_channel_create_registered_call_import;
249
+ #define grpc_channel_create_registered_call grpc_channel_create_registered_call_import
250
+ typedef grpc_call_error(*grpc_call_start_batch_type)(grpc_call *call, const grpc_op *ops, size_t nops, void *tag, void *reserved);
251
+ extern grpc_call_start_batch_type grpc_call_start_batch_import;
252
+ #define grpc_call_start_batch grpc_call_start_batch_import
253
+ typedef char *(*grpc_call_get_peer_type)(grpc_call *call);
254
+ extern grpc_call_get_peer_type grpc_call_get_peer_import;
255
+ #define grpc_call_get_peer grpc_call_get_peer_import
256
+ typedef void(*grpc_census_call_set_context_type)(grpc_call *call, struct census_context *context);
257
+ extern grpc_census_call_set_context_type grpc_census_call_set_context_import;
258
+ #define grpc_census_call_set_context grpc_census_call_set_context_import
259
+ typedef struct census_context *(*grpc_census_call_get_context_type)(grpc_call *call);
260
+ extern grpc_census_call_get_context_type grpc_census_call_get_context_import;
261
+ #define grpc_census_call_get_context grpc_census_call_get_context_import
262
+ typedef char *(*grpc_channel_get_target_type)(grpc_channel *channel);
263
+ extern grpc_channel_get_target_type grpc_channel_get_target_import;
264
+ #define grpc_channel_get_target grpc_channel_get_target_import
265
+ typedef grpc_channel *(*grpc_insecure_channel_create_type)(const char *target, const grpc_channel_args *args, void *reserved);
266
+ extern grpc_insecure_channel_create_type grpc_insecure_channel_create_import;
267
+ #define grpc_insecure_channel_create grpc_insecure_channel_create_import
268
+ typedef grpc_channel *(*grpc_lame_client_channel_create_type)(const char *target, grpc_status_code error_code, const char *error_message);
269
+ extern grpc_lame_client_channel_create_type grpc_lame_client_channel_create_import;
270
+ #define grpc_lame_client_channel_create grpc_lame_client_channel_create_import
271
+ typedef void(*grpc_channel_destroy_type)(grpc_channel *channel);
272
+ extern grpc_channel_destroy_type grpc_channel_destroy_import;
273
+ #define grpc_channel_destroy grpc_channel_destroy_import
274
+ typedef grpc_call_error(*grpc_call_cancel_type)(grpc_call *call, void *reserved);
275
+ extern grpc_call_cancel_type grpc_call_cancel_import;
276
+ #define grpc_call_cancel grpc_call_cancel_import
277
+ typedef grpc_call_error(*grpc_call_cancel_with_status_type)(grpc_call *call, grpc_status_code status, const char *description, void *reserved);
278
+ extern grpc_call_cancel_with_status_type grpc_call_cancel_with_status_import;
279
+ #define grpc_call_cancel_with_status grpc_call_cancel_with_status_import
280
+ typedef void(*grpc_call_destroy_type)(grpc_call *call);
281
+ extern grpc_call_destroy_type grpc_call_destroy_import;
282
+ #define grpc_call_destroy grpc_call_destroy_import
283
+ typedef grpc_call_error(*grpc_server_request_call_type)(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);
284
+ extern grpc_server_request_call_type grpc_server_request_call_import;
285
+ #define grpc_server_request_call grpc_server_request_call_import
286
+ typedef void *(*grpc_server_register_method_type)(grpc_server *server, const char *method, const char *host);
287
+ extern grpc_server_register_method_type grpc_server_register_method_import;
288
+ #define grpc_server_register_method grpc_server_register_method_import
289
+ typedef grpc_call_error(*grpc_server_request_registered_call_type)(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);
290
+ extern grpc_server_request_registered_call_type grpc_server_request_registered_call_import;
291
+ #define grpc_server_request_registered_call grpc_server_request_registered_call_import
292
+ typedef grpc_server *(*grpc_server_create_type)(const grpc_channel_args *args, void *reserved);
293
+ extern grpc_server_create_type grpc_server_create_import;
294
+ #define grpc_server_create grpc_server_create_import
295
+ typedef void(*grpc_server_register_completion_queue_type)(grpc_server *server, grpc_completion_queue *cq, void *reserved);
296
+ extern grpc_server_register_completion_queue_type grpc_server_register_completion_queue_import;
297
+ #define grpc_server_register_completion_queue grpc_server_register_completion_queue_import
298
+ typedef int(*grpc_server_add_insecure_http2_port_type)(grpc_server *server, const char *addr);
299
+ extern grpc_server_add_insecure_http2_port_type grpc_server_add_insecure_http2_port_import;
300
+ #define grpc_server_add_insecure_http2_port grpc_server_add_insecure_http2_port_import
301
+ typedef void(*grpc_server_start_type)(grpc_server *server);
302
+ extern grpc_server_start_type grpc_server_start_import;
303
+ #define grpc_server_start grpc_server_start_import
304
+ typedef void(*grpc_server_shutdown_and_notify_type)(grpc_server *server, grpc_completion_queue *cq, void *tag);
305
+ extern grpc_server_shutdown_and_notify_type grpc_server_shutdown_and_notify_import;
306
+ #define grpc_server_shutdown_and_notify grpc_server_shutdown_and_notify_import
307
+ typedef void(*grpc_server_cancel_all_calls_type)(grpc_server *server);
308
+ extern grpc_server_cancel_all_calls_type grpc_server_cancel_all_calls_import;
309
+ #define grpc_server_cancel_all_calls grpc_server_cancel_all_calls_import
310
+ typedef void(*grpc_server_destroy_type)(grpc_server *server);
311
+ extern grpc_server_destroy_type grpc_server_destroy_import;
312
+ #define grpc_server_destroy grpc_server_destroy_import
313
+ typedef int(*grpc_tracer_set_enabled_type)(const char *name, int enabled);
314
+ extern grpc_tracer_set_enabled_type grpc_tracer_set_enabled_import;
315
+ #define grpc_tracer_set_enabled grpc_tracer_set_enabled_import
316
+ typedef int(*grpc_header_key_is_legal_type)(const char *key, size_t length);
317
+ extern grpc_header_key_is_legal_type grpc_header_key_is_legal_import;
318
+ #define grpc_header_key_is_legal grpc_header_key_is_legal_import
319
+ typedef int(*grpc_header_nonbin_value_is_legal_type)(const char *value, size_t length);
320
+ extern grpc_header_nonbin_value_is_legal_type grpc_header_nonbin_value_is_legal_import;
321
+ #define grpc_header_nonbin_value_is_legal grpc_header_nonbin_value_is_legal_import
322
+ typedef int(*grpc_is_binary_header_type)(const char *key, size_t length);
323
+ extern grpc_is_binary_header_type grpc_is_binary_header_import;
324
+ #define grpc_is_binary_header grpc_is_binary_header_import
325
+ typedef const grpc_auth_property *(*grpc_auth_property_iterator_next_type)(grpc_auth_property_iterator *it);
326
+ extern grpc_auth_property_iterator_next_type grpc_auth_property_iterator_next_import;
327
+ #define grpc_auth_property_iterator_next grpc_auth_property_iterator_next_import
328
+ typedef grpc_auth_property_iterator(*grpc_auth_context_property_iterator_type)(const grpc_auth_context *ctx);
329
+ extern grpc_auth_context_property_iterator_type grpc_auth_context_property_iterator_import;
330
+ #define grpc_auth_context_property_iterator grpc_auth_context_property_iterator_import
331
+ typedef grpc_auth_property_iterator(*grpc_auth_context_peer_identity_type)(const grpc_auth_context *ctx);
332
+ extern grpc_auth_context_peer_identity_type grpc_auth_context_peer_identity_import;
333
+ #define grpc_auth_context_peer_identity grpc_auth_context_peer_identity_import
334
+ typedef grpc_auth_property_iterator(*grpc_auth_context_find_properties_by_name_type)(const grpc_auth_context *ctx, const char *name);
335
+ extern grpc_auth_context_find_properties_by_name_type grpc_auth_context_find_properties_by_name_import;
336
+ #define grpc_auth_context_find_properties_by_name grpc_auth_context_find_properties_by_name_import
337
+ typedef const char *(*grpc_auth_context_peer_identity_property_name_type)(const grpc_auth_context *ctx);
338
+ extern grpc_auth_context_peer_identity_property_name_type grpc_auth_context_peer_identity_property_name_import;
339
+ #define grpc_auth_context_peer_identity_property_name grpc_auth_context_peer_identity_property_name_import
340
+ typedef int(*grpc_auth_context_peer_is_authenticated_type)(const grpc_auth_context *ctx);
341
+ extern grpc_auth_context_peer_is_authenticated_type grpc_auth_context_peer_is_authenticated_import;
342
+ #define grpc_auth_context_peer_is_authenticated grpc_auth_context_peer_is_authenticated_import
343
+ typedef grpc_auth_context *(*grpc_call_auth_context_type)(grpc_call *call);
344
+ extern grpc_call_auth_context_type grpc_call_auth_context_import;
345
+ #define grpc_call_auth_context grpc_call_auth_context_import
346
+ typedef void(*grpc_auth_context_release_type)(grpc_auth_context *context);
347
+ extern grpc_auth_context_release_type grpc_auth_context_release_import;
348
+ #define grpc_auth_context_release grpc_auth_context_release_import
349
+ typedef void(*grpc_auth_context_add_property_type)(grpc_auth_context *ctx, const char *name, const char *value, size_t value_length);
350
+ extern grpc_auth_context_add_property_type grpc_auth_context_add_property_import;
351
+ #define grpc_auth_context_add_property grpc_auth_context_add_property_import
352
+ typedef void(*grpc_auth_context_add_cstring_property_type)(grpc_auth_context *ctx, const char *name, const char *value);
353
+ extern grpc_auth_context_add_cstring_property_type grpc_auth_context_add_cstring_property_import;
354
+ #define grpc_auth_context_add_cstring_property grpc_auth_context_add_cstring_property_import
355
+ typedef int(*grpc_auth_context_set_peer_identity_property_name_type)(grpc_auth_context *ctx, const char *name);
356
+ extern grpc_auth_context_set_peer_identity_property_name_type grpc_auth_context_set_peer_identity_property_name_import;
357
+ #define grpc_auth_context_set_peer_identity_property_name grpc_auth_context_set_peer_identity_property_name_import
358
+ typedef void(*grpc_channel_credentials_release_type)(grpc_channel_credentials *creds);
359
+ extern grpc_channel_credentials_release_type grpc_channel_credentials_release_import;
360
+ #define grpc_channel_credentials_release grpc_channel_credentials_release_import
361
+ typedef grpc_channel_credentials *(*grpc_google_default_credentials_create_type)(void);
362
+ extern grpc_google_default_credentials_create_type grpc_google_default_credentials_create_import;
363
+ #define grpc_google_default_credentials_create grpc_google_default_credentials_create_import
364
+ typedef grpc_channel_credentials *(*grpc_ssl_credentials_create_type)(const char *pem_root_certs, grpc_ssl_pem_key_cert_pair *pem_key_cert_pair, void *reserved);
365
+ extern grpc_ssl_credentials_create_type grpc_ssl_credentials_create_import;
366
+ #define grpc_ssl_credentials_create grpc_ssl_credentials_create_import
367
+ typedef void(*grpc_call_credentials_release_type)(grpc_call_credentials *creds);
368
+ extern grpc_call_credentials_release_type grpc_call_credentials_release_import;
369
+ #define grpc_call_credentials_release grpc_call_credentials_release_import
370
+ typedef grpc_channel_credentials *(*grpc_composite_channel_credentials_create_type)(grpc_channel_credentials *channel_creds, grpc_call_credentials *call_creds, void *reserved);
371
+ extern grpc_composite_channel_credentials_create_type grpc_composite_channel_credentials_create_import;
372
+ #define grpc_composite_channel_credentials_create grpc_composite_channel_credentials_create_import
373
+ typedef grpc_call_credentials *(*grpc_composite_call_credentials_create_type)(grpc_call_credentials *creds1, grpc_call_credentials *creds2, void *reserved);
374
+ extern grpc_composite_call_credentials_create_type grpc_composite_call_credentials_create_import;
375
+ #define grpc_composite_call_credentials_create grpc_composite_call_credentials_create_import
376
+ typedef grpc_call_credentials *(*grpc_google_compute_engine_credentials_create_type)(void *reserved);
377
+ extern grpc_google_compute_engine_credentials_create_type grpc_google_compute_engine_credentials_create_import;
378
+ #define grpc_google_compute_engine_credentials_create grpc_google_compute_engine_credentials_create_import
379
+ typedef gpr_timespec(*grpc_max_auth_token_lifetime_type)();
380
+ extern grpc_max_auth_token_lifetime_type grpc_max_auth_token_lifetime_import;
381
+ #define grpc_max_auth_token_lifetime grpc_max_auth_token_lifetime_import
382
+ typedef grpc_call_credentials *(*grpc_service_account_jwt_access_credentials_create_type)(const char *json_key, gpr_timespec token_lifetime, void *reserved);
383
+ extern grpc_service_account_jwt_access_credentials_create_type grpc_service_account_jwt_access_credentials_create_import;
384
+ #define grpc_service_account_jwt_access_credentials_create grpc_service_account_jwt_access_credentials_create_import
385
+ typedef grpc_call_credentials *(*grpc_google_refresh_token_credentials_create_type)(const char *json_refresh_token, void *reserved);
386
+ extern grpc_google_refresh_token_credentials_create_type grpc_google_refresh_token_credentials_create_import;
387
+ #define grpc_google_refresh_token_credentials_create grpc_google_refresh_token_credentials_create_import
388
+ typedef grpc_call_credentials *(*grpc_access_token_credentials_create_type)(const char *access_token, void *reserved);
389
+ extern grpc_access_token_credentials_create_type grpc_access_token_credentials_create_import;
390
+ #define grpc_access_token_credentials_create grpc_access_token_credentials_create_import
391
+ typedef grpc_call_credentials *(*grpc_google_iam_credentials_create_type)(const char *authorization_token, const char *authority_selector, void *reserved);
392
+ extern grpc_google_iam_credentials_create_type grpc_google_iam_credentials_create_import;
393
+ #define grpc_google_iam_credentials_create grpc_google_iam_credentials_create_import
394
+ typedef grpc_call_credentials *(*grpc_metadata_credentials_create_from_plugin_type)(grpc_metadata_credentials_plugin plugin, void *reserved);
395
+ extern grpc_metadata_credentials_create_from_plugin_type grpc_metadata_credentials_create_from_plugin_import;
396
+ #define grpc_metadata_credentials_create_from_plugin grpc_metadata_credentials_create_from_plugin_import
397
+ typedef grpc_channel *(*grpc_secure_channel_create_type)(grpc_channel_credentials *creds, const char *target, const grpc_channel_args *args, void *reserved);
398
+ extern grpc_secure_channel_create_type grpc_secure_channel_create_import;
399
+ #define grpc_secure_channel_create grpc_secure_channel_create_import
400
+ typedef void(*grpc_server_credentials_release_type)(grpc_server_credentials *creds);
401
+ extern grpc_server_credentials_release_type grpc_server_credentials_release_import;
402
+ #define grpc_server_credentials_release grpc_server_credentials_release_import
403
+ typedef grpc_server_credentials *(*grpc_ssl_server_credentials_create_type)(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, void *reserved);
404
+ extern grpc_ssl_server_credentials_create_type grpc_ssl_server_credentials_create_import;
405
+ #define grpc_ssl_server_credentials_create grpc_ssl_server_credentials_create_import
406
+ typedef int(*grpc_server_add_secure_http2_port_type)(grpc_server *server, const char *addr, grpc_server_credentials *creds);
407
+ extern grpc_server_add_secure_http2_port_type grpc_server_add_secure_http2_port_import;
408
+ #define grpc_server_add_secure_http2_port grpc_server_add_secure_http2_port_import
409
+ typedef grpc_call_error(*grpc_call_set_credentials_type)(grpc_call *call, grpc_call_credentials *creds);
410
+ extern grpc_call_set_credentials_type grpc_call_set_credentials_import;
411
+ #define grpc_call_set_credentials grpc_call_set_credentials_import
412
+ typedef void(*grpc_server_credentials_set_auth_metadata_processor_type)(grpc_server_credentials *creds, grpc_auth_metadata_processor processor);
413
+ extern grpc_server_credentials_set_auth_metadata_processor_type grpc_server_credentials_set_auth_metadata_processor_import;
414
+ #define grpc_server_credentials_set_auth_metadata_processor grpc_server_credentials_set_auth_metadata_processor_import
415
+ typedef void *(*gpr_malloc_type)(size_t size);
416
+ extern gpr_malloc_type gpr_malloc_import;
417
+ #define gpr_malloc gpr_malloc_import
418
+ typedef void(*gpr_free_type)(void *ptr);
419
+ extern gpr_free_type gpr_free_import;
420
+ #define gpr_free gpr_free_import
421
+ typedef void *(*gpr_realloc_type)(void *p, size_t size);
422
+ extern gpr_realloc_type gpr_realloc_import;
423
+ #define gpr_realloc gpr_realloc_import
424
+ typedef void *(*gpr_malloc_aligned_type)(size_t size, size_t alignment_log);
425
+ extern gpr_malloc_aligned_type gpr_malloc_aligned_import;
426
+ #define gpr_malloc_aligned gpr_malloc_aligned_import
427
+ typedef void(*gpr_free_aligned_type)(void *ptr);
428
+ extern gpr_free_aligned_type gpr_free_aligned_import;
429
+ #define gpr_free_aligned gpr_free_aligned_import
430
+ typedef void(*gpr_set_allocation_functions_type)(gpr_allocation_functions functions);
431
+ extern gpr_set_allocation_functions_type gpr_set_allocation_functions_import;
432
+ #define gpr_set_allocation_functions gpr_set_allocation_functions_import
433
+ typedef gpr_allocation_functions(*gpr_get_allocation_functions_type)();
434
+ extern gpr_get_allocation_functions_type gpr_get_allocation_functions_import;
435
+ #define gpr_get_allocation_functions gpr_get_allocation_functions_import
436
+ typedef grpc_byte_buffer *(*grpc_raw_byte_buffer_create_type)(gpr_slice *slices, size_t nslices);
437
+ extern grpc_raw_byte_buffer_create_type grpc_raw_byte_buffer_create_import;
438
+ #define grpc_raw_byte_buffer_create grpc_raw_byte_buffer_create_import
439
+ typedef grpc_byte_buffer *(*grpc_raw_compressed_byte_buffer_create_type)(gpr_slice *slices, size_t nslices, grpc_compression_algorithm compression);
440
+ extern grpc_raw_compressed_byte_buffer_create_type grpc_raw_compressed_byte_buffer_create_import;
441
+ #define grpc_raw_compressed_byte_buffer_create grpc_raw_compressed_byte_buffer_create_import
442
+ typedef grpc_byte_buffer *(*grpc_byte_buffer_copy_type)(grpc_byte_buffer *bb);
443
+ extern grpc_byte_buffer_copy_type grpc_byte_buffer_copy_import;
444
+ #define grpc_byte_buffer_copy grpc_byte_buffer_copy_import
445
+ typedef size_t(*grpc_byte_buffer_length_type)(grpc_byte_buffer *bb);
446
+ extern grpc_byte_buffer_length_type grpc_byte_buffer_length_import;
447
+ #define grpc_byte_buffer_length grpc_byte_buffer_length_import
448
+ typedef void(*grpc_byte_buffer_destroy_type)(grpc_byte_buffer *byte_buffer);
449
+ extern grpc_byte_buffer_destroy_type grpc_byte_buffer_destroy_import;
450
+ #define grpc_byte_buffer_destroy grpc_byte_buffer_destroy_import
451
+ typedef void(*grpc_byte_buffer_reader_init_type)(grpc_byte_buffer_reader *reader, grpc_byte_buffer *buffer);
452
+ extern grpc_byte_buffer_reader_init_type grpc_byte_buffer_reader_init_import;
453
+ #define grpc_byte_buffer_reader_init grpc_byte_buffer_reader_init_import
454
+ typedef void(*grpc_byte_buffer_reader_destroy_type)(grpc_byte_buffer_reader *reader);
455
+ extern grpc_byte_buffer_reader_destroy_type grpc_byte_buffer_reader_destroy_import;
456
+ #define grpc_byte_buffer_reader_destroy grpc_byte_buffer_reader_destroy_import
457
+ typedef int(*grpc_byte_buffer_reader_next_type)(grpc_byte_buffer_reader *reader, gpr_slice *slice);
458
+ extern grpc_byte_buffer_reader_next_type grpc_byte_buffer_reader_next_import;
459
+ #define grpc_byte_buffer_reader_next grpc_byte_buffer_reader_next_import
460
+ typedef gpr_slice(*grpc_byte_buffer_reader_readall_type)(grpc_byte_buffer_reader *reader);
461
+ extern grpc_byte_buffer_reader_readall_type grpc_byte_buffer_reader_readall_import;
462
+ #define grpc_byte_buffer_reader_readall grpc_byte_buffer_reader_readall_import
463
+ typedef grpc_byte_buffer *(*grpc_raw_byte_buffer_from_reader_type)(grpc_byte_buffer_reader *reader);
464
+ extern grpc_raw_byte_buffer_from_reader_type grpc_raw_byte_buffer_from_reader_import;
465
+ #define grpc_raw_byte_buffer_from_reader grpc_raw_byte_buffer_from_reader_import
466
+ typedef void(*gpr_log_type)(const char *file, int line, gpr_log_severity severity, const char *format, ...);
467
+ extern gpr_log_type gpr_log_import;
468
+ #define gpr_log gpr_log_import
469
+ typedef void(*gpr_log_message_type)(const char *file, int line, gpr_log_severity severity, const char *message);
470
+ extern gpr_log_message_type gpr_log_message_import;
471
+ #define gpr_log_message gpr_log_message_import
472
+ typedef void(*gpr_set_log_function_type)(gpr_log_func func);
473
+ extern gpr_set_log_function_type gpr_set_log_function_import;
474
+ #define gpr_set_log_function gpr_set_log_function_import
475
+ typedef gpr_slice(*gpr_slice_ref_type)(gpr_slice s);
476
+ extern gpr_slice_ref_type gpr_slice_ref_import;
477
+ #define gpr_slice_ref gpr_slice_ref_import
478
+ typedef void(*gpr_slice_unref_type)(gpr_slice s);
479
+ extern gpr_slice_unref_type gpr_slice_unref_import;
480
+ #define gpr_slice_unref gpr_slice_unref_import
481
+ typedef gpr_slice(*gpr_slice_new_type)(void *p, size_t len, void (*destroy)(void *));
482
+ extern gpr_slice_new_type gpr_slice_new_import;
483
+ #define gpr_slice_new gpr_slice_new_import
484
+ typedef gpr_slice(*gpr_slice_new_with_len_type)(void *p, size_t len, void (*destroy)(void *, size_t));
485
+ extern gpr_slice_new_with_len_type gpr_slice_new_with_len_import;
486
+ #define gpr_slice_new_with_len gpr_slice_new_with_len_import
487
+ typedef gpr_slice(*gpr_slice_malloc_type)(size_t length);
488
+ extern gpr_slice_malloc_type gpr_slice_malloc_import;
489
+ #define gpr_slice_malloc gpr_slice_malloc_import
490
+ typedef gpr_slice(*gpr_slice_from_copied_string_type)(const char *source);
491
+ extern gpr_slice_from_copied_string_type gpr_slice_from_copied_string_import;
492
+ #define gpr_slice_from_copied_string gpr_slice_from_copied_string_import
493
+ typedef gpr_slice(*gpr_slice_from_copied_buffer_type)(const char *source, size_t len);
494
+ extern gpr_slice_from_copied_buffer_type gpr_slice_from_copied_buffer_import;
495
+ #define gpr_slice_from_copied_buffer gpr_slice_from_copied_buffer_import
496
+ typedef gpr_slice(*gpr_slice_from_static_string_type)(const char *source);
497
+ extern gpr_slice_from_static_string_type gpr_slice_from_static_string_import;
498
+ #define gpr_slice_from_static_string gpr_slice_from_static_string_import
499
+ typedef gpr_slice(*gpr_slice_sub_type)(gpr_slice s, size_t begin, size_t end);
500
+ extern gpr_slice_sub_type gpr_slice_sub_import;
501
+ #define gpr_slice_sub gpr_slice_sub_import
502
+ typedef gpr_slice(*gpr_slice_sub_no_ref_type)(gpr_slice s, size_t begin, size_t end);
503
+ extern gpr_slice_sub_no_ref_type gpr_slice_sub_no_ref_import;
504
+ #define gpr_slice_sub_no_ref gpr_slice_sub_no_ref_import
505
+ typedef gpr_slice(*gpr_slice_split_tail_type)(gpr_slice *s, size_t split);
506
+ extern gpr_slice_split_tail_type gpr_slice_split_tail_import;
507
+ #define gpr_slice_split_tail gpr_slice_split_tail_import
508
+ typedef gpr_slice(*gpr_slice_split_head_type)(gpr_slice *s, size_t split);
509
+ extern gpr_slice_split_head_type gpr_slice_split_head_import;
510
+ #define gpr_slice_split_head gpr_slice_split_head_import
511
+ typedef gpr_slice(*gpr_empty_slice_type)(void);
512
+ extern gpr_empty_slice_type gpr_empty_slice_import;
513
+ #define gpr_empty_slice gpr_empty_slice_import
514
+ typedef int(*gpr_slice_cmp_type)(gpr_slice a, gpr_slice b);
515
+ extern gpr_slice_cmp_type gpr_slice_cmp_import;
516
+ #define gpr_slice_cmp gpr_slice_cmp_import
517
+ typedef int(*gpr_slice_str_cmp_type)(gpr_slice a, const char *b);
518
+ extern gpr_slice_str_cmp_type gpr_slice_str_cmp_import;
519
+ #define gpr_slice_str_cmp gpr_slice_str_cmp_import
520
+ typedef void(*gpr_slice_buffer_init_type)(gpr_slice_buffer *sb);
521
+ extern gpr_slice_buffer_init_type gpr_slice_buffer_init_import;
522
+ #define gpr_slice_buffer_init gpr_slice_buffer_init_import
523
+ typedef void(*gpr_slice_buffer_destroy_type)(gpr_slice_buffer *sb);
524
+ extern gpr_slice_buffer_destroy_type gpr_slice_buffer_destroy_import;
525
+ #define gpr_slice_buffer_destroy gpr_slice_buffer_destroy_import
526
+ typedef void(*gpr_slice_buffer_add_type)(gpr_slice_buffer *sb, gpr_slice slice);
527
+ extern gpr_slice_buffer_add_type gpr_slice_buffer_add_import;
528
+ #define gpr_slice_buffer_add gpr_slice_buffer_add_import
529
+ typedef size_t(*gpr_slice_buffer_add_indexed_type)(gpr_slice_buffer *sb, gpr_slice slice);
530
+ extern gpr_slice_buffer_add_indexed_type gpr_slice_buffer_add_indexed_import;
531
+ #define gpr_slice_buffer_add_indexed gpr_slice_buffer_add_indexed_import
532
+ typedef void(*gpr_slice_buffer_addn_type)(gpr_slice_buffer *sb, gpr_slice *slices, size_t n);
533
+ extern gpr_slice_buffer_addn_type gpr_slice_buffer_addn_import;
534
+ #define gpr_slice_buffer_addn gpr_slice_buffer_addn_import
535
+ typedef uint8_t *(*gpr_slice_buffer_tiny_add_type)(gpr_slice_buffer *sb, size_t len);
536
+ extern gpr_slice_buffer_tiny_add_type gpr_slice_buffer_tiny_add_import;
537
+ #define gpr_slice_buffer_tiny_add gpr_slice_buffer_tiny_add_import
538
+ typedef void(*gpr_slice_buffer_pop_type)(gpr_slice_buffer *sb);
539
+ extern gpr_slice_buffer_pop_type gpr_slice_buffer_pop_import;
540
+ #define gpr_slice_buffer_pop gpr_slice_buffer_pop_import
541
+ typedef void(*gpr_slice_buffer_reset_and_unref_type)(gpr_slice_buffer *sb);
542
+ extern gpr_slice_buffer_reset_and_unref_type gpr_slice_buffer_reset_and_unref_import;
543
+ #define gpr_slice_buffer_reset_and_unref gpr_slice_buffer_reset_and_unref_import
544
+ typedef void(*gpr_slice_buffer_swap_type)(gpr_slice_buffer *a, gpr_slice_buffer *b);
545
+ extern gpr_slice_buffer_swap_type gpr_slice_buffer_swap_import;
546
+ #define gpr_slice_buffer_swap gpr_slice_buffer_swap_import
547
+ typedef void(*gpr_slice_buffer_move_into_type)(gpr_slice_buffer *src, gpr_slice_buffer *dst);
548
+ extern gpr_slice_buffer_move_into_type gpr_slice_buffer_move_into_import;
549
+ #define gpr_slice_buffer_move_into gpr_slice_buffer_move_into_import
550
+ typedef void(*gpr_slice_buffer_trim_end_type)(gpr_slice_buffer *src, size_t n, gpr_slice_buffer *garbage);
551
+ extern gpr_slice_buffer_trim_end_type gpr_slice_buffer_trim_end_import;
552
+ #define gpr_slice_buffer_trim_end gpr_slice_buffer_trim_end_import
553
+ typedef void(*gpr_slice_buffer_move_first_type)(gpr_slice_buffer *src, size_t n, gpr_slice_buffer *dst);
554
+ extern gpr_slice_buffer_move_first_type gpr_slice_buffer_move_first_import;
555
+ #define gpr_slice_buffer_move_first gpr_slice_buffer_move_first_import
556
+ typedef gpr_slice(*gpr_slice_buffer_take_first_type)(gpr_slice_buffer *src);
557
+ extern gpr_slice_buffer_take_first_type gpr_slice_buffer_take_first_import;
558
+ #define gpr_slice_buffer_take_first gpr_slice_buffer_take_first_import
559
+ typedef void(*gpr_mu_init_type)(gpr_mu *mu);
560
+ extern gpr_mu_init_type gpr_mu_init_import;
561
+ #define gpr_mu_init gpr_mu_init_import
562
+ typedef void(*gpr_mu_destroy_type)(gpr_mu *mu);
563
+ extern gpr_mu_destroy_type gpr_mu_destroy_import;
564
+ #define gpr_mu_destroy gpr_mu_destroy_import
565
+ typedef void(*gpr_mu_lock_type)(gpr_mu *mu);
566
+ extern gpr_mu_lock_type gpr_mu_lock_import;
567
+ #define gpr_mu_lock gpr_mu_lock_import
568
+ typedef void(*gpr_mu_unlock_type)(gpr_mu *mu);
569
+ extern gpr_mu_unlock_type gpr_mu_unlock_import;
570
+ #define gpr_mu_unlock gpr_mu_unlock_import
571
+ typedef int(*gpr_mu_trylock_type)(gpr_mu *mu);
572
+ extern gpr_mu_trylock_type gpr_mu_trylock_import;
573
+ #define gpr_mu_trylock gpr_mu_trylock_import
574
+ typedef void(*gpr_cv_init_type)(gpr_cv *cv);
575
+ extern gpr_cv_init_type gpr_cv_init_import;
576
+ #define gpr_cv_init gpr_cv_init_import
577
+ typedef void(*gpr_cv_destroy_type)(gpr_cv *cv);
578
+ extern gpr_cv_destroy_type gpr_cv_destroy_import;
579
+ #define gpr_cv_destroy gpr_cv_destroy_import
580
+ typedef int(*gpr_cv_wait_type)(gpr_cv *cv, gpr_mu *mu, gpr_timespec abs_deadline);
581
+ extern gpr_cv_wait_type gpr_cv_wait_import;
582
+ #define gpr_cv_wait gpr_cv_wait_import
583
+ typedef void(*gpr_cv_signal_type)(gpr_cv *cv);
584
+ extern gpr_cv_signal_type gpr_cv_signal_import;
585
+ #define gpr_cv_signal gpr_cv_signal_import
586
+ typedef void(*gpr_cv_broadcast_type)(gpr_cv *cv);
587
+ extern gpr_cv_broadcast_type gpr_cv_broadcast_import;
588
+ #define gpr_cv_broadcast gpr_cv_broadcast_import
589
+ typedef void(*gpr_once_init_type)(gpr_once *once, void (*init_routine)(void));
590
+ extern gpr_once_init_type gpr_once_init_import;
591
+ #define gpr_once_init gpr_once_init_import
592
+ typedef void(*gpr_event_init_type)(gpr_event *ev);
593
+ extern gpr_event_init_type gpr_event_init_import;
594
+ #define gpr_event_init gpr_event_init_import
595
+ typedef void(*gpr_event_set_type)(gpr_event *ev, void *value);
596
+ extern gpr_event_set_type gpr_event_set_import;
597
+ #define gpr_event_set gpr_event_set_import
598
+ typedef void *(*gpr_event_get_type)(gpr_event *ev);
599
+ extern gpr_event_get_type gpr_event_get_import;
600
+ #define gpr_event_get gpr_event_get_import
601
+ typedef void *(*gpr_event_wait_type)(gpr_event *ev, gpr_timespec abs_deadline);
602
+ extern gpr_event_wait_type gpr_event_wait_import;
603
+ #define gpr_event_wait gpr_event_wait_import
604
+ typedef void(*gpr_ref_init_type)(gpr_refcount *r, int n);
605
+ extern gpr_ref_init_type gpr_ref_init_import;
606
+ #define gpr_ref_init gpr_ref_init_import
607
+ typedef void(*gpr_ref_type)(gpr_refcount *r);
608
+ extern gpr_ref_type gpr_ref_import;
609
+ #define gpr_ref gpr_ref_import
610
+ typedef void(*gpr_refn_type)(gpr_refcount *r, int n);
611
+ extern gpr_refn_type gpr_refn_import;
612
+ #define gpr_refn gpr_refn_import
613
+ typedef int(*gpr_unref_type)(gpr_refcount *r);
614
+ extern gpr_unref_type gpr_unref_import;
615
+ #define gpr_unref gpr_unref_import
616
+ typedef void(*gpr_stats_init_type)(gpr_stats_counter *c, intptr_t n);
617
+ extern gpr_stats_init_type gpr_stats_init_import;
618
+ #define gpr_stats_init gpr_stats_init_import
619
+ typedef void(*gpr_stats_inc_type)(gpr_stats_counter *c, intptr_t inc);
620
+ extern gpr_stats_inc_type gpr_stats_inc_import;
621
+ #define gpr_stats_inc gpr_stats_inc_import
622
+ typedef intptr_t(*gpr_stats_read_type)(const gpr_stats_counter *c);
623
+ extern gpr_stats_read_type gpr_stats_read_import;
624
+ #define gpr_stats_read gpr_stats_read_import
625
+ typedef gpr_timespec(*gpr_time_0_type)(gpr_clock_type type);
626
+ extern gpr_time_0_type gpr_time_0_import;
627
+ #define gpr_time_0 gpr_time_0_import
628
+ typedef gpr_timespec(*gpr_inf_future_type)(gpr_clock_type type);
629
+ extern gpr_inf_future_type gpr_inf_future_import;
630
+ #define gpr_inf_future gpr_inf_future_import
631
+ typedef gpr_timespec(*gpr_inf_past_type)(gpr_clock_type type);
632
+ extern gpr_inf_past_type gpr_inf_past_import;
633
+ #define gpr_inf_past gpr_inf_past_import
634
+ typedef void(*gpr_time_init_type)(void);
635
+ extern gpr_time_init_type gpr_time_init_import;
636
+ #define gpr_time_init gpr_time_init_import
637
+ typedef gpr_timespec(*gpr_now_type)(gpr_clock_type clock);
638
+ extern gpr_now_type gpr_now_import;
639
+ #define gpr_now gpr_now_import
640
+ typedef gpr_timespec(*gpr_convert_clock_type_type)(gpr_timespec t, gpr_clock_type target_clock);
641
+ extern gpr_convert_clock_type_type gpr_convert_clock_type_import;
642
+ #define gpr_convert_clock_type gpr_convert_clock_type_import
643
+ typedef int(*gpr_time_cmp_type)(gpr_timespec a, gpr_timespec b);
644
+ extern gpr_time_cmp_type gpr_time_cmp_import;
645
+ #define gpr_time_cmp gpr_time_cmp_import
646
+ typedef gpr_timespec(*gpr_time_max_type)(gpr_timespec a, gpr_timespec b);
647
+ extern gpr_time_max_type gpr_time_max_import;
648
+ #define gpr_time_max gpr_time_max_import
649
+ typedef gpr_timespec(*gpr_time_min_type)(gpr_timespec a, gpr_timespec b);
650
+ extern gpr_time_min_type gpr_time_min_import;
651
+ #define gpr_time_min gpr_time_min_import
652
+ typedef gpr_timespec(*gpr_time_add_type)(gpr_timespec a, gpr_timespec b);
653
+ extern gpr_time_add_type gpr_time_add_import;
654
+ #define gpr_time_add gpr_time_add_import
655
+ typedef gpr_timespec(*gpr_time_sub_type)(gpr_timespec a, gpr_timespec b);
656
+ extern gpr_time_sub_type gpr_time_sub_import;
657
+ #define gpr_time_sub gpr_time_sub_import
658
+ typedef gpr_timespec(*gpr_time_from_micros_type)(int64_t x, gpr_clock_type clock_type);
659
+ extern gpr_time_from_micros_type gpr_time_from_micros_import;
660
+ #define gpr_time_from_micros gpr_time_from_micros_import
661
+ typedef gpr_timespec(*gpr_time_from_nanos_type)(int64_t x, gpr_clock_type clock_type);
662
+ extern gpr_time_from_nanos_type gpr_time_from_nanos_import;
663
+ #define gpr_time_from_nanos gpr_time_from_nanos_import
664
+ typedef gpr_timespec(*gpr_time_from_millis_type)(int64_t x, gpr_clock_type clock_type);
665
+ extern gpr_time_from_millis_type gpr_time_from_millis_import;
666
+ #define gpr_time_from_millis gpr_time_from_millis_import
667
+ typedef gpr_timespec(*gpr_time_from_seconds_type)(int64_t x, gpr_clock_type clock_type);
668
+ extern gpr_time_from_seconds_type gpr_time_from_seconds_import;
669
+ #define gpr_time_from_seconds gpr_time_from_seconds_import
670
+ typedef gpr_timespec(*gpr_time_from_minutes_type)(int64_t x, gpr_clock_type clock_type);
671
+ extern gpr_time_from_minutes_type gpr_time_from_minutes_import;
672
+ #define gpr_time_from_minutes gpr_time_from_minutes_import
673
+ typedef gpr_timespec(*gpr_time_from_hours_type)(int64_t x, gpr_clock_type clock_type);
674
+ extern gpr_time_from_hours_type gpr_time_from_hours_import;
675
+ #define gpr_time_from_hours gpr_time_from_hours_import
676
+ typedef int32_t(*gpr_time_to_millis_type)(gpr_timespec timespec);
677
+ extern gpr_time_to_millis_type gpr_time_to_millis_import;
678
+ #define gpr_time_to_millis gpr_time_to_millis_import
679
+ typedef int(*gpr_time_similar_type)(gpr_timespec a, gpr_timespec b, gpr_timespec threshold);
680
+ extern gpr_time_similar_type gpr_time_similar_import;
681
+ #define gpr_time_similar gpr_time_similar_import
682
+ typedef void(*gpr_sleep_until_type)(gpr_timespec until);
683
+ extern gpr_sleep_until_type gpr_sleep_until_import;
684
+ #define gpr_sleep_until gpr_sleep_until_import
685
+ typedef double(*gpr_timespec_to_micros_type)(gpr_timespec t);
686
+ extern gpr_timespec_to_micros_type gpr_timespec_to_micros_import;
687
+ #define gpr_timespec_to_micros gpr_timespec_to_micros_import
688
+ typedef gpr_avl(*gpr_avl_create_type)(const gpr_avl_vtable *vtable);
689
+ extern gpr_avl_create_type gpr_avl_create_import;
690
+ #define gpr_avl_create gpr_avl_create_import
691
+ typedef gpr_avl(*gpr_avl_ref_type)(gpr_avl avl);
692
+ extern gpr_avl_ref_type gpr_avl_ref_import;
693
+ #define gpr_avl_ref gpr_avl_ref_import
694
+ typedef void(*gpr_avl_unref_type)(gpr_avl avl);
695
+ extern gpr_avl_unref_type gpr_avl_unref_import;
696
+ #define gpr_avl_unref gpr_avl_unref_import
697
+ typedef gpr_avl(*gpr_avl_add_type)(gpr_avl avl, void *key, void *value);
698
+ extern gpr_avl_add_type gpr_avl_add_import;
699
+ #define gpr_avl_add gpr_avl_add_import
700
+ typedef gpr_avl(*gpr_avl_remove_type)(gpr_avl avl, void *key);
701
+ extern gpr_avl_remove_type gpr_avl_remove_import;
702
+ #define gpr_avl_remove gpr_avl_remove_import
703
+ typedef void *(*gpr_avl_get_type)(gpr_avl avl, void *key);
704
+ extern gpr_avl_get_type gpr_avl_get_import;
705
+ #define gpr_avl_get gpr_avl_get_import
706
+ typedef gpr_cmdline *(*gpr_cmdline_create_type)(const char *description);
707
+ extern gpr_cmdline_create_type gpr_cmdline_create_import;
708
+ #define gpr_cmdline_create gpr_cmdline_create_import
709
+ typedef void(*gpr_cmdline_add_int_type)(gpr_cmdline *cl, const char *name, const char *help, int *value);
710
+ extern gpr_cmdline_add_int_type gpr_cmdline_add_int_import;
711
+ #define gpr_cmdline_add_int gpr_cmdline_add_int_import
712
+ typedef void(*gpr_cmdline_add_flag_type)(gpr_cmdline *cl, const char *name, const char *help, int *value);
713
+ extern gpr_cmdline_add_flag_type gpr_cmdline_add_flag_import;
714
+ #define gpr_cmdline_add_flag gpr_cmdline_add_flag_import
715
+ typedef void(*gpr_cmdline_add_string_type)(gpr_cmdline *cl, const char *name, const char *help, char **value);
716
+ extern gpr_cmdline_add_string_type gpr_cmdline_add_string_import;
717
+ #define gpr_cmdline_add_string gpr_cmdline_add_string_import
718
+ typedef void(*gpr_cmdline_on_extra_arg_type)(gpr_cmdline *cl, const char *name, const char *help, void (*on_extra_arg)(void *user_data, const char *arg), void *user_data);
719
+ extern gpr_cmdline_on_extra_arg_type gpr_cmdline_on_extra_arg_import;
720
+ #define gpr_cmdline_on_extra_arg gpr_cmdline_on_extra_arg_import
721
+ typedef void(*gpr_cmdline_set_survive_failure_type)(gpr_cmdline *cl);
722
+ extern gpr_cmdline_set_survive_failure_type gpr_cmdline_set_survive_failure_import;
723
+ #define gpr_cmdline_set_survive_failure gpr_cmdline_set_survive_failure_import
724
+ typedef int(*gpr_cmdline_parse_type)(gpr_cmdline *cl, int argc, char **argv);
725
+ extern gpr_cmdline_parse_type gpr_cmdline_parse_import;
726
+ #define gpr_cmdline_parse gpr_cmdline_parse_import
727
+ typedef void(*gpr_cmdline_destroy_type)(gpr_cmdline *cl);
728
+ extern gpr_cmdline_destroy_type gpr_cmdline_destroy_import;
729
+ #define gpr_cmdline_destroy gpr_cmdline_destroy_import
730
+ typedef char *(*gpr_cmdline_usage_string_type)(gpr_cmdline *cl, const char *argv0);
731
+ extern gpr_cmdline_usage_string_type gpr_cmdline_usage_string_import;
732
+ #define gpr_cmdline_usage_string gpr_cmdline_usage_string_import
733
+ typedef unsigned(*gpr_cpu_num_cores_type)(void);
734
+ extern gpr_cpu_num_cores_type gpr_cpu_num_cores_import;
735
+ #define gpr_cpu_num_cores gpr_cpu_num_cores_import
736
+ typedef unsigned(*gpr_cpu_current_cpu_type)(void);
737
+ extern gpr_cpu_current_cpu_type gpr_cpu_current_cpu_import;
738
+ #define gpr_cpu_current_cpu gpr_cpu_current_cpu_import
739
+ typedef gpr_histogram *(*gpr_histogram_create_type)(double resolution, double max_bucket_start);
740
+ extern gpr_histogram_create_type gpr_histogram_create_import;
741
+ #define gpr_histogram_create gpr_histogram_create_import
742
+ typedef void(*gpr_histogram_destroy_type)(gpr_histogram *h);
743
+ extern gpr_histogram_destroy_type gpr_histogram_destroy_import;
744
+ #define gpr_histogram_destroy gpr_histogram_destroy_import
745
+ typedef void(*gpr_histogram_add_type)(gpr_histogram *h, double x);
746
+ extern gpr_histogram_add_type gpr_histogram_add_import;
747
+ #define gpr_histogram_add gpr_histogram_add_import
748
+ typedef int(*gpr_histogram_merge_type)(gpr_histogram *dst, const gpr_histogram *src);
749
+ extern gpr_histogram_merge_type gpr_histogram_merge_import;
750
+ #define gpr_histogram_merge gpr_histogram_merge_import
751
+ typedef double(*gpr_histogram_percentile_type)(gpr_histogram *histogram, double percentile);
752
+ extern gpr_histogram_percentile_type gpr_histogram_percentile_import;
753
+ #define gpr_histogram_percentile gpr_histogram_percentile_import
754
+ typedef double(*gpr_histogram_mean_type)(gpr_histogram *histogram);
755
+ extern gpr_histogram_mean_type gpr_histogram_mean_import;
756
+ #define gpr_histogram_mean gpr_histogram_mean_import
757
+ typedef double(*gpr_histogram_stddev_type)(gpr_histogram *histogram);
758
+ extern gpr_histogram_stddev_type gpr_histogram_stddev_import;
759
+ #define gpr_histogram_stddev gpr_histogram_stddev_import
760
+ typedef double(*gpr_histogram_variance_type)(gpr_histogram *histogram);
761
+ extern gpr_histogram_variance_type gpr_histogram_variance_import;
762
+ #define gpr_histogram_variance gpr_histogram_variance_import
763
+ typedef double(*gpr_histogram_maximum_type)(gpr_histogram *histogram);
764
+ extern gpr_histogram_maximum_type gpr_histogram_maximum_import;
765
+ #define gpr_histogram_maximum gpr_histogram_maximum_import
766
+ typedef double(*gpr_histogram_minimum_type)(gpr_histogram *histogram);
767
+ extern gpr_histogram_minimum_type gpr_histogram_minimum_import;
768
+ #define gpr_histogram_minimum gpr_histogram_minimum_import
769
+ typedef double(*gpr_histogram_count_type)(gpr_histogram *histogram);
770
+ extern gpr_histogram_count_type gpr_histogram_count_import;
771
+ #define gpr_histogram_count gpr_histogram_count_import
772
+ typedef double(*gpr_histogram_sum_type)(gpr_histogram *histogram);
773
+ extern gpr_histogram_sum_type gpr_histogram_sum_import;
774
+ #define gpr_histogram_sum gpr_histogram_sum_import
775
+ typedef double(*gpr_histogram_sum_of_squares_type)(gpr_histogram *histogram);
776
+ extern gpr_histogram_sum_of_squares_type gpr_histogram_sum_of_squares_import;
777
+ #define gpr_histogram_sum_of_squares gpr_histogram_sum_of_squares_import
778
+ typedef const uint32_t *(*gpr_histogram_get_contents_type)(gpr_histogram *histogram, size_t *count);
779
+ extern gpr_histogram_get_contents_type gpr_histogram_get_contents_import;
780
+ #define gpr_histogram_get_contents gpr_histogram_get_contents_import
781
+ typedef void(*gpr_histogram_merge_contents_type)(gpr_histogram *histogram, const uint32_t *data, size_t data_count, double min_seen, double max_seen, double sum, double sum_of_squares, double count);
782
+ extern gpr_histogram_merge_contents_type gpr_histogram_merge_contents_import;
783
+ #define gpr_histogram_merge_contents gpr_histogram_merge_contents_import
784
+ typedef int(*gpr_join_host_port_type)(char **out, const char *host, int port);
785
+ extern gpr_join_host_port_type gpr_join_host_port_import;
786
+ #define gpr_join_host_port gpr_join_host_port_import
787
+ typedef int(*gpr_split_host_port_type)(const char *name, char **host, char **port);
788
+ extern gpr_split_host_port_type gpr_split_host_port_import;
789
+ #define gpr_split_host_port gpr_split_host_port_import
790
+ typedef char *(*gpr_format_message_type)(int messageid);
791
+ extern gpr_format_message_type gpr_format_message_import;
792
+ #define gpr_format_message gpr_format_message_import
793
+ typedef char *(*gpr_strdup_type)(const char *src);
794
+ extern gpr_strdup_type gpr_strdup_import;
795
+ #define gpr_strdup gpr_strdup_import
796
+ typedef int(*gpr_asprintf_type)(char **strp, const char *format, ...);
797
+ extern gpr_asprintf_type gpr_asprintf_import;
798
+ #define gpr_asprintf gpr_asprintf_import
799
+ typedef const char *(*gpr_subprocess_binary_extension_type)();
800
+ extern gpr_subprocess_binary_extension_type gpr_subprocess_binary_extension_import;
801
+ #define gpr_subprocess_binary_extension gpr_subprocess_binary_extension_import
802
+ typedef gpr_subprocess *(*gpr_subprocess_create_type)(int argc, const char **argv);
803
+ extern gpr_subprocess_create_type gpr_subprocess_create_import;
804
+ #define gpr_subprocess_create gpr_subprocess_create_import
805
+ typedef void(*gpr_subprocess_destroy_type)(gpr_subprocess *p);
806
+ extern gpr_subprocess_destroy_type gpr_subprocess_destroy_import;
807
+ #define gpr_subprocess_destroy gpr_subprocess_destroy_import
808
+ typedef int(*gpr_subprocess_join_type)(gpr_subprocess *p);
809
+ extern gpr_subprocess_join_type gpr_subprocess_join_import;
810
+ #define gpr_subprocess_join gpr_subprocess_join_import
811
+ typedef void(*gpr_subprocess_interrupt_type)(gpr_subprocess *p);
812
+ extern gpr_subprocess_interrupt_type gpr_subprocess_interrupt_import;
813
+ #define gpr_subprocess_interrupt gpr_subprocess_interrupt_import
814
+ typedef int(*gpr_thd_new_type)(gpr_thd_id *t, void (*thd_body)(void *arg), void *arg, const gpr_thd_options *options);
815
+ extern gpr_thd_new_type gpr_thd_new_import;
816
+ #define gpr_thd_new gpr_thd_new_import
817
+ typedef gpr_thd_options(*gpr_thd_options_default_type)(void);
818
+ extern gpr_thd_options_default_type gpr_thd_options_default_import;
819
+ #define gpr_thd_options_default gpr_thd_options_default_import
820
+ typedef void(*gpr_thd_options_set_detached_type)(gpr_thd_options *options);
821
+ extern gpr_thd_options_set_detached_type gpr_thd_options_set_detached_import;
822
+ #define gpr_thd_options_set_detached gpr_thd_options_set_detached_import
823
+ typedef void(*gpr_thd_options_set_joinable_type)(gpr_thd_options *options);
824
+ extern gpr_thd_options_set_joinable_type gpr_thd_options_set_joinable_import;
825
+ #define gpr_thd_options_set_joinable gpr_thd_options_set_joinable_import
826
+ typedef int(*gpr_thd_options_is_detached_type)(const gpr_thd_options *options);
827
+ extern gpr_thd_options_is_detached_type gpr_thd_options_is_detached_import;
828
+ #define gpr_thd_options_is_detached gpr_thd_options_is_detached_import
829
+ typedef int(*gpr_thd_options_is_joinable_type)(const gpr_thd_options *options);
830
+ extern gpr_thd_options_is_joinable_type gpr_thd_options_is_joinable_import;
831
+ #define gpr_thd_options_is_joinable gpr_thd_options_is_joinable_import
832
+ typedef gpr_thd_id(*gpr_thd_currentid_type)(void);
833
+ extern gpr_thd_currentid_type gpr_thd_currentid_import;
834
+ #define gpr_thd_currentid gpr_thd_currentid_import
835
+ typedef void(*gpr_thd_join_type)(gpr_thd_id t);
836
+ extern gpr_thd_join_type gpr_thd_join_import;
837
+ #define gpr_thd_join gpr_thd_join_import
838
+
839
+ void grpc_rb_load_imports(HMODULE library);
840
+
841
+ #endif /* GPR_WIN32 */
842
+
843
+ #endif