grpc 1.45.0 → 1.47.0

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 (859) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +69 -110
  3. data/include/grpc/event_engine/event_engine.h +42 -7
  4. data/include/grpc/event_engine/memory_allocator.h +0 -15
  5. data/include/grpc/event_engine/port.h +1 -1
  6. data/include/grpc/event_engine/slice.h +286 -0
  7. data/include/grpc/event_engine/slice_buffer.h +112 -0
  8. data/include/grpc/grpc_security.h +11 -0
  9. data/include/grpc/impl/codegen/grpc_types.h +7 -13
  10. data/include/grpc/impl/codegen/port_platform.h +100 -36
  11. data/include/grpc/impl/codegen/slice.h +1 -1
  12. data/src/core/ext/filters/channel_idle/channel_idle_filter.cc +297 -0
  13. data/src/core/ext/filters/channel_idle/channel_idle_filter.h +125 -0
  14. data/src/core/ext/filters/{client_idle → channel_idle}/idle_filter_state.cc +1 -1
  15. data/src/core/ext/filters/{client_idle → channel_idle}/idle_filter_state.h +3 -3
  16. data/src/core/ext/filters/client_channel/backend_metric.cc +17 -12
  17. data/src/core/ext/filters/client_channel/backend_metric.h +19 -9
  18. data/src/core/ext/filters/client_channel/backup_poller.cc +5 -5
  19. data/src/core/ext/filters/client_channel/backup_poller.h +2 -4
  20. data/src/core/ext/filters/client_channel/channel_connectivity.cc +42 -20
  21. data/src/core/ext/filters/client_channel/client_channel.cc +223 -113
  22. data/src/core/ext/filters/client_channel/client_channel.h +28 -6
  23. data/src/core/ext/filters/client_channel/client_channel_channelz.cc +3 -5
  24. data/src/core/ext/filters/client_channel/client_channel_channelz.h +12 -2
  25. data/src/core/ext/filters/client_channel/client_channel_factory.cc +5 -0
  26. data/src/core/ext/filters/client_channel/client_channel_factory.h +8 -0
  27. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +4 -13
  28. data/src/core/ext/filters/client_channel/config_selector.cc +1 -0
  29. data/src/core/ext/filters/client_channel/config_selector.h +7 -5
  30. data/src/core/ext/filters/client_channel/connector.h +8 -2
  31. data/src/core/ext/filters/client_channel/dynamic_filters.cc +13 -2
  32. data/src/core/ext/filters/client_channel/dynamic_filters.h +11 -1
  33. data/src/core/ext/filters/client_channel/global_subchannel_pool.cc +2 -0
  34. data/src/core/ext/filters/client_channel/global_subchannel_pool.h +3 -0
  35. data/src/core/ext/filters/client_channel/health/health_check_client.cc +138 -582
  36. data/src/core/ext/filters/client_channel/health/health_check_client.h +26 -160
  37. data/src/core/ext/filters/client_channel/http_proxy.cc +98 -112
  38. data/src/core/ext/filters/client_channel/http_proxy.h +20 -0
  39. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.cc +6 -2
  40. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.h +1 -0
  41. data/src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h +49 -0
  42. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc +12 -0
  43. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h +5 -0
  44. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +9 -3
  45. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +59 -19
  46. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc +4 -0
  47. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +6 -0
  48. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +10 -1
  49. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +6 -3
  50. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc +408 -0
  51. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.h +57 -0
  52. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc +1038 -0
  53. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h +54 -0
  54. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +60 -52
  55. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +277 -195
  56. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +158 -101
  57. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h +2 -0
  58. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +46 -20
  59. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +182 -171
  60. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +39 -36
  61. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +117 -63
  62. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +142 -63
  63. data/src/core/ext/filters/client_channel/lb_policy/xds/xds.h +6 -0
  64. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +30 -4
  65. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +37 -10
  66. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +300 -291
  67. data/src/core/ext/filters/client_channel/lb_policy.cc +4 -2
  68. data/src/core/ext/filters/client_channel/lb_policy.h +18 -24
  69. data/src/core/ext/filters/client_channel/lb_policy_factory.h +2 -0
  70. data/src/core/ext/filters/client_channel/lb_policy_registry.cc +8 -1
  71. data/src/core/ext/filters/client_channel/lb_policy_registry.h +6 -1
  72. data/src/core/ext/filters/client_channel/local_subchannel_pool.cc +4 -0
  73. data/src/core/ext/filters/client_channel/local_subchannel_pool.h +1 -0
  74. data/src/core/ext/filters/client_channel/proxy_mapper.h +1 -1
  75. data/src/core/ext/filters/client_channel/proxy_mapper_registry.cc +2 -0
  76. data/src/core/ext/filters/client_channel/proxy_mapper_registry.h +5 -0
  77. data/src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc +23 -5
  78. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +226 -300
  79. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +8 -1
  80. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +10 -8
  81. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +1 -1
  82. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +26 -9
  83. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +13 -4
  84. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +2 -1
  85. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc +2 -0
  86. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h +2 -1
  87. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +73 -220
  88. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +13 -14
  89. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +5 -2
  90. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +59 -13
  91. data/src/core/ext/filters/client_channel/resolver/polling_resolver.cc +213 -0
  92. data/src/core/ext/filters/client_channel/resolver/polling_resolver.h +113 -0
  93. data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +15 -11
  94. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +182 -79
  95. data/src/core/ext/filters/client_channel/resolver_result_parsing.cc +5 -11
  96. data/src/core/ext/filters/client_channel/resolver_result_parsing.h +11 -5
  97. data/src/core/ext/filters/client_channel/retry_filter.cc +60 -5
  98. data/src/core/ext/filters/client_channel/retry_service_config.cc +8 -9
  99. data/src/core/ext/filters/client_channel/retry_service_config.h +10 -1
  100. data/src/core/ext/filters/client_channel/retry_throttle.cc +1 -8
  101. data/src/core/ext/filters/client_channel/retry_throttle.h +7 -1
  102. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +22 -5
  103. data/src/core/ext/filters/client_channel/subchannel.cc +161 -165
  104. data/src/core/ext/filters/client_channel/subchannel.h +80 -20
  105. data/src/core/ext/filters/client_channel/subchannel_interface.h +41 -23
  106. data/src/core/ext/filters/client_channel/subchannel_interface_internal.h +38 -0
  107. data/src/core/ext/filters/client_channel/subchannel_pool_interface.cc +12 -2
  108. data/src/core/ext/filters/client_channel/subchannel_pool_interface.h +6 -3
  109. data/src/core/ext/filters/client_channel/subchannel_stream_client.cc +558 -0
  110. data/src/core/ext/filters/client_channel/subchannel_stream_client.h +226 -0
  111. data/src/core/ext/filters/deadline/deadline_filter.cc +6 -2
  112. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +123 -366
  113. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +24 -1
  114. data/src/core/ext/filters/http/client/http_client_filter.cc +87 -458
  115. data/src/core/ext/filters/http/client/http_client_filter.h +27 -4
  116. data/src/core/ext/filters/http/client_authority_filter.cc +21 -31
  117. data/src/core/ext/filters/http/client_authority_filter.h +6 -5
  118. data/src/core/ext/filters/http/http_filters_plugin.cc +16 -14
  119. data/src/core/ext/filters/http/message_compress/message_compress_filter.cc +1 -0
  120. data/src/core/ext/filters/http/message_compress/message_decompress_filter.cc +3 -1
  121. data/src/core/ext/filters/http/server/http_server_filter.cc +80 -361
  122. data/src/core/ext/filters/http/server/http_server_filter.h +31 -2
  123. data/src/core/ext/filters/message_size/message_size_filter.cc +20 -26
  124. data/src/core/ext/filters/message_size/message_size_filter.h +2 -2
  125. data/src/core/ext/filters/rbac/rbac_filter.cc +1 -0
  126. data/src/core/ext/filters/server_config_selector/server_config_selector.cc +2 -8
  127. data/src/core/ext/filters/server_config_selector/server_config_selector.h +2 -2
  128. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc +73 -201
  129. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +102 -135
  130. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +9 -7
  131. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +49 -19
  132. data/src/core/ext/transport/chttp2/server/chttp2_server.h +2 -0
  133. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +3 -3
  134. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +2 -1
  135. data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +1 -0
  136. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +205 -45
  137. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +5 -0
  138. data/src/core/ext/transport/chttp2/transport/context_list.cc +4 -0
  139. data/src/core/ext/transport/chttp2/transport/context_list.h +4 -1
  140. data/src/core/ext/transport/chttp2/transport/flow_control.cc +6 -2
  141. data/src/core/ext/transport/chttp2/transport/flow_control.h +6 -2
  142. data/src/core/ext/transport/chttp2/transport/frame.h +0 -4
  143. data/src/core/ext/transport/chttp2/transport/frame_data.cc +7 -1
  144. data/src/core/ext/transport/chttp2/transport/frame_data.h +4 -1
  145. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +3 -0
  146. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +3 -1
  147. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +5 -0
  148. data/src/core/ext/transport/chttp2/transport/frame_ping.h +3 -0
  149. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +6 -2
  150. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +3 -0
  151. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +14 -3
  152. data/src/core/ext/transport/chttp2/transport/frame_settings.h +4 -0
  153. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +4 -1
  154. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +3 -0
  155. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +13 -15
  156. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +15 -2
  157. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +3 -0
  158. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +3 -0
  159. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +25 -7
  160. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +8 -1
  161. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +55 -37
  162. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +38 -21
  163. data/src/core/ext/transport/chttp2/transport/http2_settings.h +0 -1
  164. data/src/core/ext/transport/chttp2/transport/internal.h +28 -5
  165. data/src/core/ext/transport/chttp2/transport/parsing.cc +35 -6
  166. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +13 -9
  167. data/src/core/ext/transport/chttp2/transport/stream_map.cc +1 -1
  168. data/src/core/ext/transport/chttp2/transport/stream_map.h +1 -0
  169. data/src/core/ext/transport/chttp2/transport/varint.h +2 -0
  170. data/src/core/ext/transport/chttp2/transport/writing.cc +62 -15
  171. data/src/core/ext/transport/inproc/inproc_transport.cc +8 -5
  172. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c +27 -24
  173. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.h +143 -63
  174. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +37 -35
  175. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +177 -77
  176. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +115 -111
  177. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +547 -207
  178. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c +5 -5
  179. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.h +26 -13
  180. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c +5 -5
  181. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.h +23 -9
  182. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c +7 -7
  183. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.h +18 -0
  184. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.c +4 -4
  185. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.h +13 -4
  186. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.c +4 -4
  187. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.h +9 -0
  188. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.c +49 -46
  189. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.h +217 -78
  190. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.c +3 -3
  191. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.h +10 -2
  192. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +12 -12
  193. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +40 -8
  194. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +5 -5
  195. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +20 -2
  196. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +55 -55
  197. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +289 -110
  198. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +133 -125
  199. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +656 -267
  200. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +24 -18
  201. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +96 -23
  202. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +185 -173
  203. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +860 -309
  204. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +3 -3
  205. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +10 -2
  206. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +44 -24
  207. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +165 -40
  208. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.c +72 -63
  209. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.h +433 -174
  210. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +33 -31
  211. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +154 -52
  212. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +5 -4
  213. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +14 -4
  214. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +89 -89
  215. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +460 -166
  216. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +76 -33
  217. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +379 -69
  218. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +2 -2
  219. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +14 -6
  220. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +5 -25
  221. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +10 -91
  222. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.c +5 -5
  223. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.h +26 -13
  224. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +70 -68
  225. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +369 -131
  226. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +94 -65
  227. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +447 -161
  228. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +4 -4
  229. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +27 -11
  230. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +104 -85
  231. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +378 -113
  232. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +2 -2
  233. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +3 -0
  234. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +6 -6
  235. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +30 -13
  236. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +7 -7
  237. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +43 -16
  238. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +8 -8
  239. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +58 -24
  240. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +4 -4
  241. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +14 -4
  242. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +18 -18
  243. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +100 -43
  244. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +31 -30
  245. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +171 -71
  246. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +32 -32
  247. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +196 -95
  248. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +2 -2
  249. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +7 -2
  250. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +53 -46
  251. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +284 -129
  252. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +56 -50
  253. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +337 -146
  254. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +13 -11
  255. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +49 -14
  256. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +4 -4
  257. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +14 -4
  258. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.c +5 -5
  259. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.h +20 -4
  260. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +33 -32
  261. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +205 -86
  262. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +34 -34
  263. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +175 -74
  264. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +56 -52
  265. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +370 -146
  266. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +27 -23
  267. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +173 -74
  268. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +362 -341
  269. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +2056 -845
  270. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +11 -11
  271. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +49 -16
  272. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.c +56 -50
  273. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.h +293 -111
  274. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +3 -3
  275. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +6 -0
  276. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.c +3 -3
  277. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.h +10 -2
  278. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +5 -5
  279. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +26 -10
  280. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c +5 -5
  281. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.h +27 -12
  282. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c +17 -16
  283. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.h +83 -36
  284. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c +2 -2
  285. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.h +7 -2
  286. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c +8 -8
  287. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.h +46 -17
  288. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.c +9 -9
  289. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.h +38 -12
  290. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +7 -7
  291. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +30 -10
  292. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +2 -2
  293. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +10 -6
  294. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +15 -15
  295. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +71 -28
  296. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +25 -25
  297. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +149 -65
  298. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.c +8 -7
  299. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +30 -12
  300. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +9 -9
  301. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +42 -15
  302. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +173 -144
  303. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +898 -323
  304. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +51 -45
  305. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +261 -116
  306. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +13 -13
  307. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +70 -25
  308. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +80 -55
  309. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +410 -124
  310. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.c +5 -5
  311. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +23 -9
  312. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +1 -1
  313. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +44 -44
  314. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +261 -122
  315. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +8 -8
  316. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +47 -21
  317. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +32 -32
  318. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +175 -66
  319. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.c +4 -4
  320. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.h +17 -6
  321. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +8 -8
  322. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +38 -17
  323. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.c +8 -8
  324. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.h +12 -0
  325. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +7 -7
  326. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +43 -18
  327. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +3 -3
  328. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +20 -9
  329. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +3 -3
  330. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +24 -9
  331. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +2 -2
  332. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +14 -6
  333. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +8 -8
  334. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +40 -16
  335. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +9 -9
  336. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +70 -25
  337. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +5 -5
  338. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +37 -18
  339. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +12 -12
  340. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +81 -30
  341. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +16 -16
  342. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +76 -30
  343. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +20 -20
  344. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +90 -30
  345. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.c +7 -7
  346. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.h +28 -10
  347. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c +2 -2
  348. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.h +3 -0
  349. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +5 -5
  350. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +13 -4
  351. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +9 -9
  352. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +18 -0
  353. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +4 -4
  354. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +9 -0
  355. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.c +5 -5
  356. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.h +17 -4
  357. data/src/core/ext/upb-generated/google/api/annotations.upb.c +3 -3
  358. data/src/core/ext/upb-generated/google/api/annotations.upb.h +17 -2
  359. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +70 -66
  360. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +410 -162
  361. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +80 -74
  362. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +440 -158
  363. data/src/core/ext/upb-generated/google/api/http.upb.c +17 -17
  364. data/src/core/ext/upb-generated/google/api/http.upb.h +116 -43
  365. data/src/core/ext/upb-generated/google/api/httpbody.upb.c +4 -4
  366. data/src/core/ext/upb-generated/google/api/httpbody.upb.h +19 -7
  367. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +3 -3
  368. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +6 -0
  369. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +163 -162
  370. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +1157 -435
  371. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +3 -3
  372. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +10 -4
  373. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +1 -1
  374. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +15 -15
  375. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +108 -40
  376. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +3 -3
  377. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +10 -4
  378. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +18 -18
  379. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +27 -0
  380. data/src/core/ext/upb-generated/google/rpc/status.upb.c +4 -4
  381. data/src/core/ext/upb-generated/google/rpc/status.upb.h +19 -7
  382. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.c +15 -15
  383. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.h +65 -22
  384. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +12 -12
  385. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +49 -12
  386. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +69 -65
  387. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +364 -149
  388. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +8 -7
  389. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +20 -4
  390. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +4 -4
  391. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +6 -0
  392. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +31 -31
  393. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +150 -58
  394. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +11 -11
  395. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +51 -18
  396. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.c +175 -0
  397. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.h +764 -0
  398. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +22 -22
  399. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +97 -10
  400. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +6 -6
  401. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +23 -2
  402. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +3 -3
  403. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +10 -2
  404. data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +6 -6
  405. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +27 -6
  406. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +5 -5
  407. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +20 -2
  408. data/src/core/ext/upb-generated/validate/validate.upb.c +261 -250
  409. data/src/core/ext/upb-generated/validate/validate.upb.h +1836 -663
  410. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.c +22 -22
  411. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.h +97 -10
  412. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.c +6 -6
  413. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.h +23 -2
  414. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.c +3 -3
  415. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.h +10 -2
  416. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +18 -18
  417. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +70 -10
  418. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.c +5 -5
  419. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.h +20 -2
  420. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +2 -2
  421. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +3 -0
  422. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +8 -8
  423. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +38 -12
  424. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +5 -5
  425. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +27 -10
  426. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.c +3 -3
  427. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.h +10 -2
  428. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +5 -5
  429. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +21 -8
  430. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +10 -10
  431. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +71 -30
  432. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +5 -5
  433. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +16 -2
  434. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +12 -12
  435. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +69 -26
  436. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.c +47 -0
  437. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.h +109 -0
  438. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.c +43 -39
  439. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.h +255 -103
  440. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.c +4 -4
  441. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.h +19 -8
  442. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.c +9 -9
  443. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.h +70 -25
  444. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +3 -3
  445. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +10 -2
  446. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +50 -46
  447. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +195 -185
  448. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +16 -12
  449. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +129 -94
  450. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +10 -0
  451. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +18 -33
  452. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +0 -5
  453. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +163 -155
  454. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +5 -0
  455. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +141 -138
  456. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +26 -20
  457. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +738 -730
  458. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +271 -251
  459. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +5 -0
  460. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +207 -193
  461. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +5 -0
  462. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +99 -0
  463. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +75 -0
  464. data/src/core/ext/xds/certificate_provider_store.cc +10 -0
  465. data/src/core/ext/xds/certificate_provider_store.h +9 -0
  466. data/src/core/ext/xds/xds_api.cc +20 -0
  467. data/src/core/ext/xds/xds_bootstrap.cc +2 -2
  468. data/src/core/ext/xds/xds_bootstrap.h +2 -0
  469. data/src/core/ext/xds/xds_certificate_provider.cc +5 -0
  470. data/src/core/ext/xds/xds_certificate_provider.h +8 -0
  471. data/src/core/ext/xds/xds_channel_stack_modifier.cc +5 -5
  472. data/src/core/ext/xds/xds_client.cc +125 -109
  473. data/src/core/ext/xds/xds_client.h +13 -5
  474. data/src/core/ext/xds/xds_cluster.cc +106 -16
  475. data/src/core/ext/xds/xds_cluster.h +3 -0
  476. data/src/core/ext/xds/xds_cluster_specifier_plugin.cc +142 -0
  477. data/src/core/ext/xds/xds_cluster_specifier_plugin.h +79 -0
  478. data/src/core/ext/xds/xds_common_types.cc +9 -9
  479. data/src/core/ext/xds/xds_common_types.h +3 -3
  480. data/src/core/ext/xds/xds_endpoint.cc +12 -5
  481. data/src/core/ext/xds/xds_http_fault_filter.cc +4 -4
  482. data/src/core/ext/xds/xds_listener.cc +20 -10
  483. data/src/core/ext/xds/xds_route_config.cc +162 -25
  484. data/src/core/ext/xds/xds_route_config.h +13 -10
  485. data/src/core/ext/xds/xds_server_config_fetcher.cc +19 -23
  486. data/src/core/lib/address_utils/sockaddr_utils.cc +56 -23
  487. data/src/core/lib/address_utils/sockaddr_utils.h +7 -4
  488. data/src/core/lib/avl/avl.h +71 -6
  489. data/src/core/lib/channel/call_finalization.h +4 -0
  490. data/src/core/lib/channel/call_tracer.h +12 -3
  491. data/src/core/lib/channel/channel_args.cc +179 -81
  492. data/src/core/lib/channel/channel_args.h +242 -11
  493. data/src/core/lib/channel/channel_args_preconditioning.cc +5 -11
  494. data/src/core/lib/channel/channel_args_preconditioning.h +4 -4
  495. data/src/core/lib/channel/channel_stack.cc +41 -3
  496. data/src/core/lib/channel/channel_stack.h +51 -8
  497. data/src/core/lib/channel/channel_stack_builder.cc +9 -84
  498. data/src/core/lib/channel/channel_stack_builder.h +35 -26
  499. data/src/core/lib/channel/channel_stack_builder_impl.cc +97 -0
  500. data/src/core/lib/channel/channel_stack_builder_impl.h +45 -0
  501. data/src/core/lib/channel/channel_trace.cc +8 -13
  502. data/src/core/lib/channel/channel_trace.h +6 -3
  503. data/src/core/lib/channel/channelz.cc +8 -13
  504. data/src/core/lib/channel/channelz.h +13 -4
  505. data/src/core/lib/channel/channelz_registry.cc +7 -14
  506. data/src/core/lib/channel/channelz_registry.h +10 -9
  507. data/src/core/lib/channel/connected_channel.cc +21 -31
  508. data/src/core/lib/channel/connected_channel.h +2 -0
  509. data/src/core/lib/channel/promise_based_filter.cc +848 -260
  510. data/src/core/lib/channel/promise_based_filter.h +215 -68
  511. data/src/core/lib/channel/status_util.cc +2 -0
  512. data/src/core/lib/channel/status_util.h +0 -3
  513. data/src/core/lib/compression/compression_internal.cc +46 -17
  514. data/src/core/lib/compression/compression_internal.h +1 -1
  515. data/src/core/lib/config/core_configuration.cc +3 -0
  516. data/src/core/lib/config/core_configuration.h +2 -1
  517. data/src/core/lib/debug/stats_data.cc +2 -6
  518. data/src/core/lib/debug/stats_data.h +18 -21
  519. data/src/core/lib/event_engine/channel_args_endpoint_config.cc +4 -2
  520. data/src/core/lib/event_engine/channel_args_endpoint_config.h +3 -2
  521. data/src/core/lib/event_engine/default_event_engine_factory.cc +8 -2
  522. data/src/core/lib/event_engine/event_engine.cc +12 -2
  523. data/src/core/lib/event_engine/event_engine_factory.h +5 -0
  524. data/src/core/lib/event_engine/handle_containers.h +67 -0
  525. data/src/core/lib/event_engine/iomgr_engine.cc +206 -0
  526. data/src/core/lib/event_engine/iomgr_engine.h +118 -0
  527. data/src/core/lib/event_engine/memory_allocator.cc +12 -4
  528. data/src/core/lib/event_engine/resolved_address.cc +4 -2
  529. data/src/core/lib/event_engine/slice.cc +102 -0
  530. data/src/core/lib/event_engine/slice_buffer.cc +50 -0
  531. data/src/core/{ext/filters/max_age/max_age_filter.h → lib/event_engine/trace.cc} +3 -11
  532. data/src/core/lib/{iomgr/endpoint_pair_event_engine.cc → event_engine/trace.h} +12 -14
  533. data/src/core/lib/gpr/log.cc +5 -0
  534. data/src/core/lib/gpr/tls.h +4 -5
  535. data/src/core/lib/gprpp/bitset.h +17 -1
  536. data/src/core/lib/gprpp/chunked_vector.h +4 -0
  537. data/src/core/lib/gprpp/construct_destruct.h +1 -0
  538. data/src/core/lib/gprpp/cpp_impl_of.h +4 -0
  539. data/src/core/lib/gprpp/dual_ref_counted.h +1 -4
  540. data/src/core/lib/gprpp/examine_stack.h +0 -1
  541. data/src/core/lib/gprpp/fork.cc +3 -6
  542. data/src/core/lib/gprpp/global_config.h +2 -4
  543. data/src/core/lib/gprpp/global_config_env.cc +3 -2
  544. data/src/core/lib/gprpp/global_config_env.h +3 -1
  545. data/src/core/lib/gprpp/global_config_generic.h +0 -4
  546. data/src/core/lib/gprpp/host_port.cc +2 -0
  547. data/src/core/lib/gprpp/manual_constructor.h +0 -1
  548. data/src/core/lib/gprpp/match.h +75 -0
  549. data/src/core/lib/gprpp/memory.h +1 -5
  550. data/src/core/lib/gprpp/orphanable.h +1 -4
  551. data/src/core/lib/gprpp/overload.h +59 -0
  552. data/src/core/lib/gprpp/ref_counted.h +3 -3
  553. data/src/core/lib/gprpp/ref_counted_ptr.h +1 -1
  554. data/src/core/lib/gprpp/single_set_ptr.h +87 -0
  555. data/src/core/lib/gprpp/stat.h +0 -2
  556. data/src/core/lib/gprpp/stat_posix.cc +7 -2
  557. data/src/core/lib/gprpp/status_helper.cc +25 -5
  558. data/src/core/lib/gprpp/status_helper.h +4 -0
  559. data/src/core/lib/gprpp/sync.h +3 -1
  560. data/src/core/lib/gprpp/table.h +10 -0
  561. data/src/core/lib/gprpp/thd.h +2 -5
  562. data/src/core/lib/gprpp/thd_posix.cc +4 -2
  563. data/src/core/lib/gprpp/thd_windows.cc +2 -0
  564. data/src/core/lib/gprpp/time.cc +20 -0
  565. data/src/core/lib/gprpp/time.h +7 -2
  566. data/src/core/lib/gprpp/time_util.cc +4 -0
  567. data/src/core/lib/gprpp/time_util.h +1 -1
  568. data/src/core/lib/gprpp/unique_type_name.h +104 -0
  569. data/src/core/lib/http/format_request.cc +30 -2
  570. data/src/core/lib/http/format_request.h +2 -0
  571. data/src/core/lib/http/httpcli.cc +88 -81
  572. data/src/core/lib/http/httpcli.h +39 -7
  573. data/src/core/lib/http/httpcli_security_connector.cc +6 -7
  574. data/src/core/lib/http/parser.cc +80 -9
  575. data/src/core/lib/http/parser.h +14 -1
  576. data/src/core/lib/iomgr/endpoint.cc +4 -4
  577. data/src/core/lib/iomgr/endpoint.h +6 -4
  578. data/src/core/lib/iomgr/endpoint_cfstream.cc +7 -4
  579. data/src/core/lib/iomgr/endpoint_pair_posix.cc +2 -1
  580. data/src/core/lib/iomgr/ev_posix.cc +7 -11
  581. data/src/core/lib/iomgr/exec_ctx.h +1 -2
  582. data/src/core/lib/iomgr/fork_posix.cc +1 -1
  583. data/src/core/lib/iomgr/internal_errqueue.cc +38 -47
  584. data/src/core/lib/iomgr/internal_errqueue.h +1 -6
  585. data/src/core/lib/iomgr/iomgr.cc +0 -1
  586. data/src/core/lib/iomgr/{event_engine/pollset.h → iomgr_fwd.h} +9 -9
  587. data/src/core/lib/iomgr/pollset_set.h +1 -2
  588. data/src/core/lib/iomgr/port.h +25 -8
  589. data/src/core/lib/iomgr/resolve_address.cc +8 -0
  590. data/src/core/lib/iomgr/resolve_address.h +21 -14
  591. data/src/core/lib/iomgr/resolve_address_impl.h +2 -3
  592. data/src/core/lib/iomgr/resolve_address_posix.cc +8 -14
  593. data/src/core/lib/iomgr/resolve_address_posix.h +5 -2
  594. data/src/core/lib/iomgr/resolve_address_windows.cc +7 -14
  595. data/src/core/lib/iomgr/resolve_address_windows.h +5 -2
  596. data/src/core/lib/iomgr/sockaddr.h +2 -3
  597. data/src/core/lib/iomgr/sockaddr_posix.h +2 -0
  598. data/src/core/lib/iomgr/sockaddr_windows.h +2 -0
  599. data/src/core/lib/iomgr/socket_utils_common_posix.cc +3 -2
  600. data/src/core/lib/iomgr/tcp_client_cfstream.cc +10 -2
  601. data/src/core/lib/iomgr/tcp_client_posix.cc +14 -7
  602. data/src/core/lib/iomgr/tcp_client_windows.cc +13 -6
  603. data/src/core/lib/iomgr/tcp_posix.cc +77 -37
  604. data/src/core/lib/iomgr/tcp_server_posix.cc +50 -27
  605. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +30 -27
  606. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +7 -4
  607. data/src/core/lib/iomgr/tcp_server_windows.cc +13 -5
  608. data/src/core/lib/iomgr/tcp_windows.cc +7 -4
  609. data/src/core/lib/json/json.h +1 -2
  610. data/src/core/lib/json/json_reader.cc +9 -1
  611. data/src/core/lib/json/json_util.cc +7 -0
  612. data/src/core/lib/json/json_util.h +13 -4
  613. data/src/core/lib/json/json_writer.cc +6 -1
  614. data/src/core/lib/promise/activity.cc +1 -1
  615. data/src/core/lib/promise/activity.h +6 -6
  616. data/src/core/lib/promise/arena_promise.h +11 -1
  617. data/src/core/lib/promise/call_push_pull.h +148 -0
  618. data/src/core/lib/promise/context.h +1 -1
  619. data/src/core/lib/promise/detail/basic_seq.h +2 -2
  620. data/src/core/lib/promise/detail/promise_factory.h +0 -1
  621. data/src/core/lib/promise/detail/status.h +2 -1
  622. data/src/core/lib/promise/intra_activity_waiter.h +49 -0
  623. data/src/core/lib/promise/latch.h +103 -0
  624. data/src/core/lib/promise/loop.h +1 -0
  625. data/src/core/lib/promise/race.h +0 -1
  626. data/src/core/lib/promise/seq.h +0 -2
  627. data/src/core/lib/promise/sleep.cc +2 -0
  628. data/src/core/lib/promise/sleep.h +10 -0
  629. data/src/core/lib/promise/try_seq.h +2 -2
  630. data/src/core/lib/resolver/resolver_factory.h +1 -2
  631. data/src/core/lib/resolver/server_address.cc +9 -3
  632. data/src/core/lib/resolver/server_address.h +4 -4
  633. data/src/core/lib/resource_quota/api.cc +19 -31
  634. data/src/core/lib/resource_quota/api.h +5 -2
  635. data/src/core/lib/resource_quota/arena.cc +0 -6
  636. data/src/core/lib/resource_quota/arena.h +1 -2
  637. data/src/core/lib/resource_quota/memory_quota.cc +47 -5
  638. data/src/core/lib/resource_quota/memory_quota.h +24 -5
  639. data/src/core/lib/resource_quota/resource_quota.h +16 -0
  640. data/src/core/lib/resource_quota/thread_quota.cc +2 -0
  641. data/src/core/lib/resource_quota/thread_quota.h +4 -0
  642. data/src/core/lib/security/authorization/authorization_policy_provider.h +7 -0
  643. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +12 -12
  644. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +5 -6
  645. data/src/core/lib/security/context/security_context.h +8 -1
  646. data/src/core/lib/security/credentials/alts/alts_credentials.cc +12 -5
  647. data/src/core/lib/security/credentials/alts/alts_credentials.h +4 -0
  648. data/src/core/lib/security/credentials/call_creds_util.cc +5 -3
  649. data/src/core/lib/security/credentials/call_creds_util.h +2 -2
  650. data/src/core/lib/security/credentials/channel_creds_registry.h +1 -0
  651. data/src/core/lib/security/credentials/composite/composite_credentials.cc +19 -10
  652. data/src/core/lib/security/credentials/composite/composite_credentials.h +11 -9
  653. data/src/core/lib/security/credentials/credentials.h +29 -39
  654. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +81 -0
  655. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +8 -0
  656. data/src/core/lib/security/credentials/external/external_account_credentials.cc +3 -0
  657. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +2 -0
  658. data/src/core/lib/security/credentials/fake/fake_credentials.cc +18 -12
  659. data/src/core/lib/security/credentials/fake/fake_credentials.h +8 -5
  660. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +27 -13
  661. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +4 -4
  662. data/src/core/lib/security/credentials/iam/iam_credentials.cc +8 -4
  663. data/src/core/lib/security/credentials/iam/iam_credentials.h +6 -2
  664. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +28 -29
  665. data/src/core/lib/security/credentials/insecure/insecure_credentials.h +57 -0
  666. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +8 -3
  667. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +6 -2
  668. data/src/core/lib/security/credentials/local/local_credentials.cc +12 -6
  669. data/src/core/lib/security/credentials/local/local_credentials.h +4 -0
  670. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +22 -10
  671. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +14 -6
  672. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +11 -6
  673. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +8 -6
  674. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +12 -4
  675. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +8 -0
  676. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +10 -0
  677. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +47 -0
  678. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.cc +34 -1
  679. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +66 -3
  680. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +66 -95
  681. data/src/core/lib/security/credentials/tls/tls_credentials.cc +19 -6
  682. data/src/core/lib/security/credentials/tls/tls_credentials.h +5 -5
  683. data/src/core/lib/security/credentials/xds/xds_credentials.cc +57 -50
  684. data/src/core/lib/security/credentials/xds/xds_credentials.h +31 -5
  685. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +1 -1
  686. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +1 -1
  687. data/src/core/lib/security/security_connector/local/local_security_connector.cc +2 -2
  688. data/src/core/lib/security/security_connector/security_connector.cc +1 -1
  689. data/src/core/lib/security/security_connector/security_connector.h +10 -1
  690. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +5 -3
  691. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +4 -2
  692. data/src/core/lib/security/transport/auth_filters.h +7 -7
  693. data/src/core/lib/security/transport/client_auth_filter.cc +26 -20
  694. data/src/core/lib/security/transport/secure_endpoint.cc +213 -133
  695. data/src/core/lib/security/transport/secure_endpoint.h +1 -1
  696. data/src/core/lib/security/transport/security_handshaker.cc +11 -9
  697. data/src/core/lib/security/transport/security_handshaker.h +1 -1
  698. data/src/core/lib/security/transport/server_auth_filter.cc +3 -2
  699. data/src/core/lib/service_config/service_config.h +4 -8
  700. data/src/core/lib/service_config/service_config_call_data.h +4 -1
  701. data/src/core/lib/service_config/service_config_impl.cc +7 -0
  702. data/src/core/lib/service_config/service_config_impl.h +9 -2
  703. data/src/core/lib/service_config/service_config_parser.cc +8 -0
  704. data/src/core/lib/service_config/service_config_parser.h +7 -0
  705. data/src/core/lib/slice/b64.cc +1 -1
  706. data/src/core/lib/slice/b64.h +2 -0
  707. data/src/core/lib/slice/percent_encoding.cc +4 -1
  708. data/src/core/lib/slice/percent_encoding.h +0 -6
  709. data/src/core/lib/slice/slice.cc +2 -1
  710. data/src/core/lib/slice/slice.h +10 -5
  711. data/src/core/lib/slice/slice_api.cc +1 -1
  712. data/src/core/lib/slice/slice_buffer.cc +50 -23
  713. data/src/core/lib/slice/slice_buffer.h +106 -0
  714. data/src/core/lib/{iomgr/is_epollexclusive_available.h → slice/slice_buffer_api.cc} +11 -12
  715. data/src/core/lib/slice/slice_internal.h +4 -3
  716. data/src/core/lib/slice/slice_refcount.h +2 -3
  717. data/src/core/lib/slice/slice_refcount_base.h +2 -3
  718. data/src/core/lib/slice/slice_split.cc +3 -0
  719. data/src/core/lib/slice/slice_split.h +0 -4
  720. data/src/core/lib/slice/slice_string_helpers.cc +4 -0
  721. data/src/core/lib/slice/slice_string_helpers.h +1 -4
  722. data/src/core/lib/surface/builtins.cc +7 -2
  723. data/src/core/lib/surface/byte_buffer.cc +7 -1
  724. data/src/core/lib/surface/byte_buffer_reader.cc +4 -4
  725. data/src/core/lib/surface/call.cc +1052 -917
  726. data/src/core/lib/surface/call.h +16 -16
  727. data/src/core/lib/surface/call_details.cc +4 -4
  728. data/src/core/lib/surface/call_log_batch.cc +7 -1
  729. data/src/core/lib/surface/call_test_only.h +4 -1
  730. data/src/core/lib/surface/channel.cc +181 -243
  731. data/src/core/lib/surface/channel.h +94 -57
  732. data/src/core/lib/surface/channel_init.cc +2 -3
  733. data/src/core/lib/surface/channel_init.h +3 -5
  734. data/src/core/lib/surface/channel_ping.cc +8 -2
  735. data/src/core/lib/surface/channel_stack_type.cc +0 -2
  736. data/src/core/lib/surface/channel_stack_type.h +0 -2
  737. data/src/core/lib/surface/completion_queue.cc +14 -6
  738. data/src/core/lib/surface/completion_queue.h +5 -1
  739. data/src/core/lib/surface/completion_queue_factory.cc +1 -0
  740. data/src/core/lib/surface/completion_queue_factory.h +1 -3
  741. data/src/core/lib/surface/event_string.cc +1 -7
  742. data/src/core/lib/surface/event_string.h +1 -1
  743. data/src/core/lib/surface/init.cc +17 -45
  744. data/src/core/lib/surface/init.h +0 -8
  745. data/src/core/lib/surface/lame_client.cc +64 -110
  746. data/src/core/lib/surface/lame_client.h +40 -2
  747. data/src/core/lib/surface/metadata_array.cc +2 -0
  748. data/src/core/lib/surface/server.cc +72 -70
  749. data/src/core/lib/surface/server.h +40 -11
  750. data/src/core/lib/surface/validate_metadata.cc +2 -5
  751. data/src/core/lib/surface/validate_metadata.h +3 -0
  752. data/src/core/lib/surface/version.cc +2 -2
  753. data/src/core/lib/transport/bdp_estimator.cc +3 -1
  754. data/src/core/lib/transport/bdp_estimator.h +2 -3
  755. data/src/core/lib/transport/byte_stream.cc +6 -3
  756. data/src/core/lib/transport/byte_stream.h +5 -1
  757. data/src/core/lib/transport/connectivity_state.cc +6 -4
  758. data/src/core/lib/transport/connectivity_state.h +2 -3
  759. data/src/core/lib/transport/error_utils.cc +4 -2
  760. data/src/core/lib/transport/error_utils.h +5 -1
  761. data/src/core/lib/{channel → transport}/handshaker.cc +9 -4
  762. data/src/core/lib/{channel → transport}/handshaker.h +13 -6
  763. data/src/core/lib/{channel → transport}/handshaker_factory.h +9 -10
  764. data/src/core/lib/{channel → transport}/handshaker_registry.cc +5 -1
  765. data/src/core/lib/{channel → transport}/handshaker_registry.h +5 -4
  766. data/src/core/{ext/filters/client_channel → lib/transport}/http_connect_handshaker.cc +24 -10
  767. data/src/core/{ext/filters/client_channel → lib/transport}/http_connect_handshaker.h +3 -3
  768. data/src/core/lib/transport/metadata_batch.cc +287 -0
  769. data/src/core/lib/transport/metadata_batch.h +142 -269
  770. data/src/core/lib/transport/parsed_metadata.cc +2 -0
  771. data/src/core/lib/transport/parsed_metadata.h +10 -3
  772. data/src/core/lib/transport/status_conversion.cc +2 -0
  773. data/src/core/lib/transport/status_conversion.h +2 -2
  774. data/src/core/lib/transport/tcp_connect_handshaker.cc +253 -0
  775. data/src/core/lib/transport/tcp_connect_handshaker.h +39 -0
  776. data/src/core/lib/transport/timeout_encoding.cc +2 -6
  777. data/src/core/lib/transport/timeout_encoding.h +5 -1
  778. data/src/core/lib/transport/transport.cc +18 -17
  779. data/src/core/lib/transport/transport.h +48 -7
  780. data/src/core/lib/transport/transport_impl.h +14 -3
  781. data/src/core/lib/transport/transport_op_string.cc +9 -10
  782. data/src/core/lib/uri/uri_parser.cc +11 -3
  783. data/src/core/lib/uri/uri_parser.h +0 -2
  784. data/src/core/plugin_registry/grpc_plugin_registry.cc +13 -4
  785. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +2 -2
  786. data/src/core/tsi/ssl/session_cache/ssl_session.h +2 -0
  787. data/src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc +2 -0
  788. data/src/core/tsi/ssl/session_cache/ssl_session_openssl.cc +2 -0
  789. data/src/core/tsi/ssl_transport_security.cc +75 -38
  790. data/src/core/tsi/ssl_transport_security.h +8 -2
  791. data/src/core/tsi/transport_security_interface.h +2 -0
  792. data/src/ruby/ext/grpc/extconf.rb +2 -2
  793. data/src/ruby/lib/grpc/generic/active_call.rb +7 -1
  794. data/src/ruby/lib/grpc/grpc.rb +1 -1
  795. data/src/ruby/lib/grpc/version.rb +1 -1
  796. data/src/ruby/pb/generate_proto_ruby.sh +1 -0
  797. data/src/ruby/pb/test/client.rb +769 -0
  798. data/src/ruby/pb/test/server.rb +252 -0
  799. data/src/ruby/pb/test/xds_client.rb +415 -0
  800. data/third_party/abseil-cpp/absl/cleanup/cleanup.h +140 -0
  801. data/third_party/abseil-cpp/absl/cleanup/internal/cleanup.h +100 -0
  802. data/third_party/abseil-cpp/absl/container/flat_hash_set.h +504 -0
  803. data/third_party/upb/third_party/utf8_range/utf8_range.h +1 -1
  804. data/third_party/upb/upb/decode.c +32 -16
  805. data/third_party/upb/upb/def.c +118 -55
  806. data/third_party/upb/upb/def.h +12 -3
  807. data/third_party/upb/upb/encode.c +14 -8
  808. data/third_party/upb/upb/json_encode.c +776 -0
  809. data/third_party/upb/upb/json_encode.h +62 -0
  810. data/third_party/upb/upb/msg.c +5 -7
  811. data/third_party/upb/upb/msg.h +1 -2
  812. data/third_party/upb/upb/msg_internal.h +49 -36
  813. data/third_party/upb/upb/port_def.inc +8 -0
  814. data/third_party/upb/upb/port_undef.inc +1 -0
  815. data/third_party/upb/upb/table.c +10 -6
  816. data/third_party/upb/upb/table_internal.h +2 -0
  817. data/third_party/upb/upb/upb.h +41 -11
  818. data/third_party/zlib/crc32.c +966 -292
  819. data/third_party/zlib/crc32.h +9441 -436
  820. data/third_party/zlib/deflate.c +78 -30
  821. data/third_party/zlib/deflate.h +12 -15
  822. data/third_party/zlib/gzguts.h +3 -2
  823. data/third_party/zlib/gzlib.c +5 -3
  824. data/third_party/zlib/gzread.c +5 -7
  825. data/third_party/zlib/gzwrite.c +25 -13
  826. data/third_party/zlib/infback.c +2 -1
  827. data/third_party/zlib/inffast.c +14 -14
  828. data/third_party/zlib/inflate.c +39 -8
  829. data/third_party/zlib/inflate.h +3 -2
  830. data/third_party/zlib/inftrees.c +3 -3
  831. data/third_party/zlib/trees.c +27 -48
  832. data/third_party/zlib/zlib.h +123 -100
  833. data/third_party/zlib/zutil.c +2 -2
  834. data/third_party/zlib/zutil.h +12 -9
  835. metadata +100 -72
  836. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_event_engine.cc +0 -31
  837. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_event_engine.cc +0 -28
  838. data/src/core/ext/filters/client_idle/client_idle_filter.cc +0 -201
  839. data/src/core/ext/filters/max_age/max_age_filter.cc +0 -566
  840. data/src/core/lib/event_engine/sockaddr.cc +0 -40
  841. data/src/core/lib/event_engine/sockaddr.h +0 -44
  842. data/src/core/lib/gprpp/capture.h +0 -76
  843. data/src/core/lib/iomgr/ev_epollex_linux.cc +0 -1657
  844. data/src/core/lib/iomgr/ev_epollex_linux.h +0 -30
  845. data/src/core/lib/iomgr/event_engine/closure.cc +0 -77
  846. data/src/core/lib/iomgr/event_engine/closure.h +0 -42
  847. data/src/core/lib/iomgr/event_engine/endpoint.cc +0 -172
  848. data/src/core/lib/iomgr/event_engine/endpoint.h +0 -52
  849. data/src/core/lib/iomgr/event_engine/iomgr.cc +0 -85
  850. data/src/core/lib/iomgr/event_engine/pollset.cc +0 -87
  851. data/src/core/lib/iomgr/event_engine/promise.h +0 -51
  852. data/src/core/lib/iomgr/event_engine/resolved_address_internal.cc +0 -47
  853. data/src/core/lib/iomgr/event_engine/resolved_address_internal.h +0 -37
  854. data/src/core/lib/iomgr/event_engine/resolver.cc +0 -133
  855. data/src/core/lib/iomgr/event_engine/resolver.h +0 -56
  856. data/src/core/lib/iomgr/event_engine/tcp.cc +0 -296
  857. data/src/core/lib/iomgr/event_engine/timer.cc +0 -62
  858. data/src/core/lib/iomgr/is_epollexclusive_available.cc +0 -119
  859. data/src/core/lib/iomgr/sys_epoll_wrapper.h +0 -30
@@ -13,14 +13,14 @@
13
13
  #include "upb/port_def.inc"
14
14
 
15
15
  static const upb_MiniTable_Field google_protobuf_Duration__fields[2] = {
16
- {1, UPB_SIZE(0, 0), 0, 0, 3, kUpb_FieldMode_Scalar | (upb_FieldRep_8Byte << upb_FieldRep_Shift)},
17
- {2, UPB_SIZE(8, 8), 0, 0, 5, kUpb_FieldMode_Scalar | (upb_FieldRep_4Byte << upb_FieldRep_Shift)},
16
+ {1, UPB_SIZE(8, 8), UPB_SIZE(0, 0), kUpb_NoSub, 3, kUpb_FieldMode_Scalar | (kUpb_FieldRep_8Byte << kUpb_FieldRep_Shift)},
17
+ {2, UPB_SIZE(0, 0), UPB_SIZE(0, 0), kUpb_NoSub, 5, kUpb_FieldMode_Scalar | (kUpb_FieldRep_4Byte << kUpb_FieldRep_Shift)},
18
18
  };
19
19
 
20
20
  const upb_MiniTable google_protobuf_Duration_msginit = {
21
21
  NULL,
22
22
  &google_protobuf_Duration__fields[0],
23
- UPB_SIZE(16, 16), 2, upb_ExtMode_NonExtendable, 2, 255, 0,
23
+ UPB_SIZE(16, 24), 2, kUpb_ExtMode_NonExtendable, 2, 255, 0,
24
24
  };
25
25
 
26
26
  static const upb_MiniTable *messages_layout[1] = {
@@ -57,18 +57,24 @@ UPB_INLINE char* google_protobuf_Duration_serialize_ex(const google_protobuf_Dur
57
57
  upb_Arena* arena, size_t* len) {
58
58
  return upb_Encode(msg, &google_protobuf_Duration_msginit, options, arena, len);
59
59
  }
60
+ UPB_INLINE void google_protobuf_Duration_clear_seconds(const google_protobuf_Duration* msg) {
61
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), int64_t) = 0;
62
+ }
60
63
  UPB_INLINE int64_t google_protobuf_Duration_seconds(const google_protobuf_Duration* msg) {
61
- return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int64_t);
64
+ return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), int64_t);
65
+ }
66
+ UPB_INLINE void google_protobuf_Duration_clear_nanos(const google_protobuf_Duration* msg) {
67
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t) = 0;
62
68
  }
63
69
  UPB_INLINE int32_t google_protobuf_Duration_nanos(const google_protobuf_Duration* msg) {
64
- return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), int32_t);
70
+ return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t);
65
71
  }
66
72
 
67
73
  UPB_INLINE void google_protobuf_Duration_set_seconds(google_protobuf_Duration *msg, int64_t value) {
68
- *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int64_t) = value;
74
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), int64_t) = value;
69
75
  }
70
76
  UPB_INLINE void google_protobuf_Duration_set_nanos(google_protobuf_Duration *msg, int32_t value) {
71
- *UPB_PTR_AT(msg, UPB_SIZE(8, 8), int32_t) = value;
77
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t) = value;
72
78
  }
73
79
 
74
80
  extern const upb_MiniTable_File google_protobuf_duration_proto_upb_file_layout;
@@ -15,7 +15,7 @@
15
15
  const upb_MiniTable google_protobuf_Empty_msginit = {
16
16
  NULL,
17
17
  NULL,
18
- UPB_SIZE(0, 0), 0, upb_ExtMode_NonExtendable, 0, 255, 0,
18
+ UPB_SIZE(0, 8), 0, kUpb_ExtMode_NonExtendable, 0, 255, 0,
19
19
  };
20
20
 
21
21
  static const upb_MiniTable *messages_layout[1] = {
@@ -17,13 +17,13 @@ static const upb_MiniTable_Sub google_protobuf_Struct_submsgs[1] = {
17
17
  };
18
18
 
19
19
  static const upb_MiniTable_Field google_protobuf_Struct__fields[1] = {
20
- {1, UPB_SIZE(0, 0), 0, 0, 11, kUpb_FieldMode_Map | (upb_FieldRep_Pointer << upb_FieldRep_Shift)},
20
+ {1, UPB_SIZE(0, 0), UPB_SIZE(0, 0), 0, 11, kUpb_FieldMode_Map | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
21
21
  };
22
22
 
23
23
  const upb_MiniTable google_protobuf_Struct_msginit = {
24
24
  &google_protobuf_Struct_submsgs[0],
25
25
  &google_protobuf_Struct__fields[0],
26
- UPB_SIZE(8, 8), 1, upb_ExtMode_NonExtendable, 1, 255, 0,
26
+ UPB_SIZE(4, 8), 1, kUpb_ExtMode_NonExtendable, 1, 255, 0,
27
27
  };
28
28
 
29
29
  static const upb_MiniTable_Sub google_protobuf_Struct_FieldsEntry_submsgs[1] = {
@@ -31,34 +31,34 @@ static const upb_MiniTable_Sub google_protobuf_Struct_FieldsEntry_submsgs[1] = {
31
31
  };
32
32
 
33
33
  static const upb_MiniTable_Field google_protobuf_Struct_FieldsEntry__fields[2] = {
34
- {1, UPB_SIZE(0, 0), 0, 0, 9, kUpb_FieldMode_Scalar | (upb_FieldRep_StringView << upb_FieldRep_Shift)},
35
- {2, UPB_SIZE(8, 16), 0, 0, 11, kUpb_FieldMode_Scalar | (upb_FieldRep_Pointer << upb_FieldRep_Shift)},
34
+ {1, UPB_SIZE(0, 0), UPB_SIZE(0, 0), kUpb_NoSub, 12, kUpb_FieldMode_Scalar | (kUpb_FieldRep_1Byte << kUpb_FieldRep_Shift)},
35
+ {2, UPB_SIZE(8, 16), UPB_SIZE(0, 0), 0, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_1Byte << kUpb_FieldRep_Shift)},
36
36
  };
37
37
 
38
38
  const upb_MiniTable google_protobuf_Struct_FieldsEntry_msginit = {
39
39
  &google_protobuf_Struct_FieldsEntry_submsgs[0],
40
40
  &google_protobuf_Struct_FieldsEntry__fields[0],
41
- UPB_SIZE(16, 32), 2, upb_ExtMode_NonExtendable, 2, 255, 0,
41
+ UPB_SIZE(16, 32), 2, kUpb_ExtMode_NonExtendable, 2, 255, 0,
42
42
  };
43
43
 
44
44
  static const upb_MiniTable_Sub google_protobuf_Value_submsgs[2] = {
45
- {.submsg = &google_protobuf_ListValue_msginit},
46
45
  {.submsg = &google_protobuf_Struct_msginit},
46
+ {.submsg = &google_protobuf_ListValue_msginit},
47
47
  };
48
48
 
49
49
  static const upb_MiniTable_Field google_protobuf_Value__fields[6] = {
50
- {1, UPB_SIZE(0, 0), UPB_SIZE(-9, -17), 0, 5, kUpb_FieldMode_Scalar | (upb_FieldRep_4Byte << upb_FieldRep_Shift)},
51
- {2, UPB_SIZE(0, 0), UPB_SIZE(-9, -17), 0, 1, kUpb_FieldMode_Scalar | (upb_FieldRep_8Byte << upb_FieldRep_Shift)},
52
- {3, UPB_SIZE(0, 0), UPB_SIZE(-9, -17), 0, 9, kUpb_FieldMode_Scalar | (upb_FieldRep_StringView << upb_FieldRep_Shift)},
53
- {4, UPB_SIZE(0, 0), UPB_SIZE(-9, -17), 0, 8, kUpb_FieldMode_Scalar | (upb_FieldRep_1Byte << upb_FieldRep_Shift)},
54
- {5, UPB_SIZE(0, 0), UPB_SIZE(-9, -17), 1, 11, kUpb_FieldMode_Scalar | (upb_FieldRep_Pointer << upb_FieldRep_Shift)},
55
- {6, UPB_SIZE(0, 0), UPB_SIZE(-9, -17), 0, 11, kUpb_FieldMode_Scalar | (upb_FieldRep_Pointer << upb_FieldRep_Shift)},
50
+ {1, UPB_SIZE(8, 8), UPB_SIZE(-1, -1), kUpb_NoSub, 5, kUpb_FieldMode_Scalar | (kUpb_FieldRep_4Byte << kUpb_FieldRep_Shift)},
51
+ {2, UPB_SIZE(8, 8), UPB_SIZE(-1, -1), kUpb_NoSub, 1, kUpb_FieldMode_Scalar | (kUpb_FieldRep_8Byte << kUpb_FieldRep_Shift)},
52
+ {3, UPB_SIZE(8, 8), UPB_SIZE(-1, -1), kUpb_NoSub, 9, kUpb_FieldMode_Scalar | (kUpb_FieldRep_StringView << kUpb_FieldRep_Shift)},
53
+ {4, UPB_SIZE(8, 8), UPB_SIZE(-1, -1), kUpb_NoSub, 8, kUpb_FieldMode_Scalar | (kUpb_FieldRep_1Byte << kUpb_FieldRep_Shift)},
54
+ {5, UPB_SIZE(8, 8), UPB_SIZE(-1, -1), 0, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
55
+ {6, UPB_SIZE(8, 8), UPB_SIZE(-1, -1), 1, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
56
56
  };
57
57
 
58
58
  const upb_MiniTable google_protobuf_Value_msginit = {
59
59
  &google_protobuf_Value_submsgs[0],
60
60
  &google_protobuf_Value__fields[0],
61
- UPB_SIZE(16, 32), 6, upb_ExtMode_NonExtendable, 6, 255, 0,
61
+ UPB_SIZE(16, 24), 6, kUpb_ExtMode_NonExtendable, 6, 255, 0,
62
62
  };
63
63
 
64
64
  static const upb_MiniTable_Sub google_protobuf_ListValue_submsgs[1] = {
@@ -66,13 +66,13 @@ static const upb_MiniTable_Sub google_protobuf_ListValue_submsgs[1] = {
66
66
  };
67
67
 
68
68
  static const upb_MiniTable_Field google_protobuf_ListValue__fields[1] = {
69
- {1, UPB_SIZE(0, 0), 0, 0, 11, kUpb_FieldMode_Array | (upb_FieldRep_Pointer << upb_FieldRep_Shift)},
69
+ {1, UPB_SIZE(0, 0), UPB_SIZE(0, 0), 0, 11, kUpb_FieldMode_Array | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
70
70
  };
71
71
 
72
72
  const upb_MiniTable google_protobuf_ListValue_msginit = {
73
73
  &google_protobuf_ListValue_submsgs[0],
74
74
  &google_protobuf_ListValue__fields[0],
75
- UPB_SIZE(8, 8), 1, upb_ExtMode_NonExtendable, 1, 255, 0,
75
+ UPB_SIZE(4, 8), 1, kUpb_ExtMode_NonExtendable, 1, 255, 0,
76
76
  };
77
77
 
78
78
  static const upb_MiniTable *messages_layout[4] = {
@@ -70,25 +70,44 @@ UPB_INLINE char* google_protobuf_Struct_serialize_ex(const google_protobuf_Struc
70
70
  upb_Arena* arena, size_t* len) {
71
71
  return upb_Encode(msg, &google_protobuf_Struct_msginit, options, arena, len);
72
72
  }
73
- UPB_INLINE bool google_protobuf_Struct_has_fields(const google_protobuf_Struct *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0)); }
74
- UPB_INLINE size_t google_protobuf_Struct_fields_size(const google_protobuf_Struct *msg) {return _upb_msg_map_size(msg, UPB_SIZE(0, 0)); }
75
- UPB_INLINE bool google_protobuf_Struct_fields_get(const google_protobuf_Struct *msg, upb_StringView key, google_protobuf_Value* *val) { return _upb_msg_map_get(msg, UPB_SIZE(0, 0), &key, 0, val, sizeof(*val)); }
76
- UPB_INLINE const google_protobuf_Struct_FieldsEntry* google_protobuf_Struct_fields_next(const google_protobuf_Struct *msg, size_t* iter) { return (const google_protobuf_Struct_FieldsEntry*)_upb_msg_map_next(msg, UPB_SIZE(0, 0), iter); }
73
+ UPB_INLINE bool google_protobuf_Struct_has_fields(const google_protobuf_Struct* msg) {
74
+ return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0));
75
+ }
76
+ UPB_INLINE void google_protobuf_Struct_clear_fields(const google_protobuf_Struct* msg) {
77
+ _upb_array_detach(msg, UPB_SIZE(0, 0));
78
+ }
79
+ UPB_INLINE size_t google_protobuf_Struct_fields_size(const google_protobuf_Struct* msg) {
80
+ return _upb_msg_map_size(msg, UPB_SIZE(0, 0));
81
+ }
82
+ UPB_INLINE bool google_protobuf_Struct_fields_get(const google_protobuf_Struct* msg, upb_StringView key, google_protobuf_Value** val) {
83
+ return _upb_msg_map_get(msg, UPB_SIZE(0, 0), &key, 0, val, sizeof(*val));
84
+ }
85
+ UPB_INLINE const google_protobuf_Struct_FieldsEntry* google_protobuf_Struct_fields_next(const google_protobuf_Struct* msg, size_t* iter) {
86
+ return (const google_protobuf_Struct_FieldsEntry*)_upb_msg_map_next(msg, UPB_SIZE(0, 0), iter);
87
+ }
77
88
 
78
- UPB_INLINE void google_protobuf_Struct_fields_clear(google_protobuf_Struct *msg) { _upb_msg_map_clear(msg, UPB_SIZE(0, 0)); }
79
- UPB_INLINE bool google_protobuf_Struct_fields_set(google_protobuf_Struct *msg, upb_StringView key, google_protobuf_Value* val, upb_Arena *a) { return _upb_msg_map_set(msg, UPB_SIZE(0, 0), &key, 0, &val, sizeof(val), a); }
80
- UPB_INLINE bool google_protobuf_Struct_fields_delete(google_protobuf_Struct *msg, upb_StringView key) { return _upb_msg_map_delete(msg, UPB_SIZE(0, 0), &key, 0); }
81
- UPB_INLINE google_protobuf_Struct_FieldsEntry* google_protobuf_Struct_fields_nextmutable(google_protobuf_Struct *msg, size_t* iter) { return (google_protobuf_Struct_FieldsEntry*)_upb_msg_map_next(msg, UPB_SIZE(0, 0), iter); }
89
+ UPB_INLINE void google_protobuf_Struct_fields_clear(google_protobuf_Struct* msg) { _upb_msg_map_clear(msg, UPB_SIZE(0, 0)); }
90
+ UPB_INLINE bool google_protobuf_Struct_fields_set(google_protobuf_Struct* msg, upb_StringView key, google_protobuf_Value* val, upb_Arena* a) {
91
+ return _upb_msg_map_set(msg, UPB_SIZE(0, 0), &key, 0, &val, sizeof(val), a);
92
+ }
93
+ UPB_INLINE bool google_protobuf_Struct_fields_delete(google_protobuf_Struct* msg, upb_StringView key) {
94
+ return _upb_msg_map_delete(msg, UPB_SIZE(0, 0), &key, 0);
95
+ }
96
+ UPB_INLINE google_protobuf_Struct_FieldsEntry* google_protobuf_Struct_fields_nextmutable(google_protobuf_Struct* msg, size_t* iter) {
97
+ return (google_protobuf_Struct_FieldsEntry*)_upb_msg_map_next(msg, UPB_SIZE(0, 0), iter);
98
+ }
82
99
 
83
100
  /* google.protobuf.Struct.FieldsEntry */
84
101
 
85
- UPB_INLINE upb_StringView google_protobuf_Struct_FieldsEntry_key(const google_protobuf_Struct_FieldsEntry *msg) {
102
+ UPB_INLINE upb_StringView google_protobuf_Struct_FieldsEntry_key(const google_protobuf_Struct_FieldsEntry* msg) {
86
103
  upb_StringView ret;
87
104
  _upb_msg_map_key(msg, &ret, 0);
88
105
  return ret;
89
106
  }
90
- UPB_INLINE bool google_protobuf_Struct_FieldsEntry_has_value(const google_protobuf_Struct_FieldsEntry *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
91
- UPB_INLINE const google_protobuf_Value* google_protobuf_Struct_FieldsEntry_value(const google_protobuf_Struct_FieldsEntry *msg) {
107
+ UPB_INLINE bool google_protobuf_Struct_FieldsEntry_has_value(const google_protobuf_Struct_FieldsEntry* msg) {
108
+ return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16));
109
+ }
110
+ UPB_INLINE const google_protobuf_Value* google_protobuf_Struct_FieldsEntry_value(const google_protobuf_Struct_FieldsEntry* msg) {
92
111
  google_protobuf_Value* ret;
93
112
  _upb_msg_map_value(msg, &ret, sizeof(ret));
94
113
  return ret;
@@ -138,37 +157,80 @@ typedef enum {
138
157
  google_protobuf_Value_kind_list_value = 6,
139
158
  google_protobuf_Value_kind_NOT_SET = 0
140
159
  } google_protobuf_Value_kind_oneofcases;
141
- UPB_INLINE google_protobuf_Value_kind_oneofcases google_protobuf_Value_kind_case(const google_protobuf_Value* msg) { return (google_protobuf_Value_kind_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(8, 16), int32_t); }
142
-
143
- UPB_INLINE bool google_protobuf_Value_has_null_value(const google_protobuf_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 1; }
144
- UPB_INLINE int32_t google_protobuf_Value_null_value(const google_protobuf_Value *msg) { return UPB_READ_ONEOF(msg, int32_t, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 1, 0); }
145
- UPB_INLINE bool google_protobuf_Value_has_number_value(const google_protobuf_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 2; }
146
- UPB_INLINE double google_protobuf_Value_number_value(const google_protobuf_Value *msg) { return UPB_READ_ONEOF(msg, double, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 2, 0); }
147
- UPB_INLINE bool google_protobuf_Value_has_string_value(const google_protobuf_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 3; }
148
- UPB_INLINE upb_StringView google_protobuf_Value_string_value(const google_protobuf_Value *msg) { return UPB_READ_ONEOF(msg, upb_StringView, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 3, upb_StringView_FromString("")); }
149
- UPB_INLINE bool google_protobuf_Value_has_bool_value(const google_protobuf_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 4; }
150
- UPB_INLINE bool google_protobuf_Value_bool_value(const google_protobuf_Value *msg) { return UPB_READ_ONEOF(msg, bool, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 4, false); }
151
- UPB_INLINE bool google_protobuf_Value_has_struct_value(const google_protobuf_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 5; }
152
- UPB_INLINE const google_protobuf_Struct* google_protobuf_Value_struct_value(const google_protobuf_Value *msg) { return UPB_READ_ONEOF(msg, const google_protobuf_Struct*, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 5, NULL); }
153
- UPB_INLINE bool google_protobuf_Value_has_list_value(const google_protobuf_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 6; }
154
- UPB_INLINE const google_protobuf_ListValue* google_protobuf_Value_list_value(const google_protobuf_Value *msg) { return UPB_READ_ONEOF(msg, const google_protobuf_ListValue*, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 6, NULL); }
160
+ UPB_INLINE google_protobuf_Value_kind_oneofcases google_protobuf_Value_kind_case(const google_protobuf_Value* msg) {
161
+ return (google_protobuf_Value_kind_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t);
162
+ }
163
+ UPB_INLINE bool google_protobuf_Value_has_null_value(const google_protobuf_Value* msg) {
164
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 1;
165
+ }
166
+ UPB_INLINE void google_protobuf_Value_clear_null_value(const google_protobuf_Value* msg) {
167
+ UPB_WRITE_ONEOF(msg, int32_t, UPB_SIZE(8, 8), 0, UPB_SIZE(0, 0), google_protobuf_Value_kind_NOT_SET);
168
+ }
169
+ UPB_INLINE int32_t google_protobuf_Value_null_value(const google_protobuf_Value* msg) {
170
+ return UPB_READ_ONEOF(msg, int32_t, UPB_SIZE(8, 8), UPB_SIZE(0, 0), 1, 0);
171
+ }
172
+ UPB_INLINE bool google_protobuf_Value_has_number_value(const google_protobuf_Value* msg) {
173
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 2;
174
+ }
175
+ UPB_INLINE void google_protobuf_Value_clear_number_value(const google_protobuf_Value* msg) {
176
+ UPB_WRITE_ONEOF(msg, double, UPB_SIZE(8, 8), 0, UPB_SIZE(0, 0), google_protobuf_Value_kind_NOT_SET);
177
+ }
178
+ UPB_INLINE double google_protobuf_Value_number_value(const google_protobuf_Value* msg) {
179
+ return UPB_READ_ONEOF(msg, double, UPB_SIZE(8, 8), UPB_SIZE(0, 0), 2, 0);
180
+ }
181
+ UPB_INLINE bool google_protobuf_Value_has_string_value(const google_protobuf_Value* msg) {
182
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 3;
183
+ }
184
+ UPB_INLINE void google_protobuf_Value_clear_string_value(const google_protobuf_Value* msg) {
185
+ UPB_WRITE_ONEOF(msg, upb_StringView, UPB_SIZE(8, 8), upb_StringView_FromDataAndSize(NULL, 0), UPB_SIZE(0, 0), google_protobuf_Value_kind_NOT_SET);
186
+ }
187
+ UPB_INLINE upb_StringView google_protobuf_Value_string_value(const google_protobuf_Value* msg) {
188
+ return UPB_READ_ONEOF(msg, upb_StringView, UPB_SIZE(8, 8), UPB_SIZE(0, 0), 3, upb_StringView_FromString(""));
189
+ }
190
+ UPB_INLINE bool google_protobuf_Value_has_bool_value(const google_protobuf_Value* msg) {
191
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 4;
192
+ }
193
+ UPB_INLINE void google_protobuf_Value_clear_bool_value(const google_protobuf_Value* msg) {
194
+ UPB_WRITE_ONEOF(msg, bool, UPB_SIZE(8, 8), 0, UPB_SIZE(0, 0), google_protobuf_Value_kind_NOT_SET);
195
+ }
196
+ UPB_INLINE bool google_protobuf_Value_bool_value(const google_protobuf_Value* msg) {
197
+ return UPB_READ_ONEOF(msg, bool, UPB_SIZE(8, 8), UPB_SIZE(0, 0), 4, false);
198
+ }
199
+ UPB_INLINE bool google_protobuf_Value_has_struct_value(const google_protobuf_Value* msg) {
200
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 5;
201
+ }
202
+ UPB_INLINE void google_protobuf_Value_clear_struct_value(const google_protobuf_Value* msg) {
203
+ UPB_WRITE_ONEOF(msg, google_protobuf_Struct*, UPB_SIZE(8, 8), 0, UPB_SIZE(0, 0), google_protobuf_Value_kind_NOT_SET);
204
+ }
205
+ UPB_INLINE const google_protobuf_Struct* google_protobuf_Value_struct_value(const google_protobuf_Value* msg) {
206
+ return UPB_READ_ONEOF(msg, const google_protobuf_Struct*, UPB_SIZE(8, 8), UPB_SIZE(0, 0), 5, NULL);
207
+ }
208
+ UPB_INLINE bool google_protobuf_Value_has_list_value(const google_protobuf_Value* msg) {
209
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 6;
210
+ }
211
+ UPB_INLINE void google_protobuf_Value_clear_list_value(const google_protobuf_Value* msg) {
212
+ UPB_WRITE_ONEOF(msg, google_protobuf_ListValue*, UPB_SIZE(8, 8), 0, UPB_SIZE(0, 0), google_protobuf_Value_kind_NOT_SET);
213
+ }
214
+ UPB_INLINE const google_protobuf_ListValue* google_protobuf_Value_list_value(const google_protobuf_Value* msg) {
215
+ return UPB_READ_ONEOF(msg, const google_protobuf_ListValue*, UPB_SIZE(8, 8), UPB_SIZE(0, 0), 6, NULL);
216
+ }
155
217
 
156
218
  UPB_INLINE void google_protobuf_Value_set_null_value(google_protobuf_Value *msg, int32_t value) {
157
- UPB_WRITE_ONEOF(msg, int32_t, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 1);
219
+ UPB_WRITE_ONEOF(msg, int32_t, UPB_SIZE(8, 8), value, UPB_SIZE(0, 0), 1);
158
220
  }
159
221
  UPB_INLINE void google_protobuf_Value_set_number_value(google_protobuf_Value *msg, double value) {
160
- UPB_WRITE_ONEOF(msg, double, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 2);
222
+ UPB_WRITE_ONEOF(msg, double, UPB_SIZE(8, 8), value, UPB_SIZE(0, 0), 2);
161
223
  }
162
224
  UPB_INLINE void google_protobuf_Value_set_string_value(google_protobuf_Value *msg, upb_StringView value) {
163
- UPB_WRITE_ONEOF(msg, upb_StringView, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 3);
225
+ UPB_WRITE_ONEOF(msg, upb_StringView, UPB_SIZE(8, 8), value, UPB_SIZE(0, 0), 3);
164
226
  }
165
227
  UPB_INLINE void google_protobuf_Value_set_bool_value(google_protobuf_Value *msg, bool value) {
166
- UPB_WRITE_ONEOF(msg, bool, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 4);
228
+ UPB_WRITE_ONEOF(msg, bool, UPB_SIZE(8, 8), value, UPB_SIZE(0, 0), 4);
167
229
  }
168
230
  UPB_INLINE void google_protobuf_Value_set_struct_value(google_protobuf_Value *msg, google_protobuf_Struct* value) {
169
- UPB_WRITE_ONEOF(msg, google_protobuf_Struct*, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 5);
231
+ UPB_WRITE_ONEOF(msg, google_protobuf_Struct*, UPB_SIZE(8, 8), value, UPB_SIZE(0, 0), 5);
170
232
  }
171
- UPB_INLINE struct google_protobuf_Struct* google_protobuf_Value_mutable_struct_value(google_protobuf_Value *msg, upb_Arena *arena) {
233
+ UPB_INLINE struct google_protobuf_Struct* google_protobuf_Value_mutable_struct_value(google_protobuf_Value* msg, upb_Arena* arena) {
172
234
  struct google_protobuf_Struct* sub = (struct google_protobuf_Struct*)google_protobuf_Value_struct_value(msg);
173
235
  if (sub == NULL) {
174
236
  sub = (struct google_protobuf_Struct*)_upb_Message_New(&google_protobuf_Struct_msginit, arena);
@@ -178,9 +240,9 @@ UPB_INLINE struct google_protobuf_Struct* google_protobuf_Value_mutable_struct_v
178
240
  return sub;
179
241
  }
180
242
  UPB_INLINE void google_protobuf_Value_set_list_value(google_protobuf_Value *msg, google_protobuf_ListValue* value) {
181
- UPB_WRITE_ONEOF(msg, google_protobuf_ListValue*, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 6);
243
+ UPB_WRITE_ONEOF(msg, google_protobuf_ListValue*, UPB_SIZE(8, 8), value, UPB_SIZE(0, 0), 6);
182
244
  }
183
- UPB_INLINE struct google_protobuf_ListValue* google_protobuf_Value_mutable_list_value(google_protobuf_Value *msg, upb_Arena *arena) {
245
+ UPB_INLINE struct google_protobuf_ListValue* google_protobuf_Value_mutable_list_value(google_protobuf_Value* msg, upb_Arena* arena) {
184
246
  struct google_protobuf_ListValue* sub = (struct google_protobuf_ListValue*)google_protobuf_Value_list_value(msg);
185
247
  if (sub == NULL) {
186
248
  sub = (struct google_protobuf_ListValue*)_upb_Message_New(&google_protobuf_ListValue_msginit, arena);
@@ -221,19 +283,25 @@ UPB_INLINE char* google_protobuf_ListValue_serialize_ex(const google_protobuf_Li
221
283
  upb_Arena* arena, size_t* len) {
222
284
  return upb_Encode(msg, &google_protobuf_ListValue_msginit, options, arena, len);
223
285
  }
224
- UPB_INLINE bool google_protobuf_ListValue_has_values(const google_protobuf_ListValue *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0)); }
225
- UPB_INLINE const google_protobuf_Value* const* google_protobuf_ListValue_values(const google_protobuf_ListValue *msg, size_t *len) { return (const google_protobuf_Value* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); }
286
+ UPB_INLINE bool google_protobuf_ListValue_has_values(const google_protobuf_ListValue* msg) {
287
+ return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0));
288
+ }
289
+ UPB_INLINE void google_protobuf_ListValue_clear_values(const google_protobuf_ListValue* msg) {
290
+ _upb_array_detach(msg, UPB_SIZE(0, 0));
291
+ }
292
+ UPB_INLINE const google_protobuf_Value* const* google_protobuf_ListValue_values(const google_protobuf_ListValue* msg, size_t* len) {
293
+ return (const google_protobuf_Value* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len);
294
+ }
226
295
 
227
- UPB_INLINE google_protobuf_Value** google_protobuf_ListValue_mutable_values(google_protobuf_ListValue *msg, size_t *len) {
296
+ UPB_INLINE google_protobuf_Value** google_protobuf_ListValue_mutable_values(google_protobuf_ListValue* msg, size_t* len) {
228
297
  return (google_protobuf_Value**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
229
298
  }
230
- UPB_INLINE google_protobuf_Value** google_protobuf_ListValue_resize_values(google_protobuf_ListValue *msg, size_t len, upb_Arena *arena) {
299
+ UPB_INLINE google_protobuf_Value** google_protobuf_ListValue_resize_values(google_protobuf_ListValue* msg, size_t len, upb_Arena* arena) {
231
300
  return (google_protobuf_Value**)_upb_Array_Resize_accessor2(msg, UPB_SIZE(0, 0), len, UPB_SIZE(2, 3), arena);
232
301
  }
233
- UPB_INLINE struct google_protobuf_Value* google_protobuf_ListValue_add_values(google_protobuf_ListValue *msg, upb_Arena *arena) {
302
+ UPB_INLINE struct google_protobuf_Value* google_protobuf_ListValue_add_values(google_protobuf_ListValue* msg, upb_Arena* arena) {
234
303
  struct google_protobuf_Value* sub = (struct google_protobuf_Value*)_upb_Message_New(&google_protobuf_Value_msginit, arena);
235
- bool ok = _upb_Array_Append_accessor2(
236
- msg, UPB_SIZE(0, 0), UPB_SIZE(2, 3), &sub, arena);
304
+ bool ok = _upb_Array_Append_accessor2(msg, UPB_SIZE(0, 0), UPB_SIZE(2, 3), &sub, arena);
237
305
  if (!ok) return NULL;
238
306
  return sub;
239
307
  }
@@ -13,14 +13,14 @@
13
13
  #include "upb/port_def.inc"
14
14
 
15
15
  static const upb_MiniTable_Field google_protobuf_Timestamp__fields[2] = {
16
- {1, UPB_SIZE(0, 0), 0, 0, 3, kUpb_FieldMode_Scalar | (upb_FieldRep_8Byte << upb_FieldRep_Shift)},
17
- {2, UPB_SIZE(8, 8), 0, 0, 5, kUpb_FieldMode_Scalar | (upb_FieldRep_4Byte << upb_FieldRep_Shift)},
16
+ {1, UPB_SIZE(8, 8), UPB_SIZE(0, 0), kUpb_NoSub, 3, kUpb_FieldMode_Scalar | (kUpb_FieldRep_8Byte << kUpb_FieldRep_Shift)},
17
+ {2, UPB_SIZE(0, 0), UPB_SIZE(0, 0), kUpb_NoSub, 5, kUpb_FieldMode_Scalar | (kUpb_FieldRep_4Byte << kUpb_FieldRep_Shift)},
18
18
  };
19
19
 
20
20
  const upb_MiniTable google_protobuf_Timestamp_msginit = {
21
21
  NULL,
22
22
  &google_protobuf_Timestamp__fields[0],
23
- UPB_SIZE(16, 16), 2, upb_ExtMode_NonExtendable, 2, 255, 0,
23
+ UPB_SIZE(16, 24), 2, kUpb_ExtMode_NonExtendable, 2, 255, 0,
24
24
  };
25
25
 
26
26
  static const upb_MiniTable *messages_layout[1] = {
@@ -57,18 +57,24 @@ UPB_INLINE char* google_protobuf_Timestamp_serialize_ex(const google_protobuf_Ti
57
57
  upb_Arena* arena, size_t* len) {
58
58
  return upb_Encode(msg, &google_protobuf_Timestamp_msginit, options, arena, len);
59
59
  }
60
+ UPB_INLINE void google_protobuf_Timestamp_clear_seconds(const google_protobuf_Timestamp* msg) {
61
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), int64_t) = 0;
62
+ }
60
63
  UPB_INLINE int64_t google_protobuf_Timestamp_seconds(const google_protobuf_Timestamp* msg) {
61
- return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int64_t);
64
+ return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), int64_t);
65
+ }
66
+ UPB_INLINE void google_protobuf_Timestamp_clear_nanos(const google_protobuf_Timestamp* msg) {
67
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t) = 0;
62
68
  }
63
69
  UPB_INLINE int32_t google_protobuf_Timestamp_nanos(const google_protobuf_Timestamp* msg) {
64
- return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), int32_t);
70
+ return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t);
65
71
  }
66
72
 
67
73
  UPB_INLINE void google_protobuf_Timestamp_set_seconds(google_protobuf_Timestamp *msg, int64_t value) {
68
- *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int64_t) = value;
74
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), int64_t) = value;
69
75
  }
70
76
  UPB_INLINE void google_protobuf_Timestamp_set_nanos(google_protobuf_Timestamp *msg, int32_t value) {
71
- *UPB_PTR_AT(msg, UPB_SIZE(8, 8), int32_t) = value;
77
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t) = value;
72
78
  }
73
79
 
74
80
  extern const upb_MiniTable_File google_protobuf_timestamp_proto_upb_file_layout;
@@ -13,93 +13,93 @@
13
13
  #include "upb/port_def.inc"
14
14
 
15
15
  static const upb_MiniTable_Field google_protobuf_DoubleValue__fields[1] = {
16
- {1, UPB_SIZE(0, 0), 0, 0, 1, kUpb_FieldMode_Scalar | (upb_FieldRep_8Byte << upb_FieldRep_Shift)},
16
+ {1, UPB_SIZE(0, 0), UPB_SIZE(0, 0), kUpb_NoSub, 1, kUpb_FieldMode_Scalar | (kUpb_FieldRep_8Byte << kUpb_FieldRep_Shift)},
17
17
  };
18
18
 
19
19
  const upb_MiniTable google_protobuf_DoubleValue_msginit = {
20
20
  NULL,
21
21
  &google_protobuf_DoubleValue__fields[0],
22
- UPB_SIZE(8, 8), 1, upb_ExtMode_NonExtendable, 1, 255, 0,
22
+ UPB_SIZE(8, 8), 1, kUpb_ExtMode_NonExtendable, 1, 255, 0,
23
23
  };
24
24
 
25
25
  static const upb_MiniTable_Field google_protobuf_FloatValue__fields[1] = {
26
- {1, UPB_SIZE(0, 0), 0, 0, 2, kUpb_FieldMode_Scalar | (upb_FieldRep_4Byte << upb_FieldRep_Shift)},
26
+ {1, UPB_SIZE(0, 0), UPB_SIZE(0, 0), kUpb_NoSub, 2, kUpb_FieldMode_Scalar | (kUpb_FieldRep_4Byte << kUpb_FieldRep_Shift)},
27
27
  };
28
28
 
29
29
  const upb_MiniTable google_protobuf_FloatValue_msginit = {
30
30
  NULL,
31
31
  &google_protobuf_FloatValue__fields[0],
32
- UPB_SIZE(8, 8), 1, upb_ExtMode_NonExtendable, 1, 255, 0,
32
+ UPB_SIZE(4, 8), 1, kUpb_ExtMode_NonExtendable, 1, 255, 0,
33
33
  };
34
34
 
35
35
  static const upb_MiniTable_Field google_protobuf_Int64Value__fields[1] = {
36
- {1, UPB_SIZE(0, 0), 0, 0, 3, kUpb_FieldMode_Scalar | (upb_FieldRep_8Byte << upb_FieldRep_Shift)},
36
+ {1, UPB_SIZE(0, 0), UPB_SIZE(0, 0), kUpb_NoSub, 3, kUpb_FieldMode_Scalar | (kUpb_FieldRep_8Byte << kUpb_FieldRep_Shift)},
37
37
  };
38
38
 
39
39
  const upb_MiniTable google_protobuf_Int64Value_msginit = {
40
40
  NULL,
41
41
  &google_protobuf_Int64Value__fields[0],
42
- UPB_SIZE(8, 8), 1, upb_ExtMode_NonExtendable, 1, 255, 0,
42
+ UPB_SIZE(8, 8), 1, kUpb_ExtMode_NonExtendable, 1, 255, 0,
43
43
  };
44
44
 
45
45
  static const upb_MiniTable_Field google_protobuf_UInt64Value__fields[1] = {
46
- {1, UPB_SIZE(0, 0), 0, 0, 4, kUpb_FieldMode_Scalar | (upb_FieldRep_8Byte << upb_FieldRep_Shift)},
46
+ {1, UPB_SIZE(0, 0), UPB_SIZE(0, 0), kUpb_NoSub, 4, kUpb_FieldMode_Scalar | (kUpb_FieldRep_8Byte << kUpb_FieldRep_Shift)},
47
47
  };
48
48
 
49
49
  const upb_MiniTable google_protobuf_UInt64Value_msginit = {
50
50
  NULL,
51
51
  &google_protobuf_UInt64Value__fields[0],
52
- UPB_SIZE(8, 8), 1, upb_ExtMode_NonExtendable, 1, 255, 0,
52
+ UPB_SIZE(8, 8), 1, kUpb_ExtMode_NonExtendable, 1, 255, 0,
53
53
  };
54
54
 
55
55
  static const upb_MiniTable_Field google_protobuf_Int32Value__fields[1] = {
56
- {1, UPB_SIZE(0, 0), 0, 0, 5, kUpb_FieldMode_Scalar | (upb_FieldRep_4Byte << upb_FieldRep_Shift)},
56
+ {1, UPB_SIZE(0, 0), UPB_SIZE(0, 0), kUpb_NoSub, 5, kUpb_FieldMode_Scalar | (kUpb_FieldRep_4Byte << kUpb_FieldRep_Shift)},
57
57
  };
58
58
 
59
59
  const upb_MiniTable google_protobuf_Int32Value_msginit = {
60
60
  NULL,
61
61
  &google_protobuf_Int32Value__fields[0],
62
- UPB_SIZE(8, 8), 1, upb_ExtMode_NonExtendable, 1, 255, 0,
62
+ UPB_SIZE(4, 8), 1, kUpb_ExtMode_NonExtendable, 1, 255, 0,
63
63
  };
64
64
 
65
65
  static const upb_MiniTable_Field google_protobuf_UInt32Value__fields[1] = {
66
- {1, UPB_SIZE(0, 0), 0, 0, 13, kUpb_FieldMode_Scalar | (upb_FieldRep_4Byte << upb_FieldRep_Shift)},
66
+ {1, UPB_SIZE(0, 0), UPB_SIZE(0, 0), kUpb_NoSub, 13, kUpb_FieldMode_Scalar | (kUpb_FieldRep_4Byte << kUpb_FieldRep_Shift)},
67
67
  };
68
68
 
69
69
  const upb_MiniTable google_protobuf_UInt32Value_msginit = {
70
70
  NULL,
71
71
  &google_protobuf_UInt32Value__fields[0],
72
- UPB_SIZE(8, 8), 1, upb_ExtMode_NonExtendable, 1, 255, 0,
72
+ UPB_SIZE(4, 8), 1, kUpb_ExtMode_NonExtendable, 1, 255, 0,
73
73
  };
74
74
 
75
75
  static const upb_MiniTable_Field google_protobuf_BoolValue__fields[1] = {
76
- {1, UPB_SIZE(0, 0), 0, 0, 8, kUpb_FieldMode_Scalar | (upb_FieldRep_1Byte << upb_FieldRep_Shift)},
76
+ {1, UPB_SIZE(0, 0), UPB_SIZE(0, 0), kUpb_NoSub, 8, kUpb_FieldMode_Scalar | (kUpb_FieldRep_1Byte << kUpb_FieldRep_Shift)},
77
77
  };
78
78
 
79
79
  const upb_MiniTable google_protobuf_BoolValue_msginit = {
80
80
  NULL,
81
81
  &google_protobuf_BoolValue__fields[0],
82
- UPB_SIZE(8, 8), 1, upb_ExtMode_NonExtendable, 1, 255, 0,
82
+ UPB_SIZE(1, 8), 1, kUpb_ExtMode_NonExtendable, 1, 255, 0,
83
83
  };
84
84
 
85
85
  static const upb_MiniTable_Field google_protobuf_StringValue__fields[1] = {
86
- {1, UPB_SIZE(0, 0), 0, 0, 9, kUpb_FieldMode_Scalar | (upb_FieldRep_StringView << upb_FieldRep_Shift)},
86
+ {1, UPB_SIZE(0, 0), UPB_SIZE(0, 0), kUpb_NoSub, 9, kUpb_FieldMode_Scalar | (kUpb_FieldRep_StringView << kUpb_FieldRep_Shift)},
87
87
  };
88
88
 
89
89
  const upb_MiniTable google_protobuf_StringValue_msginit = {
90
90
  NULL,
91
91
  &google_protobuf_StringValue__fields[0],
92
- UPB_SIZE(8, 16), 1, upb_ExtMode_NonExtendable, 1, 255, 0,
92
+ UPB_SIZE(8, 24), 1, kUpb_ExtMode_NonExtendable, 1, 255, 0,
93
93
  };
94
94
 
95
95
  static const upb_MiniTable_Field google_protobuf_BytesValue__fields[1] = {
96
- {1, UPB_SIZE(0, 0), 0, 0, 12, kUpb_FieldMode_Scalar | (upb_FieldRep_StringView << upb_FieldRep_Shift)},
96
+ {1, UPB_SIZE(0, 0), UPB_SIZE(0, 0), kUpb_NoSub, 12, kUpb_FieldMode_Scalar | (kUpb_FieldRep_StringView << kUpb_FieldRep_Shift)},
97
97
  };
98
98
 
99
99
  const upb_MiniTable google_protobuf_BytesValue_msginit = {
100
100
  NULL,
101
101
  &google_protobuf_BytesValue__fields[0],
102
- UPB_SIZE(8, 16), 1, upb_ExtMode_NonExtendable, 1, 255, 0,
102
+ UPB_SIZE(8, 24), 1, kUpb_ExtMode_NonExtendable, 1, 255, 0,
103
103
  };
104
104
 
105
105
  static const upb_MiniTable *messages_layout[9] = {
@@ -81,6 +81,9 @@ UPB_INLINE char* google_protobuf_DoubleValue_serialize_ex(const google_protobuf_
81
81
  upb_Arena* arena, size_t* len) {
82
82
  return upb_Encode(msg, &google_protobuf_DoubleValue_msginit, options, arena, len);
83
83
  }
84
+ UPB_INLINE void google_protobuf_DoubleValue_clear_value(const google_protobuf_DoubleValue* msg) {
85
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), double) = 0;
86
+ }
84
87
  UPB_INLINE double google_protobuf_DoubleValue_value(const google_protobuf_DoubleValue* msg) {
85
88
  return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), double);
86
89
  }
@@ -120,6 +123,9 @@ UPB_INLINE char* google_protobuf_FloatValue_serialize_ex(const google_protobuf_F
120
123
  upb_Arena* arena, size_t* len) {
121
124
  return upb_Encode(msg, &google_protobuf_FloatValue_msginit, options, arena, len);
122
125
  }
126
+ UPB_INLINE void google_protobuf_FloatValue_clear_value(const google_protobuf_FloatValue* msg) {
127
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), float) = 0;
128
+ }
123
129
  UPB_INLINE float google_protobuf_FloatValue_value(const google_protobuf_FloatValue* msg) {
124
130
  return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), float);
125
131
  }
@@ -159,6 +165,9 @@ UPB_INLINE char* google_protobuf_Int64Value_serialize_ex(const google_protobuf_I
159
165
  upb_Arena* arena, size_t* len) {
160
166
  return upb_Encode(msg, &google_protobuf_Int64Value_msginit, options, arena, len);
161
167
  }
168
+ UPB_INLINE void google_protobuf_Int64Value_clear_value(const google_protobuf_Int64Value* msg) {
169
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int64_t) = 0;
170
+ }
162
171
  UPB_INLINE int64_t google_protobuf_Int64Value_value(const google_protobuf_Int64Value* msg) {
163
172
  return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int64_t);
164
173
  }
@@ -198,6 +207,9 @@ UPB_INLINE char* google_protobuf_UInt64Value_serialize_ex(const google_protobuf_
198
207
  upb_Arena* arena, size_t* len) {
199
208
  return upb_Encode(msg, &google_protobuf_UInt64Value_msginit, options, arena, len);
200
209
  }
210
+ UPB_INLINE void google_protobuf_UInt64Value_clear_value(const google_protobuf_UInt64Value* msg) {
211
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), uint64_t) = 0;
212
+ }
201
213
  UPB_INLINE uint64_t google_protobuf_UInt64Value_value(const google_protobuf_UInt64Value* msg) {
202
214
  return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), uint64_t);
203
215
  }
@@ -237,6 +249,9 @@ UPB_INLINE char* google_protobuf_Int32Value_serialize_ex(const google_protobuf_I
237
249
  upb_Arena* arena, size_t* len) {
238
250
  return upb_Encode(msg, &google_protobuf_Int32Value_msginit, options, arena, len);
239
251
  }
252
+ UPB_INLINE void google_protobuf_Int32Value_clear_value(const google_protobuf_Int32Value* msg) {
253
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t) = 0;
254
+ }
240
255
  UPB_INLINE int32_t google_protobuf_Int32Value_value(const google_protobuf_Int32Value* msg) {
241
256
  return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t);
242
257
  }
@@ -276,6 +291,9 @@ UPB_INLINE char* google_protobuf_UInt32Value_serialize_ex(const google_protobuf_
276
291
  upb_Arena* arena, size_t* len) {
277
292
  return upb_Encode(msg, &google_protobuf_UInt32Value_msginit, options, arena, len);
278
293
  }
294
+ UPB_INLINE void google_protobuf_UInt32Value_clear_value(const google_protobuf_UInt32Value* msg) {
295
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), uint32_t) = 0;
296
+ }
279
297
  UPB_INLINE uint32_t google_protobuf_UInt32Value_value(const google_protobuf_UInt32Value* msg) {
280
298
  return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), uint32_t);
281
299
  }
@@ -315,6 +333,9 @@ UPB_INLINE char* google_protobuf_BoolValue_serialize_ex(const google_protobuf_Bo
315
333
  upb_Arena* arena, size_t* len) {
316
334
  return upb_Encode(msg, &google_protobuf_BoolValue_msginit, options, arena, len);
317
335
  }
336
+ UPB_INLINE void google_protobuf_BoolValue_clear_value(const google_protobuf_BoolValue* msg) {
337
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool) = 0;
338
+ }
318
339
  UPB_INLINE bool google_protobuf_BoolValue_value(const google_protobuf_BoolValue* msg) {
319
340
  return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), bool);
320
341
  }
@@ -354,6 +375,9 @@ UPB_INLINE char* google_protobuf_StringValue_serialize_ex(const google_protobuf_
354
375
  upb_Arena* arena, size_t* len) {
355
376
  return upb_Encode(msg, &google_protobuf_StringValue_msginit, options, arena, len);
356
377
  }
378
+ UPB_INLINE void google_protobuf_StringValue_clear_value(const google_protobuf_StringValue* msg) {
379
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_StringView) = upb_StringView_FromDataAndSize(NULL, 0);
380
+ }
357
381
  UPB_INLINE upb_StringView google_protobuf_StringValue_value(const google_protobuf_StringValue* msg) {
358
382
  return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_StringView);
359
383
  }
@@ -393,6 +417,9 @@ UPB_INLINE char* google_protobuf_BytesValue_serialize_ex(const google_protobuf_B
393
417
  upb_Arena* arena, size_t* len) {
394
418
  return upb_Encode(msg, &google_protobuf_BytesValue_msginit, options, arena, len);
395
419
  }
420
+ UPB_INLINE void google_protobuf_BytesValue_clear_value(const google_protobuf_BytesValue* msg) {
421
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_StringView) = upb_StringView_FromDataAndSize(NULL, 0);
422
+ }
396
423
  UPB_INLINE upb_StringView google_protobuf_BytesValue_value(const google_protobuf_BytesValue* msg) {
397
424
  return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_StringView);
398
425
  }
@@ -18,15 +18,15 @@ static const upb_MiniTable_Sub google_rpc_Status_submsgs[1] = {
18
18
  };
19
19
 
20
20
  static const upb_MiniTable_Field google_rpc_Status__fields[3] = {
21
- {1, UPB_SIZE(0, 0), 0, 0, 5, kUpb_FieldMode_Scalar | (upb_FieldRep_4Byte << upb_FieldRep_Shift)},
22
- {2, UPB_SIZE(4, 8), 0, 0, 9, kUpb_FieldMode_Scalar | (upb_FieldRep_StringView << upb_FieldRep_Shift)},
23
- {3, UPB_SIZE(12, 24), 0, 0, 11, kUpb_FieldMode_Array | (upb_FieldRep_Pointer << upb_FieldRep_Shift)},
21
+ {1, UPB_SIZE(0, 0), UPB_SIZE(0, 0), kUpb_NoSub, 5, kUpb_FieldMode_Scalar | (kUpb_FieldRep_4Byte << kUpb_FieldRep_Shift)},
22
+ {2, UPB_SIZE(4, 8), UPB_SIZE(0, 0), kUpb_NoSub, 9, kUpb_FieldMode_Scalar | (kUpb_FieldRep_StringView << kUpb_FieldRep_Shift)},
23
+ {3, UPB_SIZE(12, 24), UPB_SIZE(0, 0), 0, 11, kUpb_FieldMode_Array | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
24
24
  };
25
25
 
26
26
  const upb_MiniTable google_rpc_Status_msginit = {
27
27
  &google_rpc_Status_submsgs[0],
28
28
  &google_rpc_Status__fields[0],
29
- UPB_SIZE(16, 32), 3, upb_ExtMode_NonExtendable, 3, 255, 0,
29
+ UPB_SIZE(16, 40), 3, kUpb_ExtMode_NonExtendable, 3, 255, 0,
30
30
  };
31
31
 
32
32
  static const upb_MiniTable *messages_layout[1] = {