grpc 1.45.0 → 1.53.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 (1842) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +437 -254
  3. data/include/grpc/byte_buffer.h +76 -1
  4. data/include/grpc/byte_buffer_reader.h +19 -1
  5. data/include/grpc/compression.h +2 -2
  6. data/include/grpc/event_engine/endpoint_config.h +11 -5
  7. data/include/grpc/event_engine/event_engine.h +129 -39
  8. data/include/grpc/event_engine/internal/memory_allocator_impl.h +1 -1
  9. data/include/grpc/event_engine/internal/slice_cast.h +67 -0
  10. data/include/grpc/event_engine/memory_allocator.h +1 -16
  11. data/include/grpc/event_engine/port.h +1 -1
  12. data/include/grpc/event_engine/slice.h +306 -0
  13. data/include/grpc/event_engine/slice_buffer.h +159 -0
  14. data/include/grpc/fork.h +25 -1
  15. data/include/grpc/grpc.h +4 -14
  16. data/include/grpc/grpc_posix.h +1 -1
  17. data/include/grpc/grpc_security.h +11 -0
  18. data/include/grpc/impl/codegen/atm.h +3 -71
  19. data/include/grpc/impl/codegen/atm_gcc_atomic.h +3 -67
  20. data/include/grpc/impl/codegen/atm_gcc_sync.h +3 -61
  21. data/include/grpc/impl/codegen/atm_windows.h +3 -108
  22. data/include/grpc/impl/codegen/byte_buffer.h +4 -78
  23. data/include/grpc/impl/codegen/byte_buffer_reader.h +4 -19
  24. data/include/grpc/impl/codegen/compression_types.h +5 -83
  25. data/include/grpc/impl/codegen/connectivity_state.h +5 -21
  26. data/include/grpc/impl/codegen/fork.h +4 -25
  27. data/include/grpc/impl/codegen/gpr_types.h +4 -35
  28. data/include/grpc/impl/codegen/grpc_types.h +5 -797
  29. data/include/grpc/impl/codegen/log.h +3 -86
  30. data/include/grpc/impl/codegen/port_platform.h +3 -699
  31. data/include/grpc/impl/codegen/propagation_bits.h +3 -28
  32. data/include/grpc/impl/codegen/slice.h +4 -107
  33. data/include/grpc/impl/codegen/status.h +4 -131
  34. data/include/grpc/impl/codegen/sync.h +3 -42
  35. data/include/grpc/impl/codegen/sync_abseil.h +3 -12
  36. data/include/grpc/impl/codegen/sync_custom.h +3 -14
  37. data/include/grpc/impl/codegen/sync_generic.h +3 -25
  38. data/include/grpc/impl/codegen/sync_posix.h +3 -28
  39. data/include/grpc/impl/codegen/sync_windows.h +3 -16
  40. data/include/grpc/impl/compression_types.h +109 -0
  41. data/include/grpc/impl/connectivity_state.h +47 -0
  42. data/include/grpc/impl/grpc_types.h +827 -0
  43. data/include/grpc/impl/propagation_bits.h +54 -0
  44. data/include/grpc/impl/slice_type.h +112 -0
  45. data/include/grpc/load_reporting.h +1 -1
  46. data/include/grpc/module.modulemap +5 -1
  47. data/include/grpc/slice.h +1 -1
  48. data/include/grpc/status.h +131 -1
  49. data/include/grpc/support/atm.h +70 -1
  50. data/include/grpc/support/atm_gcc_atomic.h +59 -1
  51. data/include/grpc/support/atm_gcc_sync.h +58 -1
  52. data/include/grpc/support/atm_windows.h +105 -1
  53. data/include/grpc/support/log.h +87 -1
  54. data/include/grpc/support/log_windows.h +1 -1
  55. data/include/grpc/support/port_platform.h +767 -1
  56. data/include/grpc/support/string_util.h +1 -1
  57. data/include/grpc/support/sync.h +35 -2
  58. data/include/grpc/support/sync_abseil.h +11 -1
  59. data/include/grpc/support/sync_custom.h +13 -1
  60. data/include/grpc/support/sync_generic.h +24 -1
  61. data/include/grpc/support/sync_posix.h +27 -1
  62. data/include/grpc/support/sync_windows.h +15 -1
  63. data/include/grpc/support/time.h +31 -6
  64. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +148 -0
  65. data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +52 -0
  66. data/src/core/ext/filters/backend_metrics/backend_metric_provider.h +29 -0
  67. data/src/core/ext/filters/census/grpc_context.cc +19 -17
  68. data/src/core/ext/filters/channel_idle/channel_idle_filter.cc +315 -0
  69. data/src/core/ext/filters/channel_idle/channel_idle_filter.h +142 -0
  70. data/src/core/ext/filters/{client_idle → channel_idle}/idle_filter_state.cc +1 -1
  71. data/src/core/ext/filters/{client_idle → channel_idle}/idle_filter_state.h +6 -4
  72. data/src/core/ext/filters/client_channel/backend_metric.cc +19 -12
  73. data/src/core/ext/filters/client_channel/backend_metric.h +21 -11
  74. data/src/core/ext/filters/client_channel/backup_poller.cc +34 -34
  75. data/src/core/ext/filters/client_channel/backup_poller.h +26 -28
  76. data/src/core/ext/filters/client_channel/channel_connectivity.cc +89 -44
  77. data/src/core/ext/filters/client_channel/client_channel.cc +557 -540
  78. data/src/core/ext/filters/client_channel/client_channel.h +70 -26
  79. data/src/core/ext/filters/client_channel/client_channel_channelz.cc +19 -23
  80. data/src/core/ext/filters/client_channel/client_channel_channelz.h +33 -23
  81. data/src/core/ext/filters/client_channel/client_channel_factory.cc +19 -43
  82. data/src/core/ext/filters/client_channel/client_channel_factory.h +11 -11
  83. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +22 -47
  84. data/src/core/ext/filters/client_channel/client_channel_service_config.cc +153 -0
  85. data/src/core/ext/filters/client_channel/{resolver_result_parsing.h → client_channel_service_config.h} +33 -27
  86. data/src/core/ext/filters/client_channel/config_selector.cc +1 -0
  87. data/src/core/ext/filters/client_channel/config_selector.h +29 -23
  88. data/src/core/ext/filters/client_channel/connector.h +19 -10
  89. data/src/core/ext/filters/client_channel/dynamic_filters.cc +40 -54
  90. data/src/core/ext/filters/client_channel/dynamic_filters.h +20 -11
  91. data/src/core/ext/filters/client_channel/global_subchannel_pool.cc +2 -0
  92. data/src/core/ext/filters/client_channel/global_subchannel_pool.h +24 -21
  93. data/src/core/ext/filters/client_channel/health/health_check_client.cc +137 -582
  94. data/src/core/ext/filters/client_channel/health/health_check_client.h +29 -163
  95. data/src/core/ext/filters/client_channel/http_proxy.cc +130 -164
  96. data/src/core/ext/filters/client_channel/http_proxy.h +46 -22
  97. data/src/core/ext/filters/client_channel/lb_call_state_internal.h +39 -0
  98. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.cc +8 -5
  99. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.h +4 -3
  100. data/src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h +49 -0
  101. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc +37 -16
  102. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h +18 -13
  103. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +71 -131
  104. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h +41 -24
  105. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +410 -375
  106. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +26 -27
  107. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc +15 -3
  108. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h +9 -7
  109. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc +18 -20
  110. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +27 -22
  111. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +28 -19
  112. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +26 -25
  113. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc +338 -0
  114. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.h +57 -0
  115. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric_internal.h +117 -0
  116. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc +1129 -0
  117. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h +94 -0
  118. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +174 -180
  119. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +478 -479
  120. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +491 -409
  121. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h +19 -9
  122. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +618 -642
  123. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +261 -234
  124. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +165 -143
  125. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.cc +128 -0
  126. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.h +71 -0
  127. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc +972 -0
  128. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +280 -248
  129. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +251 -187
  130. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_attributes.cc +42 -0
  131. data/src/core/ext/filters/client_channel/lb_policy/xds/{xds.h → xds_attributes.h} +19 -15
  132. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h +3 -3
  133. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +178 -256
  134. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +212 -216
  135. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +543 -584
  136. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc +819 -0
  137. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.h +67 -0
  138. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc +369 -0
  139. data/src/core/ext/filters/client_channel/local_subchannel_pool.cc +4 -0
  140. data/src/core/ext/filters/client_channel/local_subchannel_pool.h +22 -21
  141. data/src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc +34 -19
  142. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +579 -376
  143. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +50 -44
  144. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +31 -30
  145. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +89 -84
  146. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +300 -209
  147. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +82 -61
  148. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc +18 -18
  149. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +20 -19
  150. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc +2 -0
  151. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h +22 -22
  152. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +86 -224
  153. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +21 -34
  154. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +19 -5
  155. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +135 -63
  156. data/src/core/ext/filters/client_channel/resolver/polling_resolver.cc +269 -0
  157. data/src/core/ext/filters/client_channel/resolver/polling_resolver.h +121 -0
  158. data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +21 -27
  159. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +413 -303
  160. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h +6 -4
  161. data/src/core/ext/filters/client_channel/retry_filter.cc +184 -166
  162. data/src/core/ext/filters/client_channel/retry_filter.h +4 -3
  163. data/src/core/ext/filters/client_channel/retry_service_config.cc +197 -229
  164. data/src/core/ext/filters/client_channel/retry_service_config.h +29 -26
  165. data/src/core/ext/filters/client_channel/retry_throttle.cc +28 -37
  166. data/src/core/ext/filters/client_channel/retry_throttle.h +36 -29
  167. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +34 -17
  168. data/src/core/ext/filters/client_channel/subchannel.cc +336 -388
  169. data/src/core/ext/filters/client_channel/subchannel.h +112 -82
  170. data/src/core/ext/filters/client_channel/subchannel_interface_internal.h +38 -0
  171. data/src/core/ext/filters/client_channel/subchannel_pool_interface.cc +17 -77
  172. data/src/core/ext/filters/client_channel/subchannel_pool_interface.h +41 -47
  173. data/src/core/ext/filters/client_channel/subchannel_stream_client.cc +470 -0
  174. data/src/core/ext/filters/client_channel/subchannel_stream_client.h +222 -0
  175. data/src/core/ext/filters/deadline/deadline_filter.cc +94 -76
  176. data/src/core/ext/filters/deadline/deadline_filter.h +14 -12
  177. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +154 -372
  178. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +41 -9
  179. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc +118 -0
  180. data/src/core/ext/filters/fault_injection/{service_config_parser.h → fault_injection_service_config_parser.h} +34 -13
  181. data/src/core/ext/filters/http/client/http_client_filter.cc +119 -477
  182. data/src/core/ext/filters/http/client/http_client_filter.h +55 -25
  183. data/src/core/ext/filters/http/client_authority_filter.cc +48 -58
  184. data/src/core/ext/filters/http/client_authority_filter.h +32 -28
  185. data/src/core/ext/filters/http/http_filters_plugin.cc +46 -52
  186. data/src/core/ext/filters/http/message_compress/compression_filter.cc +307 -0
  187. data/src/core/ext/filters/http/message_compress/compression_filter.h +139 -0
  188. data/src/core/ext/filters/http/server/http_server_filter.cc +111 -385
  189. data/src/core/ext/filters/http/server/http_server_filter.h +58 -24
  190. data/src/core/ext/filters/message_size/message_size_filter.cc +117 -137
  191. data/src/core/ext/filters/message_size/message_size_filter.h +34 -17
  192. data/src/core/ext/filters/rbac/rbac_filter.cc +29 -16
  193. data/src/core/ext/filters/rbac/rbac_filter.h +11 -3
  194. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +736 -523
  195. data/src/core/ext/filters/rbac/rbac_service_config_parser.h +18 -7
  196. data/src/core/ext/filters/server_config_selector/server_config_selector.h +20 -8
  197. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc +90 -202
  198. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.h +4 -3
  199. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +219 -0
  200. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +66 -0
  201. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.cc +82 -0
  202. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +93 -0
  203. data/src/core/ext/transport/chttp2/alpn/alpn.cc +18 -18
  204. data/src/core/ext/transport/chttp2/alpn/alpn.h +24 -24
  205. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +186 -241
  206. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +38 -30
  207. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +209 -215
  208. data/src/core/ext/transport/chttp2/server/chttp2_server.h +26 -26
  209. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +24 -24
  210. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +35 -34
  211. data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +31 -30
  212. data/src/core/ext/transport/chttp2/transport/bin_encoder.h +29 -29
  213. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +893 -1079
  214. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +28 -23
  215. data/src/core/ext/transport/chttp2/transport/context_list.cc +23 -19
  216. data/src/core/ext/transport/chttp2/transport/context_list.h +32 -29
  217. data/src/core/ext/transport/chttp2/transport/decode_huff.cc +251 -0
  218. data/src/core/ext/transport/chttp2/transport/decode_huff.h +971 -0
  219. data/src/core/ext/transport/chttp2/transport/flow_control.cc +350 -300
  220. data/src/core/ext/transport/chttp2/transport/flow_control.h +248 -325
  221. data/src/core/ext/transport/chttp2/transport/frame.h +22 -26
  222. data/src/core/ext/transport/chttp2/transport/frame_data.cc +85 -234
  223. data/src/core/ext/transport/chttp2/transport/frame_data.h +38 -61
  224. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +41 -36
  225. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +24 -22
  226. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +31 -25
  227. data/src/core/ext/transport/chttp2/transport/frame_ping.h +25 -22
  228. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +35 -26
  229. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +24 -21
  230. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +46 -77
  231. data/src/core/ext/transport/chttp2/transport/frame_settings.h +27 -23
  232. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +34 -33
  233. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +24 -21
  234. data/src/core/ext/transport/chttp2/transport/hpack_constants.h +10 -4
  235. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +169 -220
  236. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +59 -61
  237. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +4 -1
  238. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +14 -5
  239. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +114 -542
  240. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +31 -24
  241. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +75 -67
  242. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +70 -48
  243. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +21 -19
  244. data/src/core/ext/transport/chttp2/transport/http2_settings.h +39 -38
  245. data/src/core/ext/transport/chttp2/transport/http_trace.cc +19 -0
  246. data/src/core/ext/transport/chttp2/transport/http_trace.h +24 -0
  247. data/src/core/ext/transport/chttp2/transport/huffsyms.cc +20 -20
  248. data/src/core/ext/transport/chttp2/transport/huffsyms.h +21 -21
  249. data/src/core/ext/transport/chttp2/transport/internal.h +250 -298
  250. data/src/core/ext/transport/chttp2/transport/parsing.cc +365 -132
  251. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +30 -30
  252. data/src/core/ext/transport/chttp2/transport/stream_map.cc +24 -24
  253. data/src/core/ext/transport/chttp2/transport/stream_map.h +34 -33
  254. data/src/core/ext/transport/chttp2/transport/varint.cc +19 -20
  255. data/src/core/ext/transport/chttp2/transport/varint.h +39 -34
  256. data/src/core/ext/transport/chttp2/transport/writing.cc +144 -106
  257. data/src/core/ext/transport/inproc/inproc_plugin.cc +17 -18
  258. data/src/core/ext/transport/inproc/inproc_transport.cc +227 -274
  259. data/src/core/ext/transport/inproc/inproc_transport.h +23 -21
  260. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c +27 -24
  261. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.h +173 -73
  262. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +39 -36
  263. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +210 -85
  264. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +29 -344
  265. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +189 -1489
  266. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.c +388 -0
  267. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.h +1953 -0
  268. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c +5 -5
  269. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.h +38 -17
  270. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c +9 -7
  271. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.h +56 -13
  272. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c +7 -7
  273. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.h +24 -2
  274. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.c +4 -4
  275. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.h +19 -6
  276. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.c +4 -4
  277. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.h +15 -2
  278. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.c +49 -46
  279. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.h +229 -82
  280. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.c +3 -3
  281. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.h +16 -4
  282. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +12 -12
  283. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +40 -8
  284. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +5 -5
  285. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +26 -4
  286. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +55 -55
  287. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +379 -140
  288. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +140 -126
  289. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +824 -301
  290. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +24 -18
  291. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +114 -29
  292. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +195 -191
  293. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +1042 -412
  294. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +3 -3
  295. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +16 -4
  296. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +44 -24
  297. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +171 -42
  298. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.c +72 -63
  299. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.h +517 -202
  300. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +61 -36
  301. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +333 -66
  302. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +5 -4
  303. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +20 -6
  304. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +93 -91
  305. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +615 -213
  306. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +76 -33
  307. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +417 -79
  308. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +2 -2
  309. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +20 -8
  310. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +5 -25
  311. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +16 -93
  312. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.c +5 -5
  313. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.h +38 -17
  314. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +70 -68
  315. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +447 -157
  316. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +98 -66
  317. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +545 -191
  318. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +4 -4
  319. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +33 -13
  320. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +108 -87
  321. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +502 -149
  322. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +2 -2
  323. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +9 -2
  324. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +6 -6
  325. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +42 -17
  326. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +24 -9
  327. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +110 -18
  328. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +8 -8
  329. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +64 -26
  330. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +4 -4
  331. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +20 -6
  332. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +18 -18
  333. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +118 -49
  334. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +39 -32
  335. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +242 -87
  336. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +32 -32
  337. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +226 -105
  338. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +2 -2
  339. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +13 -4
  340. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +86 -53
  341. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +475 -141
  342. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +56 -50
  343. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +379 -160
  344. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +16 -12
  345. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +77 -16
  346. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +9 -6
  347. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +50 -8
  348. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.c +5 -5
  349. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.h +26 -6
  350. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +33 -32
  351. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +253 -102
  352. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +34 -34
  353. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +229 -92
  354. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +74 -55
  355. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +494 -160
  356. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +38 -30
  357. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +232 -124
  358. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +458 -351
  359. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +2879 -947
  360. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +11 -11
  361. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +67 -22
  362. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.c +79 -54
  363. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.h +454 -133
  364. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +5 -4
  365. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +21 -2
  366. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.c +3 -3
  367. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.h +16 -4
  368. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +5 -5
  369. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +38 -14
  370. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c +5 -5
  371. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.h +33 -14
  372. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c +17 -16
  373. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.h +89 -38
  374. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.c +47 -0
  375. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.h +107 -0
  376. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c +2 -2
  377. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.h +13 -4
  378. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c +8 -8
  379. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.h +58 -21
  380. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.c +1 -0
  381. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.h +1 -0
  382. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.c +9 -9
  383. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.h +50 -16
  384. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +9 -8
  385. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +43 -10
  386. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +2 -2
  387. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +16 -8
  388. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +15 -15
  389. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +101 -38
  390. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +25 -25
  391. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +167 -71
  392. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.c +16 -8
  393. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +88 -16
  394. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +14 -11
  395. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +71 -17
  396. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.c +62 -0
  397. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +179 -0
  398. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +184 -144
  399. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +1091 -361
  400. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.c +46 -0
  401. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +98 -0
  402. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.c +54 -0
  403. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +188 -0
  404. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.c +111 -0
  405. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +444 -0
  406. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.c +56 -0
  407. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +192 -0
  408. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.c +46 -0
  409. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +98 -0
  410. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +56 -48
  411. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +327 -130
  412. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +13 -13
  413. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +88 -31
  414. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +83 -56
  415. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +472 -136
  416. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.c +5 -5
  417. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +35 -13
  418. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +1 -1
  419. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +6 -2
  420. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +171 -54
  421. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +917 -134
  422. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +8 -8
  423. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +59 -25
  424. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +33 -33
  425. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +205 -76
  426. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.c +4 -4
  427. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.h +23 -8
  428. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +8 -8
  429. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +62 -25
  430. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.c +47 -0
  431. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.h +113 -0
  432. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.c +8 -8
  433. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.h +36 -8
  434. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +7 -7
  435. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +55 -22
  436. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +3 -3
  437. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +26 -11
  438. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +3 -3
  439. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +30 -11
  440. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +2 -2
  441. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +20 -8
  442. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +8 -8
  443. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +58 -22
  444. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.c +43 -0
  445. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.h +114 -0
  446. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +9 -9
  447. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +82 -29
  448. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +5 -5
  449. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +49 -22
  450. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +12 -12
  451. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +99 -36
  452. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +16 -16
  453. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +118 -44
  454. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +20 -20
  455. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +120 -40
  456. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.c +7 -7
  457. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.h +46 -16
  458. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c +2 -2
  459. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.h +9 -2
  460. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +5 -5
  461. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +25 -8
  462. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +9 -9
  463. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +36 -6
  464. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.c +63 -0
  465. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.h +202 -0
  466. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.h +3 -1
  467. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +4 -4
  468. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +15 -2
  469. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.c +5 -5
  470. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.h +23 -6
  471. data/src/core/ext/upb-generated/google/api/annotations.upb.c +3 -3
  472. data/src/core/ext/upb-generated/google/api/annotations.upb.h +17 -2
  473. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +70 -66
  474. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +477 -185
  475. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +80 -74
  476. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +512 -182
  477. data/src/core/ext/upb-generated/google/api/http.upb.c +17 -17
  478. data/src/core/ext/upb-generated/google/api/http.upb.h +134 -49
  479. data/src/core/ext/upb-generated/google/api/httpbody.upb.c +4 -4
  480. data/src/core/ext/upb-generated/google/api/httpbody.upb.h +25 -9
  481. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +3 -3
  482. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +12 -2
  483. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +183 -181
  484. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +1332 -488
  485. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +3 -3
  486. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +16 -6
  487. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +1 -1
  488. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +6 -2
  489. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +15 -15
  490. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +126 -46
  491. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +3 -3
  492. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +16 -6
  493. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +18 -18
  494. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +81 -18
  495. data/src/core/ext/upb-generated/google/rpc/status.upb.c +4 -4
  496. data/src/core/ext/upb-generated/google/rpc/status.upb.h +25 -9
  497. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.c +15 -15
  498. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.h +89 -30
  499. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +12 -12
  500. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +55 -14
  501. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +69 -65
  502. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +424 -169
  503. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +8 -7
  504. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +32 -8
  505. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +4 -4
  506. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +18 -4
  507. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +31 -31
  508. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +204 -76
  509. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +11 -11
  510. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +63 -22
  511. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.c +175 -0
  512. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.h +792 -0
  513. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +22 -22
  514. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +115 -16
  515. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +6 -6
  516. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +29 -4
  517. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +3 -3
  518. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +10 -2
  519. data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +6 -6
  520. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +33 -8
  521. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +5 -5
  522. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +26 -4
  523. data/src/core/ext/upb-generated/validate/validate.upb.c +264 -253
  524. data/src/core/ext/upb-generated/validate/validate.upb.h +1974 -709
  525. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.c +22 -22
  526. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.h +115 -16
  527. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.c +6 -6
  528. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.h +29 -4
  529. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.c +3 -3
  530. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.h +10 -2
  531. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +18 -18
  532. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +94 -18
  533. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.c +5 -5
  534. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.h +26 -4
  535. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +2 -2
  536. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +9 -2
  537. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.c +47 -0
  538. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.h +107 -0
  539. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +8 -8
  540. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +50 -16
  541. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +5 -5
  542. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +33 -12
  543. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.c +3 -3
  544. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.h +16 -4
  545. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +5 -5
  546. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +27 -10
  547. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +10 -10
  548. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +83 -34
  549. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +5 -5
  550. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +22 -4
  551. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +14 -13
  552. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +84 -28
  553. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.c +46 -0
  554. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.h +113 -0
  555. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.c +46 -0
  556. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.h +98 -0
  557. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.c +62 -0
  558. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.h +174 -0
  559. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.c +36 -0
  560. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.h +74 -0
  561. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.c +65 -0
  562. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.h +191 -0
  563. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.c +43 -39
  564. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.h +309 -121
  565. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.c +127 -0
  566. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.h +474 -0
  567. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.c +4 -4
  568. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.h +31 -12
  569. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.c +9 -9
  570. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.h +82 -29
  571. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.c +67 -0
  572. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.h +214 -0
  573. data/src/core/ext/upb-generated/xds/type/v3/range.upb.c +64 -0
  574. data/src/core/ext/upb-generated/xds/type/v3/range.upb.h +208 -0
  575. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +3 -4
  576. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +16 -4
  577. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c +54 -53
  578. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +67 -274
  579. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h +0 -85
  580. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.c +277 -0
  581. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.h +125 -0
  582. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.c +14 -11
  583. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +107 -107
  584. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +199 -187
  585. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +50 -46
  586. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +149 -129
  587. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +0 -5
  588. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +16 -12
  589. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +95 -75
  590. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +5 -0
  591. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +187 -183
  592. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +129 -94
  593. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +10 -0
  594. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +18 -33
  595. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +0 -5
  596. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +168 -154
  597. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +5 -0
  598. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +190 -186
  599. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +7 -3
  600. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +5 -0
  601. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +16 -16
  602. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +71 -66
  603. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +164 -137
  604. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +5 -0
  605. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +141 -138
  606. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +16 -12
  607. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +39 -31
  608. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.c +140 -129
  609. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.h +5 -0
  610. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +82 -68
  611. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +2 -2
  612. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +828 -747
  613. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +20 -0
  614. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.c +150 -139
  615. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.h +5 -0
  616. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.c +16 -14
  617. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.c +48 -0
  618. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.h +35 -0
  619. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.c +16 -12
  620. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.c +20 -18
  621. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +46 -25
  622. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +53 -42
  623. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +60 -0
  624. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +40 -0
  625. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +483 -445
  626. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +5 -0
  627. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +50 -0
  628. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +35 -0
  629. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +21 -18
  630. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +211 -193
  631. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +5 -0
  632. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +156 -84
  633. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +35 -0
  634. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +113 -113
  635. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.c +48 -0
  636. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.h +35 -0
  637. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +29 -28
  638. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.c +40 -0
  639. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.h +40 -0
  640. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.c +69 -0
  641. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.h +40 -0
  642. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c +10 -9
  643. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +92 -90
  644. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +99 -0
  645. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +75 -0
  646. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.c +45 -0
  647. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.h +35 -0
  648. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.c +43 -0
  649. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.h +35 -0
  650. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.c +51 -0
  651. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.h +40 -0
  652. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.c +36 -0
  653. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.h +35 -0
  654. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.c +55 -0
  655. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.h +40 -0
  656. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.c +9 -9
  657. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.c +71 -0
  658. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.h +60 -0
  659. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.c +60 -0
  660. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.h +40 -0
  661. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.c +36 -0
  662. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.h +45 -0
  663. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +4 -7
  664. data/src/core/ext/xds/certificate_provider_store.cc +75 -3
  665. data/src/core/ext/xds/certificate_provider_store.h +30 -4
  666. data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +17 -10
  667. data/src/core/ext/xds/file_watcher_certificate_provider_factory.h +12 -4
  668. data/src/core/ext/xds/upb_utils.h +3 -25
  669. data/src/core/ext/xds/xds_api.cc +106 -192
  670. data/src/core/ext/xds/xds_api.h +41 -39
  671. data/src/core/ext/xds/xds_bootstrap.cc +5 -537
  672. data/src/core/ext/xds/xds_bootstrap.h +42 -95
  673. data/src/core/ext/xds/xds_bootstrap_grpc.cc +362 -0
  674. data/src/core/ext/xds/xds_bootstrap_grpc.h +184 -0
  675. data/src/core/ext/xds/xds_certificate_provider.cc +36 -25
  676. data/src/core/ext/xds/xds_certificate_provider.h +36 -4
  677. data/src/core/ext/xds/xds_channel_args.h +3 -3
  678. data/src/core/ext/xds/xds_channel_stack_modifier.cc +17 -7
  679. data/src/core/ext/xds/xds_channel_stack_modifier.h +16 -4
  680. data/src/core/ext/xds/xds_client.cc +885 -1360
  681. data/src/core/ext/xds/xds_client.h +69 -65
  682. data/src/core/ext/xds/xds_client_grpc.cc +235 -0
  683. data/src/core/ext/xds/xds_client_grpc.h +79 -0
  684. data/src/core/ext/xds/xds_client_stats.cc +24 -25
  685. data/src/core/ext/xds/xds_client_stats.h +26 -24
  686. data/src/core/ext/xds/xds_cluster.cc +505 -247
  687. data/src/core/ext/xds/xds_cluster.h +69 -40
  688. data/src/core/ext/xds/xds_cluster_specifier_plugin.cc +132 -0
  689. data/src/core/ext/xds/xds_cluster_specifier_plugin.h +97 -0
  690. data/src/core/ext/xds/xds_common_types.cc +238 -123
  691. data/src/core/ext/xds/xds_common_types.h +29 -16
  692. data/src/core/ext/xds/xds_endpoint.cc +266 -156
  693. data/src/core/ext/xds/xds_endpoint.h +19 -15
  694. data/src/core/ext/xds/xds_health_status.cc +80 -0
  695. data/src/core/ext/xds/xds_health_status.h +109 -0
  696. data/src/core/ext/xds/xds_http_fault_filter.cc +68 -59
  697. data/src/core/ext/xds/xds_http_fault_filter.h +19 -25
  698. data/src/core/ext/xds/xds_http_filters.cc +70 -71
  699. data/src/core/ext/xds/xds_http_filters.h +73 -25
  700. data/src/core/ext/xds/xds_http_rbac_filter.cc +168 -225
  701. data/src/core/ext/xds/xds_http_rbac_filter.h +22 -18
  702. data/src/core/ext/xds/xds_http_stateful_session_filter.cc +218 -0
  703. data/src/core/ext/xds/xds_http_stateful_session_filter.h +58 -0
  704. data/src/core/ext/xds/xds_lb_policy_registry.cc +334 -0
  705. data/src/core/ext/xds/xds_lb_policy_registry.h +71 -0
  706. data/src/core/ext/xds/xds_listener.cc +573 -481
  707. data/src/core/ext/xds/xds_listener.h +57 -51
  708. data/src/core/ext/xds/xds_resource_type.h +28 -22
  709. data/src/core/ext/xds/xds_resource_type_impl.h +18 -17
  710. data/src/core/ext/xds/xds_route_config.cc +638 -479
  711. data/src/core/ext/xds/xds_route_config.h +79 -42
  712. data/src/core/ext/xds/xds_routing.cc +21 -7
  713. data/src/core/ext/xds/xds_routing.h +17 -12
  714. data/src/core/ext/xds/xds_server_config_fetcher.cc +244 -200
  715. data/src/core/ext/xds/xds_transport.h +86 -0
  716. data/src/core/ext/xds/xds_transport_grpc.cc +356 -0
  717. data/src/core/ext/xds/xds_transport_grpc.h +135 -0
  718. data/src/core/lib/address_utils/parse_address.cc +52 -52
  719. data/src/core/lib/address_utils/parse_address.h +46 -42
  720. data/src/core/lib/address_utils/sockaddr_utils.cc +90 -54
  721. data/src/core/lib/address_utils/sockaddr_utils.h +45 -40
  722. data/src/core/lib/avl/avl.h +100 -13
  723. data/src/core/lib/backoff/backoff.cc +19 -21
  724. data/src/core/lib/backoff/backoff.h +21 -21
  725. data/src/core/lib/channel/call_finalization.h +6 -4
  726. data/src/core/lib/channel/call_tracer.h +27 -9
  727. data/src/core/lib/channel/channel_args.cc +268 -101
  728. data/src/core/lib/channel/channel_args.h +461 -56
  729. data/src/core/lib/channel/channel_args_preconditioning.cc +6 -11
  730. data/src/core/lib/channel/channel_args_preconditioning.h +7 -7
  731. data/src/core/lib/channel/channel_fwd.h +26 -0
  732. data/src/core/lib/channel/channel_stack.cc +92 -52
  733. data/src/core/lib/channel/channel_stack.h +186 -140
  734. data/src/core/lib/channel/channel_stack_builder.cc +26 -104
  735. data/src/core/lib/channel/channel_stack_builder.h +45 -31
  736. data/src/core/lib/channel/channel_stack_builder_impl.cc +126 -0
  737. data/src/core/lib/channel/channel_stack_builder_impl.h +48 -0
  738. data/src/core/lib/channel/channel_trace.cc +29 -36
  739. data/src/core/lib/channel/channel_trace.h +27 -24
  740. data/src/core/lib/channel/channelz.cc +50 -65
  741. data/src/core/lib/channel/channelz.h +50 -33
  742. data/src/core/lib/channel/channelz_registry.cc +28 -36
  743. data/src/core/lib/channel/channelz_registry.h +31 -30
  744. data/src/core/lib/channel/connected_channel.cc +1267 -78
  745. data/src/core/lib/channel/connected_channel.h +22 -23
  746. data/src/core/lib/channel/context.h +25 -21
  747. data/src/core/lib/channel/promise_based_filter.cc +2155 -303
  748. data/src/core/lib/channel/promise_based_filter.h +636 -122
  749. data/src/core/lib/channel/status_util.cc +64 -17
  750. data/src/core/lib/channel/status_util.h +38 -24
  751. data/src/core/lib/compression/compression.cc +24 -19
  752. data/src/core/lib/compression/compression_internal.cc +89 -70
  753. data/src/core/lib/compression/compression_internal.h +28 -27
  754. data/src/core/lib/compression/message_compress.cc +28 -26
  755. data/src/core/lib/compression/message_compress.h +28 -29
  756. data/src/core/lib/config/core_configuration.cc +8 -1
  757. data/src/core/lib/config/core_configuration.h +86 -39
  758. data/src/core/lib/debug/event_log.cc +88 -0
  759. data/src/core/lib/debug/event_log.h +81 -0
  760. data/src/core/lib/debug/histogram_view.cc +69 -0
  761. data/src/core/lib/debug/histogram_view.h +37 -0
  762. data/src/core/lib/debug/stats.cc +48 -152
  763. data/src/core/lib/debug/stats.h +50 -57
  764. data/src/core/lib/debug/stats_data.cc +302 -649
  765. data/src/core/lib/debug/stats_data.h +293 -548
  766. data/src/core/lib/debug/trace.cc +18 -20
  767. data/src/core/lib/debug/trace.h +27 -48
  768. data/src/core/lib/event_engine/channel_args_endpoint_config.cc +16 -17
  769. data/src/core/lib/event_engine/channel_args_endpoint_config.h +16 -9
  770. data/src/core/lib/event_engine/common_closures.h +71 -0
  771. data/src/core/lib/event_engine/default_event_engine.cc +99 -0
  772. data/src/core/lib/event_engine/default_event_engine.h +73 -0
  773. data/src/core/lib/event_engine/default_event_engine_factory.cc +24 -3
  774. data/src/core/lib/event_engine/{event_engine_factory.h → default_event_engine_factory.h} +6 -9
  775. data/src/core/lib/event_engine/event_engine.cc +3 -30
  776. data/src/core/lib/event_engine/executor/executor.h +38 -0
  777. data/src/core/lib/event_engine/forkable.cc +106 -0
  778. data/src/core/lib/event_engine/forkable.h +61 -0
  779. data/src/core/lib/event_engine/handle_containers.h +74 -0
  780. data/src/core/lib/event_engine/memory_allocator.cc +11 -3
  781. data/src/core/lib/event_engine/poller.h +62 -0
  782. data/src/core/lib/event_engine/posix.h +158 -0
  783. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +642 -0
  784. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h +139 -0
  785. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +899 -0
  786. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.h +97 -0
  787. data/src/core/lib/event_engine/posix_engine/event_poller.h +111 -0
  788. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.cc +74 -0
  789. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.h +33 -0
  790. data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +77 -0
  791. data/src/core/lib/event_engine/posix_engine/internal_errqueue.h +179 -0
  792. data/src/core/lib/event_engine/posix_engine/lockfree_event.cc +265 -0
  793. data/src/core/lib/event_engine/posix_engine/lockfree_event.h +73 -0
  794. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +1305 -0
  795. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +717 -0
  796. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +640 -0
  797. data/src/core/lib/event_engine/posix_engine/posix_engine.h +259 -0
  798. data/src/core/lib/event_engine/posix_engine/posix_engine_closure.h +80 -0
  799. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +289 -0
  800. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +279 -0
  801. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +379 -0
  802. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.h +91 -0
  803. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +853 -0
  804. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +316 -0
  805. data/src/core/lib/event_engine/posix_engine/timer.cc +311 -0
  806. data/src/core/lib/event_engine/posix_engine/timer.h +194 -0
  807. data/src/core/lib/event_engine/posix_engine/timer_heap.cc +107 -0
  808. data/src/core/lib/event_engine/posix_engine/timer_heap.h +56 -0
  809. data/src/core/lib/event_engine/posix_engine/timer_manager.cc +173 -0
  810. data/src/core/lib/event_engine/posix_engine/timer_manager.h +114 -0
  811. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +332 -0
  812. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.h +185 -0
  813. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.cc +127 -0
  814. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.h +45 -0
  815. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.cc +150 -0
  816. data/src/core/lib/{iomgr/event_engine/promise.h → event_engine/posix_engine/wakeup_fd_pipe.h} +19 -25
  817. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix.h +76 -0
  818. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.cc +67 -0
  819. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.h +37 -0
  820. data/src/core/lib/event_engine/resolved_address.cc +23 -2
  821. data/src/core/lib/{iomgr/event_engine → event_engine}/resolved_address_internal.h +5 -8
  822. data/src/core/lib/event_engine/shim.cc +56 -0
  823. data/src/core/lib/event_engine/shim.h +33 -0
  824. data/src/core/lib/event_engine/slice.cc +103 -0
  825. data/src/core/lib/event_engine/slice_buffer.cc +50 -0
  826. data/src/core/lib/event_engine/tcp_socket_utils.cc +389 -0
  827. data/src/core/lib/event_engine/tcp_socket_utils.h +90 -0
  828. data/src/core/lib/event_engine/thread_local.cc +29 -0
  829. data/src/core/lib/event_engine/thread_local.h +32 -0
  830. data/src/core/lib/event_engine/thread_pool.cc +253 -0
  831. data/src/core/lib/event_engine/thread_pool.h +141 -0
  832. data/src/core/lib/event_engine/time_util.cc +30 -0
  833. data/src/core/lib/event_engine/time_util.h +32 -0
  834. data/src/core/{ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_event_engine.cc → lib/event_engine/trace.cc} +9 -13
  835. data/src/core/lib/event_engine/trace.h +43 -0
  836. data/src/core/lib/event_engine/utils.cc +44 -0
  837. data/src/core/lib/event_engine/utils.h +44 -0
  838. data/src/core/lib/event_engine/windows/iocp.cc +140 -0
  839. data/src/core/lib/event_engine/windows/iocp.h +69 -0
  840. data/src/core/lib/event_engine/windows/win_socket.cc +219 -0
  841. data/src/core/lib/event_engine/windows/win_socket.h +129 -0
  842. data/src/core/lib/event_engine/windows/windows_endpoint.cc +331 -0
  843. data/src/core/lib/event_engine/windows/windows_endpoint.h +103 -0
  844. data/src/core/lib/event_engine/windows/windows_engine.cc +388 -0
  845. data/src/core/lib/event_engine/windows/windows_engine.h +163 -0
  846. data/src/core/lib/experiments/config.cc +161 -0
  847. data/src/core/lib/experiments/config.h +53 -0
  848. data/src/core/lib/experiments/experiments.cc +81 -0
  849. data/src/core/lib/experiments/experiments.h +117 -0
  850. data/src/core/lib/gpr/alloc.cc +19 -25
  851. data/src/core/lib/gpr/alloc.h +20 -20
  852. data/src/core/lib/gpr/atm.cc +17 -17
  853. data/src/core/lib/gpr/cpu_iphone.cc +24 -24
  854. data/src/core/lib/gpr/cpu_linux.cc +28 -23
  855. data/src/core/lib/gpr/cpu_posix.cc +23 -22
  856. data/src/core/lib/gpr/cpu_windows.cc +20 -18
  857. data/src/core/lib/gpr/log.cc +30 -17
  858. data/src/core/lib/gpr/log_android.cc +22 -20
  859. data/src/core/lib/gpr/log_linux.cc +24 -24
  860. data/src/core/lib/gpr/log_posix.cc +20 -19
  861. data/src/core/lib/gpr/log_windows.cc +25 -25
  862. data/src/core/lib/gpr/spinlock.h +20 -20
  863. data/src/core/lib/gpr/string.cc +25 -24
  864. data/src/core/lib/gpr/string.h +61 -61
  865. data/src/core/lib/gpr/string_posix.cc +24 -24
  866. data/src/core/lib/gpr/string_util_windows.cc +25 -52
  867. data/src/core/lib/gpr/string_windows.cc +24 -24
  868. data/src/core/lib/gpr/sync.cc +25 -25
  869. data/src/core/lib/gpr/sync_abseil.cc +36 -40
  870. data/src/core/lib/gpr/sync_posix.cc +22 -34
  871. data/src/core/lib/gpr/sync_windows.cc +29 -27
  872. data/src/core/lib/gpr/time.cc +34 -30
  873. data/src/core/lib/gpr/time_posix.cc +41 -45
  874. data/src/core/lib/gpr/time_precise.cc +22 -22
  875. data/src/core/lib/gpr/time_precise.h +21 -22
  876. data/src/core/lib/gpr/time_windows.cc +35 -29
  877. data/src/core/lib/gpr/tmpfile.h +24 -24
  878. data/src/core/lib/gpr/tmpfile_msys.cc +21 -20
  879. data/src/core/lib/gpr/tmpfile_posix.cc +22 -20
  880. data/src/core/lib/gpr/tmpfile_windows.cc +28 -29
  881. data/src/core/lib/gpr/useful.h +83 -30
  882. data/src/core/lib/gpr/wrap_memcpy.cc +23 -23
  883. data/src/core/lib/gprpp/atomic_utils.h +20 -20
  884. data/src/core/lib/gprpp/bitset.h +47 -17
  885. data/src/core/lib/gprpp/chunked_vector.h +7 -3
  886. data/src/core/lib/gprpp/construct_destruct.h +4 -3
  887. data/src/core/lib/gprpp/cpp_impl_of.h +7 -3
  888. data/src/core/{ext/xds/xds_resource_type.cc → lib/gprpp/crash.cc} +12 -12
  889. data/src/core/lib/gprpp/crash.h +34 -0
  890. data/src/core/lib/gprpp/debug_location.h +60 -31
  891. data/src/core/lib/gprpp/dual_ref_counted.h +4 -7
  892. data/src/core/lib/gprpp/env.h +53 -0
  893. data/src/core/lib/gprpp/env_linux.cc +80 -0
  894. data/src/core/{ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_event_engine.cc → lib/gprpp/env_posix.cc} +25 -9
  895. data/src/core/lib/gprpp/env_windows.cc +56 -0
  896. data/src/core/lib/gprpp/examine_stack.cc +17 -17
  897. data/src/core/lib/gprpp/examine_stack.h +21 -22
  898. data/src/core/lib/gprpp/fork.cc +58 -53
  899. data/src/core/lib/gprpp/fork.h +29 -35
  900. data/src/core/lib/gprpp/global_config.h +22 -24
  901. data/src/core/lib/gprpp/global_config_custom.h +20 -20
  902. data/src/core/lib/gprpp/global_config_env.cc +28 -25
  903. data/src/core/lib/gprpp/global_config_env.h +29 -27
  904. data/src/core/lib/gprpp/global_config_generic.h +21 -25
  905. data/src/core/lib/gprpp/host_port.cc +30 -26
  906. data/src/core/lib/gprpp/host_port.h +32 -31
  907. data/src/core/lib/gprpp/load_file.cc +75 -0
  908. data/src/core/lib/gprpp/load_file.h +33 -0
  909. data/src/core/lib/gprpp/manual_constructor.h +21 -89
  910. data/src/core/lib/gprpp/match.h +75 -0
  911. data/src/core/lib/gprpp/memory.h +22 -26
  912. data/src/core/lib/gprpp/mpscq.cc +17 -17
  913. data/src/core/lib/gprpp/mpscq.h +21 -21
  914. data/src/core/lib/gprpp/no_destruct.h +95 -0
  915. data/src/core/lib/gprpp/notification.h +67 -0
  916. data/src/core/lib/gprpp/orphanable.h +22 -25
  917. data/src/core/lib/gprpp/overload.h +59 -0
  918. data/src/core/lib/gprpp/packed_table.h +40 -0
  919. data/src/core/lib/gprpp/per_cpu.h +46 -0
  920. data/src/core/lib/gprpp/ref_counted.h +24 -24
  921. data/src/core/lib/gprpp/ref_counted_ptr.h +42 -55
  922. data/src/core/lib/gprpp/single_set_ptr.h +87 -0
  923. data/src/core/lib/gprpp/sorted_pack.h +98 -0
  924. data/src/core/lib/gprpp/stat.h +3 -5
  925. data/src/core/lib/gprpp/stat_posix.cc +10 -4
  926. data/src/core/lib/gprpp/stat_windows.cc +4 -2
  927. data/src/core/lib/gprpp/status_helper.cc +56 -20
  928. data/src/core/lib/gprpp/status_helper.h +13 -5
  929. data/src/core/lib/gprpp/strerror.cc +43 -0
  930. data/src/core/lib/gprpp/strerror.h +29 -0
  931. data/src/core/lib/gprpp/sync.h +26 -24
  932. data/src/core/lib/gprpp/table.h +22 -4
  933. data/src/core/lib/gprpp/tchar.cc +49 -0
  934. data/src/core/lib/gprpp/tchar.h +33 -0
  935. data/src/core/lib/gprpp/thd.h +25 -28
  936. data/src/core/lib/gprpp/thd_posix.cc +33 -32
  937. data/src/core/lib/gprpp/thd_windows.cc +28 -26
  938. data/src/core/lib/gprpp/time.cc +64 -9
  939. data/src/core/lib/gprpp/time.h +79 -5
  940. data/src/core/lib/gprpp/time_averaged_stats.cc +60 -0
  941. data/src/core/lib/gprpp/time_averaged_stats.h +79 -0
  942. data/src/core/lib/gprpp/time_util.cc +4 -0
  943. data/src/core/lib/gprpp/time_util.h +3 -3
  944. data/src/core/lib/gprpp/unique_type_name.h +104 -0
  945. data/src/core/lib/gprpp/validation_errors.cc +61 -0
  946. data/src/core/lib/gprpp/validation_errors.h +127 -0
  947. data/src/core/lib/{iomgr → gprpp}/work_serializer.cc +34 -18
  948. data/src/core/lib/{iomgr → gprpp}/work_serializer.h +21 -28
  949. data/src/core/lib/handshaker/proxy_mapper.h +53 -0
  950. data/src/core/lib/handshaker/proxy_mapper_registry.cc +71 -0
  951. data/src/core/lib/handshaker/proxy_mapper_registry.h +75 -0
  952. data/src/core/lib/http/format_request.cc +54 -24
  953. data/src/core/lib/http/format_request.h +23 -21
  954. data/src/core/lib/http/httpcli.cc +139 -141
  955. data/src/core/lib/http/httpcli.h +86 -38
  956. data/src/core/lib/http/httpcli_security_connector.cc +53 -45
  957. data/src/core/lib/http/httpcli_ssl_credentials.h +6 -4
  958. data/src/core/lib/http/parser.cc +144 -85
  959. data/src/core/lib/http/parser.h +51 -35
  960. data/src/core/lib/iomgr/block_annotate.h +23 -23
  961. data/src/core/lib/iomgr/buffer_list.cc +156 -136
  962. data/src/core/lib/iomgr/buffer_list.h +123 -101
  963. data/src/core/lib/iomgr/call_combiner.cc +32 -64
  964. data/src/core/lib/iomgr/call_combiner.h +24 -25
  965. data/src/core/lib/iomgr/cfstream_handle.cc +33 -36
  966. data/src/core/lib/iomgr/cfstream_handle.h +25 -25
  967. data/src/core/lib/iomgr/{event_engine/pollset.h → closure.cc} +9 -7
  968. data/src/core/lib/iomgr/closure.h +95 -58
  969. data/src/core/lib/iomgr/combiner.cc +20 -39
  970. data/src/core/lib/iomgr/combiner.h +20 -20
  971. data/src/core/lib/iomgr/dualstack_socket_posix.cc +21 -21
  972. data/src/core/lib/iomgr/dynamic_annotations.h +22 -22
  973. data/src/core/lib/iomgr/endpoint.cc +21 -21
  974. data/src/core/lib/iomgr/endpoint.h +53 -51
  975. data/src/core/lib/iomgr/endpoint_cfstream.cc +51 -47
  976. data/src/core/lib/iomgr/endpoint_cfstream.h +32 -32
  977. data/src/core/lib/iomgr/endpoint_pair.h +20 -20
  978. data/src/core/lib/iomgr/endpoint_pair_posix.cc +34 -27
  979. data/src/core/lib/iomgr/endpoint_pair_windows.cc +30 -21
  980. data/src/core/lib/iomgr/error.cc +51 -834
  981. data/src/core/lib/iomgr/error.h +45 -317
  982. data/src/core/lib/iomgr/error_cfstream.cc +18 -23
  983. data/src/core/lib/iomgr/error_cfstream.h +21 -21
  984. data/src/core/lib/iomgr/ev_apple.cc +21 -21
  985. data/src/core/lib/iomgr/ev_apple.h +21 -21
  986. data/src/core/lib/iomgr/ev_epoll1_linux.cc +263 -248
  987. data/src/core/lib/iomgr/ev_epoll1_linux.h +21 -21
  988. data/src/core/lib/iomgr/ev_poll_posix.cc +296 -271
  989. data/src/core/lib/iomgr/ev_poll_posix.h +22 -22
  990. data/src/core/lib/iomgr/ev_posix.cc +88 -122
  991. data/src/core/lib/iomgr/ev_posix.h +93 -87
  992. data/src/core/lib/iomgr/ev_windows.cc +18 -18
  993. data/src/core/lib/iomgr/{event_engine → event_engine_shims}/closure.cc +15 -30
  994. data/src/core/lib/iomgr/{event_engine → event_engine_shims}/closure.h +10 -13
  995. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +430 -0
  996. data/src/core/lib/iomgr/event_engine_shims/endpoint.h +43 -0
  997. data/src/core/lib/iomgr/event_engine_shims/tcp_client.cc +91 -0
  998. data/src/core/lib/iomgr/event_engine_shims/tcp_client.h +44 -0
  999. data/src/core/lib/iomgr/exec_ctx.cc +34 -56
  1000. data/src/core/lib/iomgr/exec_ctx.h +152 -177
  1001. data/src/core/lib/iomgr/executor.cc +21 -31
  1002. data/src/core/lib/iomgr/executor.h +27 -30
  1003. data/src/core/lib/iomgr/fork_posix.cc +31 -28
  1004. data/src/core/lib/iomgr/fork_windows.cc +21 -21
  1005. data/src/core/lib/iomgr/gethostname.h +20 -20
  1006. data/src/core/lib/iomgr/gethostname_fallback.cc +17 -17
  1007. data/src/core/lib/iomgr/gethostname_host_name_max.cc +17 -17
  1008. data/src/core/lib/iomgr/gethostname_sysconf.cc +17 -17
  1009. data/src/core/lib/iomgr/grpc_if_nametoindex.h +22 -22
  1010. data/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc +20 -19
  1011. data/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc +20 -19
  1012. data/src/core/lib/iomgr/internal_errqueue.cc +41 -48
  1013. data/src/core/lib/iomgr/internal_errqueue.h +84 -89
  1014. data/src/core/lib/iomgr/iocp_windows.cc +23 -23
  1015. data/src/core/lib/iomgr/iocp_windows.h +21 -21
  1016. data/src/core/lib/iomgr/iomgr.cc +25 -20
  1017. data/src/core/lib/iomgr/iomgr.h +35 -35
  1018. data/src/core/lib/iomgr/iomgr_fwd.h +26 -0
  1019. data/src/core/lib/iomgr/iomgr_internal.cc +17 -17
  1020. data/src/core/lib/iomgr/iomgr_internal.h +28 -28
  1021. data/src/core/lib/iomgr/iomgr_posix.cc +21 -20
  1022. data/src/core/lib/iomgr/iomgr_posix_cfstream.cc +21 -19
  1023. data/src/core/lib/iomgr/iomgr_windows.cc +24 -22
  1024. data/src/core/lib/iomgr/load_file.cc +24 -27
  1025. data/src/core/lib/iomgr/load_file.h +22 -22
  1026. data/src/core/lib/iomgr/lockfree_event.cc +114 -131
  1027. data/src/core/lib/iomgr/lockfree_event.h +23 -23
  1028. data/src/core/lib/iomgr/nameser.h +86 -86
  1029. data/src/core/lib/iomgr/polling_entity.cc +25 -21
  1030. data/src/core/lib/iomgr/polling_entity.h +29 -29
  1031. data/src/core/lib/iomgr/pollset.cc +17 -17
  1032. data/src/core/lib/iomgr/pollset.h +55 -55
  1033. data/src/core/lib/iomgr/pollset_set.cc +17 -17
  1034. data/src/core/lib/iomgr/pollset_set.h +26 -28
  1035. data/src/core/lib/iomgr/pollset_set_windows.cc +18 -18
  1036. data/src/core/lib/iomgr/pollset_set_windows.h +20 -20
  1037. data/src/core/lib/iomgr/pollset_windows.cc +32 -31
  1038. data/src/core/lib/iomgr/pollset_windows.h +24 -24
  1039. data/src/core/lib/iomgr/port.h +59 -39
  1040. data/src/core/lib/iomgr/python_util.h +24 -24
  1041. data/src/core/lib/iomgr/resolve_address.cc +34 -20
  1042. data/src/core/lib/iomgr/resolve_address.h +73 -43
  1043. data/src/core/lib/iomgr/resolve_address_impl.h +7 -7
  1044. data/src/core/lib/iomgr/resolve_address_posix.cc +81 -62
  1045. data/src/core/lib/iomgr/resolve_address_posix.h +26 -10
  1046. data/src/core/lib/iomgr/resolve_address_windows.cc +64 -38
  1047. data/src/core/lib/iomgr/resolve_address_windows.h +26 -10
  1048. data/src/core/lib/iomgr/resolved_address.h +3 -3
  1049. data/src/core/lib/iomgr/sockaddr.h +25 -26
  1050. data/src/core/lib/iomgr/sockaddr_posix.h +23 -21
  1051. data/src/core/lib/iomgr/sockaddr_utils_posix.cc +20 -18
  1052. data/src/core/lib/iomgr/sockaddr_windows.h +23 -21
  1053. data/src/core/lib/iomgr/socket_factory_posix.cc +18 -18
  1054. data/src/core/lib/iomgr/socket_factory_posix.h +32 -32
  1055. data/src/core/lib/iomgr/socket_mutator.cc +19 -18
  1056. data/src/core/lib/iomgr/socket_mutator.h +39 -39
  1057. data/src/core/lib/iomgr/socket_utils.h +27 -27
  1058. data/src/core/lib/iomgr/socket_utils_common_posix.cc +82 -101
  1059. data/src/core/lib/iomgr/socket_utils_linux.cc +18 -17
  1060. data/src/core/lib/iomgr/socket_utils_posix.cc +103 -19
  1061. data/src/core/lib/iomgr/socket_utils_posix.h +176 -84
  1062. data/src/core/lib/iomgr/socket_utils_windows.cc +20 -19
  1063. data/src/core/lib/iomgr/socket_windows.cc +37 -36
  1064. data/src/core/lib/iomgr/socket_windows.h +59 -61
  1065. data/src/core/lib/iomgr/systemd_utils.cc +116 -0
  1066. data/src/core/lib/iomgr/systemd_utils.h +33 -0
  1067. data/src/core/lib/iomgr/tcp_client.cc +28 -24
  1068. data/src/core/lib/iomgr/tcp_client.h +49 -38
  1069. data/src/core/lib/iomgr/tcp_client_cfstream.cc +46 -35
  1070. data/src/core/lib/iomgr/tcp_client_posix.cc +244 -106
  1071. data/src/core/lib/iomgr/tcp_client_posix.h +55 -52
  1072. data/src/core/lib/iomgr/tcp_client_windows.cc +73 -53
  1073. data/src/core/lib/iomgr/tcp_posix.cc +562 -361
  1074. data/src/core/lib/iomgr/tcp_posix.h +32 -30
  1075. data/src/core/lib/iomgr/tcp_server.cc +33 -24
  1076. data/src/core/lib/iomgr/tcp_server.h +78 -69
  1077. data/src/core/lib/iomgr/tcp_server_posix.cc +402 -145
  1078. data/src/core/lib/iomgr/tcp_server_utils_posix.h +68 -55
  1079. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +120 -82
  1080. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +46 -43
  1081. data/src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc +19 -19
  1082. data/src/core/lib/iomgr/tcp_server_windows.cc +116 -118
  1083. data/src/core/lib/iomgr/tcp_windows.cc +116 -98
  1084. data/src/core/lib/iomgr/tcp_windows.h +34 -35
  1085. data/src/core/lib/iomgr/timer.cc +17 -17
  1086. data/src/core/lib/iomgr/timer.h +68 -68
  1087. data/src/core/lib/iomgr/timer_generic.cc +125 -134
  1088. data/src/core/lib/iomgr/timer_generic.h +21 -21
  1089. data/src/core/lib/iomgr/timer_heap.cc +25 -25
  1090. data/src/core/lib/iomgr/timer_heap.h +22 -22
  1091. data/src/core/lib/iomgr/timer_manager.cc +31 -31
  1092. data/src/core/lib/iomgr/timer_manager.h +27 -27
  1093. data/src/core/lib/iomgr/unix_sockets_posix.cc +20 -21
  1094. data/src/core/lib/iomgr/unix_sockets_posix.h +21 -21
  1095. data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +19 -17
  1096. data/src/core/lib/iomgr/wakeup_fd_eventfd.cc +23 -23
  1097. data/src/core/lib/iomgr/wakeup_fd_nospecial.cc +23 -23
  1098. data/src/core/lib/iomgr/wakeup_fd_pipe.cc +29 -26
  1099. data/src/core/lib/iomgr/wakeup_fd_pipe.h +20 -20
  1100. data/src/core/lib/iomgr/wakeup_fd_posix.cc +33 -30
  1101. data/src/core/lib/iomgr/wakeup_fd_posix.h +52 -54
  1102. data/src/core/lib/json/json.h +23 -27
  1103. data/src/core/{ext/filters/http/message_compress/message_decompress_filter.h → lib/json/json_args.h} +13 -10
  1104. data/src/core/lib/json/json_channel_args.h +42 -0
  1105. data/src/core/lib/json/json_object_loader.cc +217 -0
  1106. data/src/core/lib/json/json_object_loader.h +634 -0
  1107. data/src/core/lib/json/json_reader.cc +123 -90
  1108. data/src/core/lib/json/json_util.cc +14 -34
  1109. data/src/core/lib/json/json_util.h +19 -10
  1110. data/src/core/lib/json/json_writer.cc +62 -57
  1111. data/src/core/{ext/filters/client_channel → lib/load_balancing}/lb_policy.cc +30 -60
  1112. data/src/core/{ext/filters/client_channel → lib/load_balancing}/lb_policy.h +47 -62
  1113. data/src/core/lib/load_balancing/lb_policy_factory.h +49 -0
  1114. data/src/core/lib/load_balancing/lb_policy_registry.cc +142 -0
  1115. data/src/core/lib/load_balancing/lb_policy_registry.h +82 -0
  1116. data/src/core/{ext/filters/client_channel → lib/load_balancing}/subchannel_interface.h +57 -52
  1117. data/src/core/lib/matchers/matchers.cc +12 -7
  1118. data/src/core/lib/matchers/matchers.h +5 -3
  1119. data/src/core/lib/promise/activity.cc +23 -8
  1120. data/src/core/lib/promise/activity.h +116 -58
  1121. data/src/core/lib/promise/arena_promise.h +115 -72
  1122. data/src/core/lib/promise/context.h +18 -11
  1123. data/src/core/lib/promise/detail/basic_join.h +197 -0
  1124. data/src/core/lib/promise/detail/basic_seq.h +28 -33
  1125. data/src/core/lib/promise/detail/promise_factory.h +61 -14
  1126. data/src/core/lib/promise/detail/promise_like.h +3 -3
  1127. data/src/core/lib/promise/detail/status.h +33 -4
  1128. data/src/core/lib/promise/detail/switch.h +21 -21
  1129. data/src/core/lib/promise/exec_ctx_wakeup_scheduler.h +23 -15
  1130. data/src/core/lib/promise/if.h +195 -0
  1131. data/src/core/lib/promise/interceptor_list.h +308 -0
  1132. data/src/core/lib/promise/intra_activity_waiter.h +55 -0
  1133. data/src/core/lib/promise/latch.h +191 -0
  1134. data/src/core/lib/promise/loop.h +13 -9
  1135. data/src/core/lib/promise/map.h +4 -6
  1136. data/src/core/lib/promise/pipe.h +608 -0
  1137. data/src/core/lib/promise/poll.h +129 -11
  1138. data/src/core/lib/promise/promise.h +5 -5
  1139. data/src/core/lib/promise/race.h +6 -10
  1140. data/src/core/lib/promise/seq.h +32 -14
  1141. data/src/core/lib/promise/sleep.cc +58 -42
  1142. data/src/core/lib/promise/sleep.h +44 -26
  1143. data/src/core/lib/promise/trace.cc +20 -0
  1144. data/src/core/{ext/filters/max_age/max_age_filter.h → lib/promise/trace.h} +6 -8
  1145. data/src/core/lib/promise/try_join.h +82 -0
  1146. data/src/core/lib/promise/try_seq.h +41 -23
  1147. data/src/core/lib/resolver/resolver.cc +17 -59
  1148. data/src/core/lib/resolver/resolver.h +21 -18
  1149. data/src/core/lib/resolver/resolver_factory.h +11 -10
  1150. data/src/core/lib/resolver/resolver_registry.cc +17 -9
  1151. data/src/core/lib/resolver/resolver_registry.h +15 -5
  1152. data/src/core/lib/resolver/server_address.cc +46 -34
  1153. data/src/core/lib/resolver/server_address.h +36 -35
  1154. data/src/core/lib/resource_quota/api.cc +25 -29
  1155. data/src/core/lib/resource_quota/api.h +14 -5
  1156. data/src/core/lib/resource_quota/arena.cc +85 -27
  1157. data/src/core/lib/resource_quota/arena.h +197 -25
  1158. data/src/core/lib/resource_quota/memory_quota.cc +322 -101
  1159. data/src/core/lib/resource_quota/memory_quota.h +191 -56
  1160. data/src/core/lib/resource_quota/periodic_update.cc +78 -0
  1161. data/src/core/lib/resource_quota/periodic_update.h +71 -0
  1162. data/src/core/lib/resource_quota/resource_quota.h +20 -4
  1163. data/src/core/lib/resource_quota/thread_quota.cc +2 -0
  1164. data/src/core/lib/resource_quota/thread_quota.h +7 -3
  1165. data/src/core/lib/resource_quota/trace.h +3 -3
  1166. data/src/core/lib/security/authorization/authorization_engine.h +3 -3
  1167. data/src/core/lib/security/authorization/authorization_policy_provider.h +17 -3
  1168. data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +3 -0
  1169. data/src/core/lib/security/authorization/evaluate_args.cc +17 -8
  1170. data/src/core/lib/security/authorization/evaluate_args.h +9 -6
  1171. data/src/core/lib/security/authorization/grpc_authorization_engine.cc +5 -1
  1172. data/src/core/lib/security/authorization/grpc_authorization_engine.h +10 -3
  1173. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +26 -13
  1174. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +20 -10
  1175. data/src/core/lib/security/authorization/matchers.cc +44 -30
  1176. data/src/core/lib/security/authorization/matchers.h +10 -3
  1177. data/src/core/lib/security/authorization/rbac_policy.cc +6 -2
  1178. data/src/core/lib/security/authorization/rbac_policy.h +10 -3
  1179. data/src/core/{ext/xds → lib/security/certificate_provider}/certificate_provider_factory.h +9 -4
  1180. data/src/core/lib/security/certificate_provider/certificate_provider_registry.cc +60 -0
  1181. data/src/core/lib/security/certificate_provider/certificate_provider_registry.h +70 -0
  1182. data/src/core/lib/security/context/security_context.cc +27 -25
  1183. data/src/core/lib/security/context/security_context.h +64 -35
  1184. data/src/core/lib/security/credentials/alts/alts_credentials.cc +35 -27
  1185. data/src/core/lib/security/credentials/alts/alts_credentials.h +65 -57
  1186. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +19 -19
  1187. data/src/core/lib/security/credentials/alts/check_gcp_environment.h +43 -43
  1188. data/src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc +17 -17
  1189. data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +18 -17
  1190. data/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc +18 -17
  1191. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +20 -22
  1192. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +18 -18
  1193. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.h +38 -39
  1194. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc +19 -22
  1195. data/src/core/lib/security/credentials/call_creds_util.cc +13 -3
  1196. data/src/core/lib/security/credentials/call_creds_util.h +6 -5
  1197. data/src/core/lib/security/credentials/channel_creds_registry.h +10 -4
  1198. data/src/core/lib/security/credentials/channel_creds_registry_init.cc +13 -3
  1199. data/src/core/lib/security/credentials/composite/composite_credentials.cc +46 -41
  1200. data/src/core/lib/security/credentials/composite/composite_credentials.h +51 -38
  1201. data/src/core/lib/security/credentials/credentials.cc +23 -26
  1202. data/src/core/lib/security/credentials/credentials.h +91 -94
  1203. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +202 -74
  1204. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +21 -3
  1205. data/src/core/lib/security/credentials/external/aws_request_signer.cc +14 -3
  1206. data/src/core/lib/security/credentials/external/aws_request_signer.h +3 -3
  1207. data/src/core/lib/security/credentials/external/external_account_credentials.cc +86 -68
  1208. data/src/core/lib/security/credentials/external/external_account_credentials.h +14 -3
  1209. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +29 -26
  1210. data/src/core/lib/security/credentials/external/file_external_account_credentials.h +9 -3
  1211. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +44 -31
  1212. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +13 -3
  1213. data/src/core/lib/security/credentials/fake/fake_credentials.cc +48 -48
  1214. data/src/core/lib/security/credentials/fake/fake_credentials.h +57 -47
  1215. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +23 -25
  1216. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +148 -112
  1217. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +35 -29
  1218. data/src/core/lib/security/credentials/iam/iam_credentials.cc +35 -24
  1219. data/src/core/lib/security/credentials/iam/iam_credentials.h +37 -23
  1220. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +32 -29
  1221. data/src/core/lib/security/credentials/insecure/insecure_credentials.h +61 -0
  1222. data/src/core/lib/security/credentials/jwt/json_token.cc +40 -29
  1223. data/src/core/lib/security/credentials/jwt/json_token.h +36 -36
  1224. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +37 -30
  1225. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +41 -23
  1226. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +113 -89
  1227. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +49 -47
  1228. data/src/core/lib/security/credentials/local/local_credentials.cc +36 -30
  1229. data/src/core/lib/security/credentials/local/local_credentials.h +36 -26
  1230. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +107 -91
  1231. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +56 -27
  1232. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +42 -36
  1233. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +55 -29
  1234. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +48 -44
  1235. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +43 -23
  1236. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +22 -30
  1237. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h +16 -17
  1238. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +65 -48
  1239. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +69 -9
  1240. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.cc +44 -4
  1241. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +75 -13
  1242. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +22 -23
  1243. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +69 -98
  1244. data/src/core/lib/security/credentials/tls/tls_credentials.cc +55 -50
  1245. data/src/core/lib/security/credentials/tls/tls_credentials.h +33 -30
  1246. data/src/core/lib/security/credentials/tls/tls_utils.cc +5 -1
  1247. data/src/core/lib/security/credentials/tls/tls_utils.h +4 -4
  1248. data/src/core/lib/security/credentials/xds/xds_credentials.cc +77 -81
  1249. data/src/core/lib/security/credentials/xds/xds_credentials.h +50 -10
  1250. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +60 -54
  1251. data/src/core/lib/security/security_connector/alts/alts_security_connector.h +49 -47
  1252. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +75 -79
  1253. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +25 -26
  1254. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +15 -6
  1255. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +26 -15
  1256. data/src/core/lib/security/security_connector/load_system_roots.h +20 -20
  1257. data/src/core/lib/security/security_connector/load_system_roots_fallback.cc +22 -20
  1258. data/src/core/lib/security/security_connector/{load_system_roots_linux.cc → load_system_roots_supported.cc} +43 -38
  1259. data/src/core/lib/security/security_connector/load_system_roots_supported.h +45 -0
  1260. data/src/core/lib/security/security_connector/local/local_security_connector.cc +66 -49
  1261. data/src/core/lib/security/security_connector/local/local_security_connector.h +49 -46
  1262. data/src/core/lib/security/security_connector/security_connector.cc +37 -35
  1263. data/src/core/lib/security/security_connector/security_connector.h +67 -45
  1264. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +59 -48
  1265. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +44 -43
  1266. data/src/core/lib/security/security_connector/ssl_utils.cc +47 -39
  1267. data/src/core/lib/security/security_connector/ssl_utils.h +45 -42
  1268. data/src/core/lib/security/security_connector/ssl_utils_config.cc +22 -22
  1269. data/src/core/lib/security/security_connector/ssl_utils_config.h +21 -22
  1270. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +62 -58
  1271. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +48 -28
  1272. data/src/core/lib/security/transport/auth_filters.h +59 -30
  1273. data/src/core/lib/security/transport/client_auth_filter.cc +73 -48
  1274. data/src/core/lib/security/transport/secure_endpoint.cc +305 -181
  1275. data/src/core/lib/security/transport/secure_endpoint.h +29 -28
  1276. data/src/core/lib/security/transport/security_handshaker.cc +142 -110
  1277. data/src/core/lib/security/transport/security_handshaker.h +28 -23
  1278. data/src/core/lib/security/transport/server_auth_filter.cc +157 -266
  1279. data/src/core/lib/security/transport/tsi_error.cc +23 -20
  1280. data/src/core/lib/security/transport/tsi_error.h +20 -20
  1281. data/src/core/lib/security/util/json_util.cc +24 -24
  1282. data/src/core/lib/security/util/json_util.h +21 -23
  1283. data/src/core/lib/service_config/service_config.h +19 -12
  1284. data/src/core/lib/service_config/service_config_call_data.h +15 -5
  1285. data/src/core/lib/service_config/service_config_impl.cc +111 -150
  1286. data/src/core/lib/service_config/service_config_impl.h +27 -27
  1287. data/src/core/lib/service_config/service_config_parser.cc +16 -28
  1288. data/src/core/lib/service_config/service_config_parser.h +18 -19
  1289. data/src/core/lib/slice/b64.cc +26 -26
  1290. data/src/core/lib/slice/b64.h +34 -32
  1291. data/src/core/lib/slice/percent_encoding.cc +24 -30
  1292. data/src/core/lib/slice/percent_encoding.h +28 -34
  1293. data/src/core/lib/slice/slice.cc +59 -46
  1294. data/src/core/lib/slice/slice.h +64 -20
  1295. data/src/core/lib/slice/slice_buffer.cc +136 -76
  1296. data/src/core/lib/slice/slice_buffer.h +168 -0
  1297. data/src/core/lib/slice/slice_internal.h +38 -45
  1298. data/src/core/lib/slice/slice_refcount.cc +3 -18
  1299. data/src/core/lib/slice/slice_refcount.h +53 -19
  1300. data/src/core/lib/slice/slice_string_helpers.cc +17 -33
  1301. data/src/core/lib/slice/slice_string_helpers.h +23 -30
  1302. data/src/core/lib/surface/api_trace.cc +17 -17
  1303. data/src/core/lib/surface/api_trace.h +25 -25
  1304. data/src/core/lib/surface/builtins.cc +7 -2
  1305. data/src/core/lib/surface/builtins.h +3 -3
  1306. data/src/core/lib/surface/byte_buffer.cc +26 -21
  1307. data/src/core/lib/surface/byte_buffer_reader.cc +24 -24
  1308. data/src/core/lib/surface/call.cc +3000 -1131
  1309. data/src/core/lib/surface/call.h +135 -56
  1310. data/src/core/lib/surface/call_details.cc +22 -23
  1311. data/src/core/lib/surface/call_log_batch.cc +25 -18
  1312. data/src/core/lib/surface/call_test_only.h +34 -31
  1313. data/src/core/lib/surface/call_trace.cc +123 -0
  1314. data/src/core/lib/surface/call_trace.h +30 -0
  1315. data/src/core/lib/surface/channel.cc +218 -284
  1316. data/src/core/lib/surface/channel.h +137 -90
  1317. data/src/core/lib/surface/channel_init.cc +19 -20
  1318. data/src/core/lib/surface/channel_init.h +24 -26
  1319. data/src/core/lib/surface/channel_ping.cc +26 -20
  1320. data/src/core/lib/surface/channel_stack_type.cc +21 -19
  1321. data/src/core/lib/surface/channel_stack_type.h +22 -22
  1322. data/src/core/lib/surface/completion_queue.cc +200 -222
  1323. data/src/core/lib/surface/completion_queue.h +42 -40
  1324. data/src/core/lib/surface/completion_queue_factory.cc +34 -28
  1325. data/src/core/lib/surface/completion_queue_factory.h +21 -23
  1326. data/src/core/lib/surface/event_string.cc +19 -24
  1327. data/src/core/lib/surface/event_string.h +21 -21
  1328. data/src/core/lib/surface/init.cc +57 -114
  1329. data/src/core/lib/surface/init.h +20 -28
  1330. data/src/core/lib/surface/init_internally.cc +25 -0
  1331. data/src/core/lib/surface/init_internally.h +37 -0
  1332. data/src/core/lib/surface/lame_client.cc +87 -130
  1333. data/src/core/lib/surface/lame_client.h +62 -24
  1334. data/src/core/lib/surface/metadata_array.cc +18 -17
  1335. data/src/core/lib/surface/server.cc +409 -188
  1336. data/src/core/lib/surface/server.h +57 -26
  1337. data/src/core/lib/surface/validate_metadata.cc +34 -48
  1338. data/src/core/lib/surface/validate_metadata.h +24 -21
  1339. data/src/core/lib/surface/version.cc +21 -21
  1340. data/src/core/lib/transport/bdp_estimator.cc +19 -19
  1341. data/src/core/lib/transport/bdp_estimator.h +22 -24
  1342. data/src/core/lib/transport/connectivity_state.cc +24 -23
  1343. data/src/core/lib/transport/connectivity_state.h +24 -25
  1344. data/src/core/lib/transport/error_utils.cc +57 -79
  1345. data/src/core/lib/transport/error_utils.h +29 -25
  1346. data/src/core/lib/{channel → transport}/handshaker.cc +75 -58
  1347. data/src/core/lib/{channel → transport}/handshaker.h +59 -48
  1348. data/src/core/lib/transport/handshaker_factory.h +74 -0
  1349. data/src/core/lib/transport/handshaker_registry.cc +61 -0
  1350. data/src/core/lib/transport/handshaker_registry.h +69 -0
  1351. data/src/core/lib/transport/http2_errors.h +22 -22
  1352. data/src/core/{ext/filters/client_channel → lib/transport}/http_connect_handshaker.cc +78 -65
  1353. data/src/core/lib/transport/http_connect_handshaker.h +42 -0
  1354. data/src/core/lib/transport/metadata_batch.cc +305 -0
  1355. data/src/core/lib/transport/metadata_batch.h +269 -302
  1356. data/src/core/lib/transport/parsed_metadata.cc +2 -4
  1357. data/src/core/lib/transport/parsed_metadata.h +17 -8
  1358. data/src/core/lib/transport/pid_controller.cc +20 -20
  1359. data/src/core/lib/transport/pid_controller.h +27 -27
  1360. data/src/core/lib/transport/status_conversion.cc +23 -23
  1361. data/src/core/lib/transport/status_conversion.h +24 -24
  1362. data/src/core/lib/transport/tcp_connect_handshaker.cc +245 -0
  1363. data/src/core/lib/transport/tcp_connect_handshaker.h +39 -0
  1364. data/src/core/lib/transport/timeout_encoding.cc +24 -28
  1365. data/src/core/lib/transport/timeout_encoding.h +25 -21
  1366. data/src/core/lib/transport/transport.cc +97 -57
  1367. data/src/core/lib/transport/transport.h +252 -207
  1368. data/src/core/lib/transport/transport_fwd.h +20 -0
  1369. data/src/core/lib/transport/transport_impl.h +59 -48
  1370. data/src/core/lib/transport/transport_op_string.cc +40 -39
  1371. data/src/core/lib/uri/uri_parser.cc +12 -4
  1372. data/src/core/lib/uri/uri_parser.h +3 -5
  1373. data/src/core/plugin_registry/grpc_plugin_registry.cc +62 -73
  1374. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +20 -39
  1375. data/src/core/tsi/alts/crypt/aes_gcm.cc +20 -20
  1376. data/src/core/tsi/alts/crypt/gsec.cc +26 -26
  1377. data/src/core/tsi/alts/crypt/gsec.h +336 -336
  1378. data/src/core/tsi/alts/frame_protector/alts_counter.cc +23 -23
  1379. data/src/core/tsi/alts/frame_protector/alts_counter.h +68 -68
  1380. data/src/core/tsi/alts/frame_protector/alts_crypter.cc +19 -19
  1381. data/src/core/tsi/alts/frame_protector/alts_crypter.h +209 -209
  1382. data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +72 -71
  1383. data/src/core/tsi/alts/frame_protector/alts_frame_protector.h +40 -40
  1384. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc +18 -18
  1385. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.h +82 -83
  1386. data/src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc +22 -22
  1387. data/src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc +22 -22
  1388. data/src/core/tsi/alts/frame_protector/frame_handler.cc +26 -25
  1389. data/src/core/tsi/alts/frame_protector/frame_handler.h +169 -169
  1390. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +117 -97
  1391. data/src/core/tsi/alts/handshaker/alts_handshaker_client.h +104 -104
  1392. data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +18 -17
  1393. data/src/core/tsi/alts/handshaker/alts_shared_resource.h +43 -44
  1394. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +53 -45
  1395. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.h +60 -60
  1396. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker_private.h +24 -24
  1397. data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +21 -20
  1398. data/src/core/tsi/alts/handshaker/alts_tsi_utils.h +38 -38
  1399. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +19 -19
  1400. data/src/core/tsi/alts/handshaker/transport_security_common_api.h +105 -104
  1401. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +45 -44
  1402. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h +40 -41
  1403. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc +38 -36
  1404. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h +35 -36
  1405. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol.h +67 -68
  1406. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +32 -31
  1407. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.h +55 -56
  1408. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc +54 -53
  1409. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h +141 -142
  1410. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +67 -58
  1411. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h +43 -44
  1412. data/src/core/tsi/fake_transport_security.cc +146 -110
  1413. data/src/core/tsi/fake_transport_security.h +36 -30
  1414. data/src/core/tsi/local_transport_security.cc +43 -38
  1415. data/src/core/tsi/local_transport_security.h +33 -33
  1416. data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +9 -4
  1417. data/src/core/tsi/ssl/key_logging/ssl_key_logging.h +3 -3
  1418. data/src/core/tsi/ssl/session_cache/ssl_session.h +23 -21
  1419. data/src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc +21 -19
  1420. data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +18 -17
  1421. data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +31 -22
  1422. data/src/core/tsi/ssl/session_cache/ssl_session_openssl.cc +27 -20
  1423. data/src/core/tsi/ssl_transport_security.cc +356 -390
  1424. data/src/core/tsi/ssl_transport_security.h +210 -201
  1425. data/src/core/tsi/ssl_transport_security_utils.cc +250 -0
  1426. data/src/core/tsi/ssl_transport_security_utils.h +147 -0
  1427. data/src/core/tsi/ssl_types.h +27 -27
  1428. data/src/core/tsi/transport_security.cc +44 -32
  1429. data/src/core/tsi/transport_security.h +49 -48
  1430. data/src/core/tsi/transport_security_grpc.cc +23 -22
  1431. data/src/core/tsi/transport_security_grpc.h +44 -41
  1432. data/src/core/tsi/transport_security_interface.h +346 -332
  1433. data/src/ruby/ext/grpc/ext-export-truffleruby-with-ruby-abi-version.clang +2 -0
  1434. data/src/ruby/ext/grpc/ext-export-truffleruby-with-ruby-abi-version.gcc +7 -0
  1435. data/src/ruby/ext/grpc/ext-export-with-ruby-abi-version.clang +2 -0
  1436. data/src/ruby/ext/grpc/ext-export-with-ruby-abi-version.gcc +7 -0
  1437. data/src/ruby/ext/grpc/ext-export.gcc +1 -1
  1438. data/src/ruby/ext/grpc/extconf.rb +98 -20
  1439. data/src/ruby/ext/grpc/rb_call.c +1 -0
  1440. data/src/ruby/ext/grpc/rb_channel.c +1 -0
  1441. data/src/ruby/ext/grpc/rb_channel_args.c +1 -0
  1442. data/src/ruby/ext/grpc/rb_compression_options.c +1 -1
  1443. data/src/ruby/ext/grpc/rb_grpc.c +1 -0
  1444. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +38 -38
  1445. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +60 -60
  1446. data/src/ruby/ext/grpc/rb_loader.c +6 -2
  1447. data/src/ruby/lib/grpc/errors.rb +1 -1
  1448. data/src/ruby/lib/grpc/generic/active_call.rb +7 -1
  1449. data/src/ruby/lib/grpc/generic/bidi_call.rb +2 -0
  1450. data/src/ruby/lib/grpc/grpc.rb +1 -1
  1451. data/src/ruby/lib/grpc/version.rb +1 -1
  1452. data/src/ruby/pb/generate_proto_ruby.sh +1 -6
  1453. data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +4 -0
  1454. data/src/ruby/pb/test/client.rb +769 -0
  1455. data/src/ruby/pb/test/server.rb +252 -0
  1456. data/src/ruby/pb/test/xds_client.rb +415 -0
  1457. data/src/ruby/spec/channel_spec.rb +5 -43
  1458. data/src/ruby/spec/client_server_spec.rb +20 -8
  1459. data/src/ruby/spec/generic/active_call_spec.rb +12 -3
  1460. data/src/ruby/spec/generic/client_stub_spec.rb +23 -23
  1461. data/src/ruby/spec/generic/server_interceptors_spec.rb +1 -1
  1462. data/src/ruby/spec/user_agent_spec.rb +1 -1
  1463. data/third_party/abseil-cpp/absl/algorithm/container.h +57 -58
  1464. data/third_party/abseil-cpp/absl/base/attributes.h +88 -41
  1465. data/third_party/abseil-cpp/absl/base/casts.h +61 -68
  1466. data/third_party/abseil-cpp/absl/base/config.h +221 -39
  1467. data/third_party/abseil-cpp/absl/base/internal/cycleclock.cc +12 -42
  1468. data/third_party/abseil-cpp/absl/base/internal/cycleclock.h +52 -2
  1469. data/third_party/abseil-cpp/absl/base/internal/cycleclock_config.h +55 -0
  1470. data/third_party/abseil-cpp/absl/base/internal/direct_mmap.h +5 -4
  1471. data/third_party/abseil-cpp/absl/base/internal/endian.h +17 -62
  1472. data/third_party/abseil-cpp/absl/base/internal/fast_type_id.h +2 -0
  1473. data/third_party/abseil-cpp/absl/base/internal/inline_variable.h +3 -3
  1474. data/third_party/abseil-cpp/absl/base/internal/invoke.h +54 -0
  1475. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.cc +2 -2
  1476. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.h +1 -1
  1477. data/third_party/abseil-cpp/absl/base/internal/prefetch.h +138 -0
  1478. data/third_party/abseil-cpp/absl/base/internal/raw_logging.cc +39 -28
  1479. data/third_party/abseil-cpp/absl/base/internal/raw_logging.h +36 -36
  1480. data/third_party/abseil-cpp/absl/base/internal/spinlock.cc +6 -3
  1481. data/third_party/abseil-cpp/absl/base/internal/spinlock.h +10 -6
  1482. data/third_party/abseil-cpp/absl/base/internal/spinlock_linux.inc +2 -5
  1483. data/third_party/abseil-cpp/absl/base/internal/spinlock_win32.inc +4 -1
  1484. data/third_party/abseil-cpp/absl/base/internal/strerror.cc +88 -0
  1485. data/third_party/abseil-cpp/absl/base/internal/strerror.h +39 -0
  1486. data/third_party/abseil-cpp/absl/base/internal/sysinfo.cc +14 -11
  1487. data/third_party/abseil-cpp/absl/base/internal/thread_annotations.h +9 -0
  1488. data/third_party/abseil-cpp/absl/base/internal/thread_identity.cc +2 -1
  1489. data/third_party/abseil-cpp/absl/base/internal/thread_identity.h +4 -0
  1490. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +6 -7
  1491. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h +12 -40
  1492. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock_config.h +62 -0
  1493. data/third_party/abseil-cpp/absl/base/log_severity.cc +28 -0
  1494. data/third_party/abseil-cpp/absl/base/log_severity.h +51 -0
  1495. data/third_party/abseil-cpp/absl/base/macros.h +4 -21
  1496. data/third_party/abseil-cpp/absl/base/optimization.h +76 -16
  1497. data/third_party/abseil-cpp/absl/base/options.h +1 -7
  1498. data/third_party/abseil-cpp/absl/base/policy_checks.h +15 -13
  1499. data/third_party/abseil-cpp/absl/base/thread_annotations.h +2 -2
  1500. data/third_party/abseil-cpp/absl/cleanup/cleanup.h +140 -0
  1501. data/third_party/abseil-cpp/absl/cleanup/internal/cleanup.h +100 -0
  1502. data/third_party/abseil-cpp/absl/container/fixed_array.h +9 -5
  1503. data/third_party/abseil-cpp/absl/container/flat_hash_map.h +11 -4
  1504. data/third_party/abseil-cpp/absl/container/flat_hash_set.h +503 -0
  1505. data/third_party/abseil-cpp/absl/container/inlined_vector.h +84 -25
  1506. data/third_party/abseil-cpp/absl/container/internal/common.h +9 -8
  1507. data/third_party/abseil-cpp/absl/container/internal/common_policy_traits.h +132 -0
  1508. data/third_party/abseil-cpp/absl/container/internal/container_memory.h +23 -29
  1509. data/third_party/abseil-cpp/absl/container/internal/hash_policy_traits.h +4 -55
  1510. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +116 -23
  1511. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +40 -54
  1512. data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +165 -66
  1513. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +159 -4
  1514. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +1121 -470
  1515. data/third_party/abseil-cpp/absl/crc/crc32c.cc +99 -0
  1516. data/third_party/abseil-cpp/absl/crc/crc32c.h +183 -0
  1517. data/third_party/abseil-cpp/absl/crc/internal/cpu_detect.cc +256 -0
  1518. data/third_party/abseil-cpp/absl/crc/internal/cpu_detect.h +57 -0
  1519. data/third_party/abseil-cpp/absl/crc/internal/crc.cc +468 -0
  1520. data/third_party/abseil-cpp/absl/crc/internal/crc.h +91 -0
  1521. data/third_party/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h +269 -0
  1522. data/third_party/abseil-cpp/absl/crc/internal/crc32c.h +39 -0
  1523. data/third_party/abseil-cpp/absl/crc/internal/crc32c_inline.h +72 -0
  1524. data/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.cc +130 -0
  1525. data/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.h +159 -0
  1526. data/third_party/abseil-cpp/absl/crc/internal/crc_internal.h +179 -0
  1527. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy.h +119 -0
  1528. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_fallback.cc +75 -0
  1529. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_x86_64.cc +434 -0
  1530. data/third_party/abseil-cpp/absl/crc/internal/crc_non_temporal_memcpy.cc +93 -0
  1531. data/third_party/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc +725 -0
  1532. data/third_party/abseil-cpp/absl/crc/internal/non_temporal_arm_intrinsics.h +79 -0
  1533. data/third_party/abseil-cpp/absl/crc/internal/non_temporal_memcpy.h +180 -0
  1534. data/third_party/abseil-cpp/absl/debugging/internal/address_is_readable.cc +45 -88
  1535. data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +67 -38
  1536. data/third_party/abseil-cpp/absl/debugging/internal/demangle.h +1 -1
  1537. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.cc +16 -13
  1538. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +3 -2
  1539. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +19 -12
  1540. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_arm-inl.inc +8 -3
  1541. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_config.h +2 -1
  1542. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_generic-inl.inc +1 -1
  1543. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_powerpc-inl.inc +8 -3
  1544. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_riscv-inl.inc +59 -102
  1545. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_win32-inl.inc +5 -4
  1546. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +41 -11
  1547. data/third_party/abseil-cpp/absl/debugging/internal/vdso_support.cc +18 -4
  1548. data/third_party/abseil-cpp/absl/debugging/symbolize.cc +6 -1
  1549. data/third_party/abseil-cpp/absl/debugging/symbolize_darwin.inc +3 -2
  1550. data/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +164 -101
  1551. data/third_party/abseil-cpp/absl/debugging/symbolize_win32.inc +7 -6
  1552. data/third_party/abseil-cpp/absl/functional/any_invocable.h +316 -0
  1553. data/third_party/abseil-cpp/absl/functional/bind_front.h +10 -1
  1554. data/third_party/abseil-cpp/absl/functional/function_ref.h +2 -1
  1555. data/third_party/abseil-cpp/absl/functional/internal/any_invocable.h +878 -0
  1556. data/third_party/abseil-cpp/absl/hash/hash.h +82 -8
  1557. data/third_party/abseil-cpp/absl/hash/internal/city.cc +10 -10
  1558. data/third_party/abseil-cpp/absl/hash/internal/hash.h +235 -26
  1559. data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.cc +3 -14
  1560. data/third_party/abseil-cpp/absl/memory/memory.h +26 -447
  1561. data/third_party/abseil-cpp/absl/meta/type_traits.h +104 -12
  1562. data/third_party/abseil-cpp/absl/numeric/bits.h +1 -1
  1563. data/third_party/abseil-cpp/absl/numeric/int128.cc +14 -10
  1564. data/third_party/abseil-cpp/absl/numeric/int128.h +2 -2
  1565. data/third_party/abseil-cpp/absl/profiling/internal/sample_recorder.h +33 -10
  1566. data/third_party/abseil-cpp/absl/random/bernoulli_distribution.h +4 -4
  1567. data/third_party/abseil-cpp/absl/random/distributions.h +3 -3
  1568. data/third_party/abseil-cpp/absl/random/internal/distribution_caller.h +3 -0
  1569. data/third_party/abseil-cpp/absl/random/internal/fast_uniform_bits.h +4 -2
  1570. data/third_party/abseil-cpp/absl/random/internal/generate_real.h +2 -2
  1571. data/third_party/abseil-cpp/absl/random/internal/nonsecure_base.h +59 -48
  1572. data/third_party/abseil-cpp/absl/random/internal/pcg_engine.h +3 -24
  1573. data/third_party/abseil-cpp/absl/random/internal/pool_urbg.cc +9 -9
  1574. data/third_party/abseil-cpp/absl/random/internal/randen.h +5 -11
  1575. data/third_party/abseil-cpp/absl/random/internal/randen_detect.cc +6 -2
  1576. data/third_party/abseil-cpp/absl/random/internal/randen_engine.h +48 -23
  1577. data/third_party/abseil-cpp/absl/random/internal/salted_seed_seq.h +24 -26
  1578. data/third_party/abseil-cpp/absl/random/internal/seed_material.cc +2 -2
  1579. data/third_party/abseil-cpp/absl/random/internal/traits.h +53 -5
  1580. data/third_party/abseil-cpp/absl/random/internal/uniform_helper.h +5 -5
  1581. data/third_party/abseil-cpp/absl/random/internal/wide_multiply.h +33 -48
  1582. data/third_party/abseil-cpp/absl/random/log_uniform_int_distribution.h +9 -10
  1583. data/third_party/abseil-cpp/absl/random/poisson_distribution.h +7 -4
  1584. data/third_party/abseil-cpp/absl/random/random.h +6 -6
  1585. data/third_party/abseil-cpp/absl/random/seed_sequences.h +1 -0
  1586. data/third_party/abseil-cpp/absl/random/uniform_int_distribution.h +2 -2
  1587. data/third_party/abseil-cpp/absl/random/uniform_real_distribution.h +1 -1
  1588. data/third_party/abseil-cpp/absl/random/zipf_distribution.h +4 -3
  1589. data/third_party/abseil-cpp/absl/status/internal/status_internal.h +18 -0
  1590. data/third_party/abseil-cpp/absl/status/status.cc +193 -14
  1591. data/third_party/abseil-cpp/absl/status/status.h +24 -14
  1592. data/third_party/abseil-cpp/absl/status/statusor.h +9 -3
  1593. data/third_party/abseil-cpp/absl/strings/ascii.cc +5 -5
  1594. data/third_party/abseil-cpp/absl/strings/ascii.h +4 -4
  1595. data/third_party/abseil-cpp/absl/strings/charconv.cc +534 -96
  1596. data/third_party/abseil-cpp/absl/strings/cord.cc +257 -924
  1597. data/third_party/abseil-cpp/absl/strings/cord.h +268 -156
  1598. data/third_party/abseil-cpp/absl/strings/cord_analysis.cc +188 -0
  1599. data/third_party/abseil-cpp/absl/strings/cord_analysis.h +44 -0
  1600. data/third_party/abseil-cpp/absl/strings/cord_buffer.cc +30 -0
  1601. data/third_party/abseil-cpp/absl/strings/cord_buffer.h +575 -0
  1602. data/third_party/abseil-cpp/absl/strings/escaping.cc +73 -62
  1603. data/third_party/abseil-cpp/absl/strings/escaping.h +24 -19
  1604. data/third_party/abseil-cpp/absl/strings/internal/char_map.h +14 -12
  1605. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.cc +4 -4
  1606. data/third_party/abseil-cpp/absl/strings/internal/charconv_parse.cc +2 -2
  1607. data/third_party/abseil-cpp/absl/strings/internal/cord_data_edge.h +63 -0
  1608. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.cc +20 -32
  1609. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +441 -150
  1610. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.cc +157 -53
  1611. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h +70 -73
  1612. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.cc +8 -6
  1613. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.h +4 -2
  1614. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.cc +3 -2
  1615. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.h +5 -4
  1616. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_consume.cc +7 -74
  1617. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_crc.cc +56 -0
  1618. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_crc.h +103 -0
  1619. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_flat.h +58 -17
  1620. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.cc +13 -11
  1621. data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.h +7 -15
  1622. data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.h +3 -3
  1623. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.cc +19 -43
  1624. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.h +7 -7
  1625. data/third_party/abseil-cpp/absl/strings/internal/cordz_statistics.h +5 -4
  1626. data/third_party/abseil-cpp/absl/strings/internal/cordz_update_tracker.h +4 -2
  1627. data/third_party/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.cc +93 -0
  1628. data/third_party/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.h +34 -0
  1629. data/third_party/abseil-cpp/absl/strings/internal/escaping.cc +18 -15
  1630. data/third_party/abseil-cpp/absl/strings/internal/escaping.h +7 -9
  1631. data/third_party/abseil-cpp/absl/strings/internal/has_absl_stringify.h +55 -0
  1632. data/third_party/abseil-cpp/absl/strings/internal/memutil.cc +9 -6
  1633. data/third_party/abseil-cpp/absl/strings/internal/ostringstream.cc +14 -7
  1634. data/third_party/abseil-cpp/absl/strings/internal/ostringstream.h +35 -10
  1635. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.cc +113 -46
  1636. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.h +127 -30
  1637. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.cc +3 -2
  1638. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h +42 -10
  1639. data/third_party/abseil-cpp/absl/strings/internal/str_format/checker.h +56 -289
  1640. data/third_party/abseil-cpp/absl/strings/internal/str_format/constexpr_parser.h +351 -0
  1641. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.cc +6 -6
  1642. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h +9 -4
  1643. data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc +215 -181
  1644. data/third_party/abseil-cpp/absl/strings/internal/str_format/output.h +2 -1
  1645. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.cc +10 -209
  1646. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.h +14 -103
  1647. data/third_party/abseil-cpp/absl/strings/internal/str_join_internal.h +9 -6
  1648. data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +2 -1
  1649. data/third_party/abseil-cpp/absl/strings/internal/string_constant.h +10 -2
  1650. data/third_party/abseil-cpp/absl/strings/internal/stringify_sink.cc +28 -0
  1651. data/third_party/abseil-cpp/absl/strings/internal/stringify_sink.h +57 -0
  1652. data/third_party/abseil-cpp/absl/strings/internal/utf8.cc +9 -9
  1653. data/third_party/abseil-cpp/absl/strings/numbers.cc +42 -39
  1654. data/third_party/abseil-cpp/absl/strings/numbers.h +26 -23
  1655. data/third_party/abseil-cpp/absl/strings/str_cat.cc +9 -6
  1656. data/third_party/abseil-cpp/absl/strings/str_cat.h +70 -16
  1657. data/third_party/abseil-cpp/absl/strings/str_format.h +71 -9
  1658. data/third_party/abseil-cpp/absl/strings/str_join.h +9 -15
  1659. data/third_party/abseil-cpp/absl/strings/str_split.h +1 -2
  1660. data/third_party/abseil-cpp/absl/strings/string_view.cc +8 -19
  1661. data/third_party/abseil-cpp/absl/strings/string_view.h +6 -12
  1662. data/third_party/abseil-cpp/absl/strings/strip.h +8 -6
  1663. data/third_party/abseil-cpp/absl/strings/substitute.cc +8 -6
  1664. data/third_party/abseil-cpp/absl/strings/substitute.h +55 -21
  1665. data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.cc +9 -6
  1666. data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.h +0 -4
  1667. data/third_party/abseil-cpp/absl/synchronization/internal/futex.h +20 -17
  1668. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +37 -31
  1669. data/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.h +22 -8
  1670. data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.cc +0 -4
  1671. data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.h +1 -6
  1672. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.cc +0 -25
  1673. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.h +10 -4
  1674. data/third_party/abseil-cpp/absl/synchronization/mutex.cc +172 -88
  1675. data/third_party/abseil-cpp/absl/synchronization/mutex.h +102 -55
  1676. data/third_party/abseil-cpp/absl/synchronization/notification.cc +0 -1
  1677. data/third_party/abseil-cpp/absl/synchronization/notification.h +3 -3
  1678. data/third_party/abseil-cpp/absl/time/civil_time.cc +26 -0
  1679. data/third_party/abseil-cpp/absl/time/civil_time.h +25 -0
  1680. data/third_party/abseil-cpp/absl/time/clock.cc +17 -11
  1681. data/third_party/abseil-cpp/absl/time/duration.cc +12 -11
  1682. data/third_party/abseil-cpp/absl/time/format.cc +2 -1
  1683. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time_detail.h +11 -7
  1684. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc +1 -1
  1685. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.cc +26 -5
  1686. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +7 -6
  1687. data/third_party/abseil-cpp/absl/time/internal/cctz/src/zone_info_source.cc +36 -35
  1688. data/third_party/abseil-cpp/absl/time/time.cc +2 -2
  1689. data/third_party/abseil-cpp/absl/time/time.h +268 -169
  1690. data/third_party/abseil-cpp/absl/types/internal/optional.h +8 -0
  1691. data/third_party/abseil-cpp/absl/types/internal/span.h +30 -19
  1692. data/third_party/abseil-cpp/absl/types/internal/variant.h +28 -40
  1693. data/third_party/abseil-cpp/absl/types/optional.h +17 -14
  1694. data/third_party/abseil-cpp/absl/types/span.h +31 -8
  1695. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_genn.c +1 -1
  1696. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +1 -2
  1697. data/third_party/re2/re2/bitstate.cc +3 -3
  1698. data/third_party/re2/re2/dfa.cc +13 -13
  1699. data/third_party/re2/re2/nfa.cc +4 -4
  1700. data/third_party/re2/re2/onepass.cc +2 -2
  1701. data/third_party/re2/re2/prefilter_tree.cc +27 -59
  1702. data/third_party/re2/re2/prefilter_tree.h +3 -2
  1703. data/third_party/re2/re2/prog.cc +11 -2
  1704. data/third_party/re2/re2/prog.h +17 -5
  1705. data/third_party/re2/re2/re2.cc +6 -11
  1706. data/third_party/re2/re2/re2.h +1 -1
  1707. data/third_party/re2/re2/regexp.cc +1 -2
  1708. data/third_party/re2/re2/stringpiece.h +10 -7
  1709. data/third_party/re2/re2/unicode_casefold.cc +25 -11
  1710. data/third_party/re2/re2/unicode_groups.cc +319 -151
  1711. data/third_party/re2/re2/walker-inl.h +3 -2
  1712. data/third_party/re2/util/mutex.h +4 -4
  1713. data/third_party/upb/upb/arena.c +277 -0
  1714. data/third_party/upb/upb/arena.h +225 -0
  1715. data/third_party/upb/upb/array.c +114 -0
  1716. data/third_party/upb/upb/array.h +83 -0
  1717. data/third_party/upb/upb/collections.h +36 -0
  1718. data/third_party/upb/upb/decode.c +188 -76
  1719. data/third_party/upb/upb/decode.h +1 -0
  1720. data/third_party/upb/upb/decode_fast.c +1 -1
  1721. data/third_party/upb/upb/def.c +128 -57
  1722. data/third_party/upb/upb/def.h +20 -4
  1723. data/third_party/upb/upb/def.hpp +7 -4
  1724. data/third_party/upb/upb/encode.c +43 -28
  1725. data/third_party/upb/upb/encode.h +16 -6
  1726. data/third_party/upb/upb/extension_registry.c +93 -0
  1727. data/third_party/upb/upb/extension_registry.h +84 -0
  1728. data/third_party/upb/upb/{decode_internal.h → internal/decode.h} +5 -5
  1729. data/third_party/upb/upb/internal/table.h +385 -0
  1730. data/third_party/upb/upb/{upb_internal.h → internal/upb.h} +3 -3
  1731. data/third_party/upb/upb/internal/vsnprintf_compat.h +52 -0
  1732. data/third_party/upb/upb/json_decode.c +1512 -0
  1733. data/third_party/upb/upb/json_decode.h +47 -0
  1734. data/third_party/upb/upb/json_encode.c +780 -0
  1735. data/third_party/upb/upb/json_encode.h +65 -0
  1736. data/third_party/upb/upb/map.c +108 -0
  1737. data/third_party/upb/upb/map.h +117 -0
  1738. data/third_party/upb/upb/message_value.h +66 -0
  1739. data/third_party/upb/upb/mini_table.c +1147 -0
  1740. data/third_party/upb/upb/mini_table.h +189 -0
  1741. data/third_party/upb/upb/mini_table.hpp +112 -0
  1742. data/third_party/upb/upb/msg.c +6 -68
  1743. data/third_party/upb/upb/msg.h +2 -46
  1744. data/third_party/upb/upb/msg_internal.h +77 -58
  1745. data/third_party/upb/upb/port_def.inc +10 -1
  1746. data/third_party/upb/upb/port_undef.inc +2 -0
  1747. data/third_party/upb/upb/reflection.c +2 -159
  1748. data/third_party/upb/upb/reflection.h +2 -112
  1749. data/third_party/upb/upb/status.c +86 -0
  1750. data/third_party/upb/upb/status.h +66 -0
  1751. data/third_party/upb/upb/table.c +12 -8
  1752. data/third_party/upb/upb/table_internal.h +3 -350
  1753. data/third_party/upb/upb/text_encode.c +3 -2
  1754. data/third_party/upb/upb/upb.c +4 -290
  1755. data/third_party/upb/upb/upb.h +8 -167
  1756. data/third_party/zlib/compress.c +3 -3
  1757. data/third_party/zlib/crc32.c +975 -292
  1758. data/third_party/zlib/crc32.h +9441 -436
  1759. data/third_party/zlib/deflate.c +183 -129
  1760. data/third_party/zlib/deflate.h +12 -15
  1761. data/third_party/zlib/gzguts.h +3 -2
  1762. data/third_party/zlib/gzlib.c +6 -4
  1763. data/third_party/zlib/gzread.c +8 -12
  1764. data/third_party/zlib/gzwrite.c +26 -14
  1765. data/third_party/zlib/infback.c +12 -8
  1766. data/third_party/zlib/inffast.c +14 -14
  1767. data/third_party/zlib/inflate.c +44 -10
  1768. data/third_party/zlib/inflate.h +3 -2
  1769. data/third_party/zlib/inftrees.c +3 -3
  1770. data/third_party/zlib/inftrees.h +1 -1
  1771. data/third_party/zlib/trees.c +85 -107
  1772. data/third_party/zlib/uncompr.c +2 -2
  1773. data/third_party/zlib/zconf.h +16 -3
  1774. data/third_party/zlib/zlib.h +129 -106
  1775. data/third_party/zlib/zutil.c +11 -9
  1776. data/third_party/zlib/zutil.h +13 -9
  1777. metadata +424 -135
  1778. data/include/grpc/impl/codegen/gpr_slice.h +0 -71
  1779. data/src/core/ext/filters/client_channel/http_connect_handshaker.h +0 -42
  1780. data/src/core/ext/filters/client_channel/lb_policy_factory.h +0 -48
  1781. data/src/core/ext/filters/client_channel/lb_policy_registry.cc +0 -185
  1782. data/src/core/ext/filters/client_channel/lb_policy_registry.h +0 -65
  1783. data/src/core/ext/filters/client_channel/proxy_mapper.h +0 -54
  1784. data/src/core/ext/filters/client_channel/proxy_mapper_registry.cc +0 -89
  1785. data/src/core/ext/filters/client_channel/proxy_mapper_registry.h +0 -50
  1786. data/src/core/ext/filters/client_channel/resolver_result_parsing.cc +0 -186
  1787. data/src/core/ext/filters/client_idle/client_idle_filter.cc +0 -201
  1788. data/src/core/ext/filters/fault_injection/service_config_parser.cc +0 -179
  1789. data/src/core/ext/filters/http/message_compress/message_compress_filter.cc +0 -456
  1790. data/src/core/ext/filters/http/message_compress/message_compress_filter.h +0 -53
  1791. data/src/core/ext/filters/http/message_compress/message_decompress_filter.cc +0 -386
  1792. data/src/core/ext/filters/max_age/max_age_filter.cc +0 -566
  1793. data/src/core/ext/filters/server_config_selector/server_config_selector.cc +0 -67
  1794. data/src/core/ext/xds/certificate_provider_registry.cc +0 -103
  1795. data/src/core/ext/xds/certificate_provider_registry.h +0 -57
  1796. data/src/core/lib/channel/handshaker_factory.h +0 -50
  1797. data/src/core/lib/channel/handshaker_registry.cc +0 -50
  1798. data/src/core/lib/channel/handshaker_registry.h +0 -71
  1799. data/src/core/lib/event_engine/sockaddr.cc +0 -40
  1800. data/src/core/lib/event_engine/sockaddr.h +0 -44
  1801. data/src/core/lib/gpr/env.h +0 -40
  1802. data/src/core/lib/gpr/env_linux.cc +0 -75
  1803. data/src/core/lib/gpr/env_posix.cc +0 -46
  1804. data/src/core/lib/gpr/env_windows.cc +0 -74
  1805. data/src/core/lib/gpr/murmur_hash.cc +0 -82
  1806. data/src/core/lib/gpr/murmur_hash.h +0 -29
  1807. data/src/core/lib/gpr/string_windows.h +0 -32
  1808. data/src/core/lib/gpr/tls.h +0 -157
  1809. data/src/core/lib/gprpp/capture.h +0 -76
  1810. data/src/core/lib/iomgr/endpoint_pair_event_engine.cc +0 -32
  1811. data/src/core/lib/iomgr/error_internal.h +0 -66
  1812. data/src/core/lib/iomgr/ev_epollex_linux.cc +0 -1657
  1813. data/src/core/lib/iomgr/ev_epollex_linux.h +0 -30
  1814. data/src/core/lib/iomgr/event_engine/endpoint.cc +0 -172
  1815. data/src/core/lib/iomgr/event_engine/endpoint.h +0 -52
  1816. data/src/core/lib/iomgr/event_engine/iomgr.cc +0 -85
  1817. data/src/core/lib/iomgr/event_engine/pollset.cc +0 -87
  1818. data/src/core/lib/iomgr/event_engine/resolved_address_internal.cc +0 -47
  1819. data/src/core/lib/iomgr/event_engine/resolver.cc +0 -133
  1820. data/src/core/lib/iomgr/event_engine/resolver.h +0 -56
  1821. data/src/core/lib/iomgr/event_engine/tcp.cc +0 -296
  1822. data/src/core/lib/iomgr/event_engine/timer.cc +0 -62
  1823. data/src/core/lib/iomgr/executor/mpmcqueue.cc +0 -182
  1824. data/src/core/lib/iomgr/executor/mpmcqueue.h +0 -171
  1825. data/src/core/lib/iomgr/executor/threadpool.cc +0 -136
  1826. data/src/core/lib/iomgr/executor/threadpool.h +0 -150
  1827. data/src/core/lib/iomgr/is_epollexclusive_available.cc +0 -119
  1828. data/src/core/lib/iomgr/is_epollexclusive_available.h +0 -36
  1829. data/src/core/lib/iomgr/sys_epoll_wrapper.h +0 -30
  1830. data/src/core/lib/iomgr/time_averaged_stats.cc +0 -64
  1831. data/src/core/lib/iomgr/time_averaged_stats.h +0 -72
  1832. data/src/core/lib/profiling/basic_timers.cc +0 -295
  1833. data/src/core/lib/profiling/stap_timers.cc +0 -50
  1834. data/src/core/lib/profiling/timers.h +0 -94
  1835. data/src/core/lib/security/security_connector/load_system_roots_linux.h +0 -46
  1836. data/src/core/lib/slice/slice_api.cc +0 -39
  1837. data/src/core/lib/slice/slice_refcount_base.h +0 -61
  1838. data/src/core/lib/slice/slice_split.cc +0 -100
  1839. data/src/core/lib/slice/slice_split.h +0 -40
  1840. data/src/core/lib/transport/byte_stream.cc +0 -162
  1841. data/src/core/lib/transport/byte_stream.h +0 -166
  1842. data/third_party/abseil-cpp/absl/container/internal/have_sse.h +0 -50
@@ -82,32 +82,56 @@ UPB_INLINE xds_type_matcher_v3_Matcher* xds_type_matcher_v3_Matcher_parse_ex(con
82
82
  return ret;
83
83
  }
84
84
  UPB_INLINE char* xds_type_matcher_v3_Matcher_serialize(const xds_type_matcher_v3_Matcher* msg, upb_Arena* arena, size_t* len) {
85
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_msginit, 0, arena, len);
85
+ char* ptr;
86
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_msginit, 0, arena, &ptr, len);
87
+ return ptr;
86
88
  }
87
89
  UPB_INLINE char* xds_type_matcher_v3_Matcher_serialize_ex(const xds_type_matcher_v3_Matcher* msg, int options,
88
90
  upb_Arena* arena, size_t* len) {
89
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_msginit, options, arena, len);
91
+ char* ptr;
92
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_msginit, options, arena, &ptr, len);
93
+ return ptr;
90
94
  }
91
95
  typedef enum {
92
96
  xds_type_matcher_v3_Matcher_matcher_type_matcher_list = 1,
93
97
  xds_type_matcher_v3_Matcher_matcher_type_matcher_tree = 2,
94
98
  xds_type_matcher_v3_Matcher_matcher_type_NOT_SET = 0
95
99
  } xds_type_matcher_v3_Matcher_matcher_type_oneofcases;
96
- UPB_INLINE xds_type_matcher_v3_Matcher_matcher_type_oneofcases xds_type_matcher_v3_Matcher_matcher_type_case(const xds_type_matcher_v3_Matcher* msg) { return (xds_type_matcher_v3_Matcher_matcher_type_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(12, 24), int32_t); }
97
-
98
- UPB_INLINE bool xds_type_matcher_v3_Matcher_has_matcher_list(const xds_type_matcher_v3_Matcher *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 1; }
99
- UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherList* xds_type_matcher_v3_Matcher_matcher_list(const xds_type_matcher_v3_Matcher *msg) { return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher_MatcherList*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 1, NULL); }
100
- UPB_INLINE bool xds_type_matcher_v3_Matcher_has_matcher_tree(const xds_type_matcher_v3_Matcher *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 2; }
101
- UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherTree* xds_type_matcher_v3_Matcher_matcher_tree(const xds_type_matcher_v3_Matcher *msg) { return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher_MatcherTree*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 2, NULL); }
102
- UPB_INLINE bool xds_type_matcher_v3_Matcher_has_on_no_match(const xds_type_matcher_v3_Matcher *msg) { return _upb_hasbit(msg, 1); }
100
+ UPB_INLINE xds_type_matcher_v3_Matcher_matcher_type_oneofcases xds_type_matcher_v3_Matcher_matcher_type_case(const xds_type_matcher_v3_Matcher* msg) {
101
+ return (xds_type_matcher_v3_Matcher_matcher_type_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t);
102
+ }
103
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_has_matcher_list(const xds_type_matcher_v3_Matcher* msg) {
104
+ return _upb_getoneofcase(msg, UPB_SIZE(4, 4)) == 1;
105
+ }
106
+ UPB_INLINE void xds_type_matcher_v3_Matcher_clear_matcher_list(const xds_type_matcher_v3_Matcher* msg) {
107
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherList*, UPB_SIZE(12, 16), 0, UPB_SIZE(4, 4), xds_type_matcher_v3_Matcher_matcher_type_NOT_SET);
108
+ }
109
+ UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherList* xds_type_matcher_v3_Matcher_matcher_list(const xds_type_matcher_v3_Matcher* msg) {
110
+ return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher_MatcherList*, UPB_SIZE(12, 16), UPB_SIZE(4, 4), 1, NULL);
111
+ }
112
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_has_matcher_tree(const xds_type_matcher_v3_Matcher* msg) {
113
+ return _upb_getoneofcase(msg, UPB_SIZE(4, 4)) == 2;
114
+ }
115
+ UPB_INLINE void xds_type_matcher_v3_Matcher_clear_matcher_tree(const xds_type_matcher_v3_Matcher* msg) {
116
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherTree*, UPB_SIZE(12, 16), 0, UPB_SIZE(4, 4), xds_type_matcher_v3_Matcher_matcher_type_NOT_SET);
117
+ }
118
+ UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherTree* xds_type_matcher_v3_Matcher_matcher_tree(const xds_type_matcher_v3_Matcher* msg) {
119
+ return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher_MatcherTree*, UPB_SIZE(12, 16), UPB_SIZE(4, 4), 2, NULL);
120
+ }
121
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_has_on_no_match(const xds_type_matcher_v3_Matcher* msg) {
122
+ return _upb_hasbit(msg, 1);
123
+ }
124
+ UPB_INLINE void xds_type_matcher_v3_Matcher_clear_on_no_match(const xds_type_matcher_v3_Matcher* msg) {
125
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), const upb_Message*) = NULL;
126
+ }
103
127
  UPB_INLINE const xds_type_matcher_v3_Matcher_OnMatch* xds_type_matcher_v3_Matcher_on_no_match(const xds_type_matcher_v3_Matcher* msg) {
104
- return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const xds_type_matcher_v3_Matcher_OnMatch*);
128
+ return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), const xds_type_matcher_v3_Matcher_OnMatch*);
105
129
  }
106
130
 
107
131
  UPB_INLINE void xds_type_matcher_v3_Matcher_set_matcher_list(xds_type_matcher_v3_Matcher *msg, xds_type_matcher_v3_Matcher_MatcherList* value) {
108
- UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherList*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 1);
132
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherList*, UPB_SIZE(12, 16), value, UPB_SIZE(4, 4), 1);
109
133
  }
110
- UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList* xds_type_matcher_v3_Matcher_mutable_matcher_list(xds_type_matcher_v3_Matcher *msg, upb_Arena *arena) {
134
+ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList* xds_type_matcher_v3_Matcher_mutable_matcher_list(xds_type_matcher_v3_Matcher* msg, upb_Arena* arena) {
111
135
  struct xds_type_matcher_v3_Matcher_MatcherList* sub = (struct xds_type_matcher_v3_Matcher_MatcherList*)xds_type_matcher_v3_Matcher_matcher_list(msg);
112
136
  if (sub == NULL) {
113
137
  sub = (struct xds_type_matcher_v3_Matcher_MatcherList*)_upb_Message_New(&xds_type_matcher_v3_Matcher_MatcherList_msginit, arena);
@@ -117,9 +141,9 @@ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList* xds_type_matcher_v3_M
117
141
  return sub;
118
142
  }
119
143
  UPB_INLINE void xds_type_matcher_v3_Matcher_set_matcher_tree(xds_type_matcher_v3_Matcher *msg, xds_type_matcher_v3_Matcher_MatcherTree* value) {
120
- UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherTree*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 2);
144
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherTree*, UPB_SIZE(12, 16), value, UPB_SIZE(4, 4), 2);
121
145
  }
122
- UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherTree* xds_type_matcher_v3_Matcher_mutable_matcher_tree(xds_type_matcher_v3_Matcher *msg, upb_Arena *arena) {
146
+ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherTree* xds_type_matcher_v3_Matcher_mutable_matcher_tree(xds_type_matcher_v3_Matcher* msg, upb_Arena* arena) {
123
147
  struct xds_type_matcher_v3_Matcher_MatcherTree* sub = (struct xds_type_matcher_v3_Matcher_MatcherTree*)xds_type_matcher_v3_Matcher_matcher_tree(msg);
124
148
  if (sub == NULL) {
125
149
  sub = (struct xds_type_matcher_v3_Matcher_MatcherTree*)_upb_Message_New(&xds_type_matcher_v3_Matcher_MatcherTree_msginit, arena);
@@ -130,9 +154,9 @@ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherTree* xds_type_matcher_v3_M
130
154
  }
131
155
  UPB_INLINE void xds_type_matcher_v3_Matcher_set_on_no_match(xds_type_matcher_v3_Matcher *msg, xds_type_matcher_v3_Matcher_OnMatch* value) {
132
156
  _upb_sethas(msg, 1);
133
- *UPB_PTR_AT(msg, UPB_SIZE(4, 8), xds_type_matcher_v3_Matcher_OnMatch*) = value;
157
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), xds_type_matcher_v3_Matcher_OnMatch*) = value;
134
158
  }
135
- UPB_INLINE struct xds_type_matcher_v3_Matcher_OnMatch* xds_type_matcher_v3_Matcher_mutable_on_no_match(xds_type_matcher_v3_Matcher *msg, upb_Arena *arena) {
159
+ UPB_INLINE struct xds_type_matcher_v3_Matcher_OnMatch* xds_type_matcher_v3_Matcher_mutable_on_no_match(xds_type_matcher_v3_Matcher* msg, upb_Arena* arena) {
136
160
  struct xds_type_matcher_v3_Matcher_OnMatch* sub = (struct xds_type_matcher_v3_Matcher_OnMatch*)xds_type_matcher_v3_Matcher_on_no_match(msg);
137
161
  if (sub == NULL) {
138
162
  sub = (struct xds_type_matcher_v3_Matcher_OnMatch*)_upb_Message_New(&xds_type_matcher_v3_Matcher_OnMatch_msginit, arena);
@@ -167,28 +191,47 @@ UPB_INLINE xds_type_matcher_v3_Matcher_OnMatch* xds_type_matcher_v3_Matcher_OnMa
167
191
  return ret;
168
192
  }
169
193
  UPB_INLINE char* xds_type_matcher_v3_Matcher_OnMatch_serialize(const xds_type_matcher_v3_Matcher_OnMatch* msg, upb_Arena* arena, size_t* len) {
170
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_OnMatch_msginit, 0, arena, len);
194
+ char* ptr;
195
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_OnMatch_msginit, 0, arena, &ptr, len);
196
+ return ptr;
171
197
  }
172
198
  UPB_INLINE char* xds_type_matcher_v3_Matcher_OnMatch_serialize_ex(const xds_type_matcher_v3_Matcher_OnMatch* msg, int options,
173
199
  upb_Arena* arena, size_t* len) {
174
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_OnMatch_msginit, options, arena, len);
200
+ char* ptr;
201
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_OnMatch_msginit, options, arena, &ptr, len);
202
+ return ptr;
175
203
  }
176
204
  typedef enum {
177
205
  xds_type_matcher_v3_Matcher_OnMatch_on_match_matcher = 1,
178
206
  xds_type_matcher_v3_Matcher_OnMatch_on_match_action = 2,
179
207
  xds_type_matcher_v3_Matcher_OnMatch_on_match_NOT_SET = 0
180
208
  } xds_type_matcher_v3_Matcher_OnMatch_on_match_oneofcases;
181
- UPB_INLINE xds_type_matcher_v3_Matcher_OnMatch_on_match_oneofcases xds_type_matcher_v3_Matcher_OnMatch_on_match_case(const xds_type_matcher_v3_Matcher_OnMatch* msg) { return (xds_type_matcher_v3_Matcher_OnMatch_on_match_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(4, 8), int32_t); }
182
-
183
- UPB_INLINE bool xds_type_matcher_v3_Matcher_OnMatch_has_matcher(const xds_type_matcher_v3_Matcher_OnMatch *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 1; }
184
- UPB_INLINE const xds_type_matcher_v3_Matcher* xds_type_matcher_v3_Matcher_OnMatch_matcher(const xds_type_matcher_v3_Matcher_OnMatch *msg) { return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 1, NULL); }
185
- UPB_INLINE bool xds_type_matcher_v3_Matcher_OnMatch_has_action(const xds_type_matcher_v3_Matcher_OnMatch *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 2; }
186
- UPB_INLINE const struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_OnMatch_action(const xds_type_matcher_v3_Matcher_OnMatch *msg) { return UPB_READ_ONEOF(msg, const struct xds_core_v3_TypedExtensionConfig*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 2, NULL); }
209
+ UPB_INLINE xds_type_matcher_v3_Matcher_OnMatch_on_match_oneofcases xds_type_matcher_v3_Matcher_OnMatch_on_match_case(const xds_type_matcher_v3_Matcher_OnMatch* msg) {
210
+ return (xds_type_matcher_v3_Matcher_OnMatch_on_match_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t);
211
+ }
212
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_OnMatch_has_matcher(const xds_type_matcher_v3_Matcher_OnMatch* msg) {
213
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 1;
214
+ }
215
+ UPB_INLINE void xds_type_matcher_v3_Matcher_OnMatch_clear_matcher(const xds_type_matcher_v3_Matcher_OnMatch* msg) {
216
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher*, UPB_SIZE(4, 8), 0, UPB_SIZE(0, 0), xds_type_matcher_v3_Matcher_OnMatch_on_match_NOT_SET);
217
+ }
218
+ UPB_INLINE const xds_type_matcher_v3_Matcher* xds_type_matcher_v3_Matcher_OnMatch_matcher(const xds_type_matcher_v3_Matcher_OnMatch* msg) {
219
+ return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher*, UPB_SIZE(4, 8), UPB_SIZE(0, 0), 1, NULL);
220
+ }
221
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_OnMatch_has_action(const xds_type_matcher_v3_Matcher_OnMatch* msg) {
222
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 2;
223
+ }
224
+ UPB_INLINE void xds_type_matcher_v3_Matcher_OnMatch_clear_action(const xds_type_matcher_v3_Matcher_OnMatch* msg) {
225
+ UPB_WRITE_ONEOF(msg, struct xds_core_v3_TypedExtensionConfig*, UPB_SIZE(4, 8), 0, UPB_SIZE(0, 0), xds_type_matcher_v3_Matcher_OnMatch_on_match_NOT_SET);
226
+ }
227
+ UPB_INLINE const struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_OnMatch_action(const xds_type_matcher_v3_Matcher_OnMatch* msg) {
228
+ return UPB_READ_ONEOF(msg, const struct xds_core_v3_TypedExtensionConfig*, UPB_SIZE(4, 8), UPB_SIZE(0, 0), 2, NULL);
229
+ }
187
230
 
188
231
  UPB_INLINE void xds_type_matcher_v3_Matcher_OnMatch_set_matcher(xds_type_matcher_v3_Matcher_OnMatch *msg, xds_type_matcher_v3_Matcher* value) {
189
- UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 1);
232
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher*, UPB_SIZE(4, 8), value, UPB_SIZE(0, 0), 1);
190
233
  }
191
- UPB_INLINE struct xds_type_matcher_v3_Matcher* xds_type_matcher_v3_Matcher_OnMatch_mutable_matcher(xds_type_matcher_v3_Matcher_OnMatch *msg, upb_Arena *arena) {
234
+ UPB_INLINE struct xds_type_matcher_v3_Matcher* xds_type_matcher_v3_Matcher_OnMatch_mutable_matcher(xds_type_matcher_v3_Matcher_OnMatch* msg, upb_Arena* arena) {
192
235
  struct xds_type_matcher_v3_Matcher* sub = (struct xds_type_matcher_v3_Matcher*)xds_type_matcher_v3_Matcher_OnMatch_matcher(msg);
193
236
  if (sub == NULL) {
194
237
  sub = (struct xds_type_matcher_v3_Matcher*)_upb_Message_New(&xds_type_matcher_v3_Matcher_msginit, arena);
@@ -198,9 +241,9 @@ UPB_INLINE struct xds_type_matcher_v3_Matcher* xds_type_matcher_v3_Matcher_OnMat
198
241
  return sub;
199
242
  }
200
243
  UPB_INLINE void xds_type_matcher_v3_Matcher_OnMatch_set_action(xds_type_matcher_v3_Matcher_OnMatch *msg, struct xds_core_v3_TypedExtensionConfig* value) {
201
- UPB_WRITE_ONEOF(msg, struct xds_core_v3_TypedExtensionConfig*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 2);
244
+ UPB_WRITE_ONEOF(msg, struct xds_core_v3_TypedExtensionConfig*, UPB_SIZE(4, 8), value, UPB_SIZE(0, 0), 2);
202
245
  }
203
- UPB_INLINE struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_OnMatch_mutable_action(xds_type_matcher_v3_Matcher_OnMatch *msg, upb_Arena *arena) {
246
+ UPB_INLINE struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_OnMatch_mutable_action(xds_type_matcher_v3_Matcher_OnMatch* msg, upb_Arena* arena) {
204
247
  struct xds_core_v3_TypedExtensionConfig* sub = (struct xds_core_v3_TypedExtensionConfig*)xds_type_matcher_v3_Matcher_OnMatch_action(msg);
205
248
  if (sub == NULL) {
206
249
  sub = (struct xds_core_v3_TypedExtensionConfig*)_upb_Message_New(&xds_core_v3_TypedExtensionConfig_msginit, arena);
@@ -235,25 +278,35 @@ UPB_INLINE xds_type_matcher_v3_Matcher_MatcherList* xds_type_matcher_v3_Matcher_
235
278
  return ret;
236
279
  }
237
280
  UPB_INLINE char* xds_type_matcher_v3_Matcher_MatcherList_serialize(const xds_type_matcher_v3_Matcher_MatcherList* msg, upb_Arena* arena, size_t* len) {
238
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_msginit, 0, arena, len);
281
+ char* ptr;
282
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_msginit, 0, arena, &ptr, len);
283
+ return ptr;
239
284
  }
240
285
  UPB_INLINE char* xds_type_matcher_v3_Matcher_MatcherList_serialize_ex(const xds_type_matcher_v3_Matcher_MatcherList* msg, int options,
241
286
  upb_Arena* arena, size_t* len) {
242
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_msginit, options, arena, len);
287
+ char* ptr;
288
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_msginit, options, arena, &ptr, len);
289
+ return ptr;
290
+ }
291
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_has_matchers(const xds_type_matcher_v3_Matcher_MatcherList* msg) {
292
+ return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0));
293
+ }
294
+ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_clear_matchers(const xds_type_matcher_v3_Matcher_MatcherList* msg) {
295
+ _upb_array_detach(msg, UPB_SIZE(0, 0));
296
+ }
297
+ UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* const* xds_type_matcher_v3_Matcher_MatcherList_matchers(const xds_type_matcher_v3_Matcher_MatcherList* msg, size_t* len) {
298
+ return (const xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len);
243
299
  }
244
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_has_matchers(const xds_type_matcher_v3_Matcher_MatcherList *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0)); }
245
- UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* const* xds_type_matcher_v3_Matcher_MatcherList_matchers(const xds_type_matcher_v3_Matcher_MatcherList *msg, size_t *len) { return (const xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); }
246
300
 
247
- UPB_INLINE xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher** xds_type_matcher_v3_Matcher_MatcherList_mutable_matchers(xds_type_matcher_v3_Matcher_MatcherList *msg, size_t *len) {
301
+ UPB_INLINE xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher** xds_type_matcher_v3_Matcher_MatcherList_mutable_matchers(xds_type_matcher_v3_Matcher_MatcherList* msg, size_t* len) {
248
302
  return (xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
249
303
  }
250
- UPB_INLINE xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher** xds_type_matcher_v3_Matcher_MatcherList_resize_matchers(xds_type_matcher_v3_Matcher_MatcherList *msg, size_t len, upb_Arena *arena) {
304
+ UPB_INLINE xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher** xds_type_matcher_v3_Matcher_MatcherList_resize_matchers(xds_type_matcher_v3_Matcher_MatcherList* msg, size_t len, upb_Arena* arena) {
251
305
  return (xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher**)_upb_Array_Resize_accessor2(msg, UPB_SIZE(0, 0), len, UPB_SIZE(2, 3), arena);
252
306
  }
253
- UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* xds_type_matcher_v3_Matcher_MatcherList_add_matchers(xds_type_matcher_v3_Matcher_MatcherList *msg, upb_Arena *arena) {
307
+ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* xds_type_matcher_v3_Matcher_MatcherList_add_matchers(xds_type_matcher_v3_Matcher_MatcherList* msg, upb_Arena* arena) {
254
308
  struct xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* sub = (struct xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher*)_upb_Message_New(&xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_msginit, arena);
255
- bool ok = _upb_Array_Append_accessor2(
256
- msg, UPB_SIZE(0, 0), UPB_SIZE(2, 3), &sub, arena);
309
+ bool ok = _upb_Array_Append_accessor2(msg, UPB_SIZE(0, 0), UPB_SIZE(2, 3), &sub, arena);
257
310
  if (!ok) return NULL;
258
311
  return sub;
259
312
  }
@@ -283,11 +336,15 @@ UPB_INLINE xds_type_matcher_v3_Matcher_MatcherList_Predicate* xds_type_matcher_v
283
336
  return ret;
284
337
  }
285
338
  UPB_INLINE char* xds_type_matcher_v3_Matcher_MatcherList_Predicate_serialize(const xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg, upb_Arena* arena, size_t* len) {
286
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_Predicate_msginit, 0, arena, len);
339
+ char* ptr;
340
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_Predicate_msginit, 0, arena, &ptr, len);
341
+ return ptr;
287
342
  }
288
343
  UPB_INLINE char* xds_type_matcher_v3_Matcher_MatcherList_Predicate_serialize_ex(const xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg, int options,
289
344
  upb_Arena* arena, size_t* len) {
290
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_Predicate_msginit, options, arena, len);
345
+ char* ptr;
346
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_Predicate_msginit, options, arena, &ptr, len);
347
+ return ptr;
291
348
  }
292
349
  typedef enum {
293
350
  xds_type_matcher_v3_Matcher_MatcherList_Predicate_match_type_single_predicate = 1,
@@ -296,21 +353,50 @@ typedef enum {
296
353
  xds_type_matcher_v3_Matcher_MatcherList_Predicate_match_type_not_matcher = 4,
297
354
  xds_type_matcher_v3_Matcher_MatcherList_Predicate_match_type_NOT_SET = 0
298
355
  } xds_type_matcher_v3_Matcher_MatcherList_Predicate_match_type_oneofcases;
299
- UPB_INLINE xds_type_matcher_v3_Matcher_MatcherList_Predicate_match_type_oneofcases xds_type_matcher_v3_Matcher_MatcherList_Predicate_match_type_case(const xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg) { return (xds_type_matcher_v3_Matcher_MatcherList_Predicate_match_type_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(4, 8), int32_t); }
300
-
301
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_Predicate_has_single_predicate(const xds_type_matcher_v3_Matcher_MatcherList_Predicate *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 1; }
302
- UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* xds_type_matcher_v3_Matcher_MatcherList_Predicate_single_predicate(const xds_type_matcher_v3_Matcher_MatcherList_Predicate *msg) { return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 1, NULL); }
303
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_Predicate_has_or_matcher(const xds_type_matcher_v3_Matcher_MatcherList_Predicate *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 2; }
304
- UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* xds_type_matcher_v3_Matcher_MatcherList_Predicate_or_matcher(const xds_type_matcher_v3_Matcher_MatcherList_Predicate *msg) { return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 2, NULL); }
305
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_Predicate_has_and_matcher(const xds_type_matcher_v3_Matcher_MatcherList_Predicate *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 3; }
306
- UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* xds_type_matcher_v3_Matcher_MatcherList_Predicate_and_matcher(const xds_type_matcher_v3_Matcher_MatcherList_Predicate *msg) { return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 3, NULL); }
307
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_Predicate_has_not_matcher(const xds_type_matcher_v3_Matcher_MatcherList_Predicate *msg) { return _upb_getoneofcase(msg, UPB_SIZE(4, 8)) == 4; }
308
- UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherList_Predicate* xds_type_matcher_v3_Matcher_MatcherList_Predicate_not_matcher(const xds_type_matcher_v3_Matcher_MatcherList_Predicate *msg) { return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher_MatcherList_Predicate*, UPB_SIZE(0, 0), UPB_SIZE(4, 8), 4, NULL); }
356
+ UPB_INLINE xds_type_matcher_v3_Matcher_MatcherList_Predicate_match_type_oneofcases xds_type_matcher_v3_Matcher_MatcherList_Predicate_match_type_case(const xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg) {
357
+ return (xds_type_matcher_v3_Matcher_MatcherList_Predicate_match_type_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t);
358
+ }
359
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_Predicate_has_single_predicate(const xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg) {
360
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 1;
361
+ }
362
+ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_Predicate_clear_single_predicate(const xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg) {
363
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate*, UPB_SIZE(4, 8), 0, UPB_SIZE(0, 0), xds_type_matcher_v3_Matcher_MatcherList_Predicate_match_type_NOT_SET);
364
+ }
365
+ UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* xds_type_matcher_v3_Matcher_MatcherList_Predicate_single_predicate(const xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg) {
366
+ return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate*, UPB_SIZE(4, 8), UPB_SIZE(0, 0), 1, NULL);
367
+ }
368
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_Predicate_has_or_matcher(const xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg) {
369
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 2;
370
+ }
371
+ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_Predicate_clear_or_matcher(const xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg) {
372
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList*, UPB_SIZE(4, 8), 0, UPB_SIZE(0, 0), xds_type_matcher_v3_Matcher_MatcherList_Predicate_match_type_NOT_SET);
373
+ }
374
+ UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* xds_type_matcher_v3_Matcher_MatcherList_Predicate_or_matcher(const xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg) {
375
+ return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList*, UPB_SIZE(4, 8), UPB_SIZE(0, 0), 2, NULL);
376
+ }
377
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_Predicate_has_and_matcher(const xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg) {
378
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 3;
379
+ }
380
+ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_Predicate_clear_and_matcher(const xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg) {
381
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList*, UPB_SIZE(4, 8), 0, UPB_SIZE(0, 0), xds_type_matcher_v3_Matcher_MatcherList_Predicate_match_type_NOT_SET);
382
+ }
383
+ UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* xds_type_matcher_v3_Matcher_MatcherList_Predicate_and_matcher(const xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg) {
384
+ return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList*, UPB_SIZE(4, 8), UPB_SIZE(0, 0), 3, NULL);
385
+ }
386
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_Predicate_has_not_matcher(const xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg) {
387
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 4;
388
+ }
389
+ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_Predicate_clear_not_matcher(const xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg) {
390
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherList_Predicate*, UPB_SIZE(4, 8), 0, UPB_SIZE(0, 0), xds_type_matcher_v3_Matcher_MatcherList_Predicate_match_type_NOT_SET);
391
+ }
392
+ UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherList_Predicate* xds_type_matcher_v3_Matcher_MatcherList_Predicate_not_matcher(const xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg) {
393
+ return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher_MatcherList_Predicate*, UPB_SIZE(4, 8), UPB_SIZE(0, 0), 4, NULL);
394
+ }
309
395
 
310
396
  UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_Predicate_set_single_predicate(xds_type_matcher_v3_Matcher_MatcherList_Predicate *msg, xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* value) {
311
- UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 1);
397
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate*, UPB_SIZE(4, 8), value, UPB_SIZE(0, 0), 1);
312
398
  }
313
- UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* xds_type_matcher_v3_Matcher_MatcherList_Predicate_mutable_single_predicate(xds_type_matcher_v3_Matcher_MatcherList_Predicate *msg, upb_Arena *arena) {
399
+ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* xds_type_matcher_v3_Matcher_MatcherList_Predicate_mutable_single_predicate(xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg, upb_Arena* arena) {
314
400
  struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* sub = (struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate*)xds_type_matcher_v3_Matcher_MatcherList_Predicate_single_predicate(msg);
315
401
  if (sub == NULL) {
316
402
  sub = (struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate*)_upb_Message_New(&xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_msginit, arena);
@@ -320,9 +406,9 @@ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredic
320
406
  return sub;
321
407
  }
322
408
  UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_Predicate_set_or_matcher(xds_type_matcher_v3_Matcher_MatcherList_Predicate *msg, xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* value) {
323
- UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 2);
409
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList*, UPB_SIZE(4, 8), value, UPB_SIZE(0, 0), 2);
324
410
  }
325
- UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* xds_type_matcher_v3_Matcher_MatcherList_Predicate_mutable_or_matcher(xds_type_matcher_v3_Matcher_MatcherList_Predicate *msg, upb_Arena *arena) {
411
+ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* xds_type_matcher_v3_Matcher_MatcherList_Predicate_mutable_or_matcher(xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg, upb_Arena* arena) {
326
412
  struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* sub = (struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList*)xds_type_matcher_v3_Matcher_MatcherList_Predicate_or_matcher(msg);
327
413
  if (sub == NULL) {
328
414
  sub = (struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList*)_upb_Message_New(&xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_msginit, arena);
@@ -332,9 +418,9 @@ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateLis
332
418
  return sub;
333
419
  }
334
420
  UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_Predicate_set_and_matcher(xds_type_matcher_v3_Matcher_MatcherList_Predicate *msg, xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* value) {
335
- UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 3);
421
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList*, UPB_SIZE(4, 8), value, UPB_SIZE(0, 0), 3);
336
422
  }
337
- UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* xds_type_matcher_v3_Matcher_MatcherList_Predicate_mutable_and_matcher(xds_type_matcher_v3_Matcher_MatcherList_Predicate *msg, upb_Arena *arena) {
423
+ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* xds_type_matcher_v3_Matcher_MatcherList_Predicate_mutable_and_matcher(xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg, upb_Arena* arena) {
338
424
  struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* sub = (struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList*)xds_type_matcher_v3_Matcher_MatcherList_Predicate_and_matcher(msg);
339
425
  if (sub == NULL) {
340
426
  sub = (struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList*)_upb_Message_New(&xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_msginit, arena);
@@ -344,9 +430,9 @@ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateLis
344
430
  return sub;
345
431
  }
346
432
  UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_Predicate_set_not_matcher(xds_type_matcher_v3_Matcher_MatcherList_Predicate *msg, xds_type_matcher_v3_Matcher_MatcherList_Predicate* value) {
347
- UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherList_Predicate*, UPB_SIZE(0, 0), value, UPB_SIZE(4, 8), 4);
433
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherList_Predicate*, UPB_SIZE(4, 8), value, UPB_SIZE(0, 0), 4);
348
434
  }
349
- UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList_Predicate* xds_type_matcher_v3_Matcher_MatcherList_Predicate_mutable_not_matcher(xds_type_matcher_v3_Matcher_MatcherList_Predicate *msg, upb_Arena *arena) {
435
+ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList_Predicate* xds_type_matcher_v3_Matcher_MatcherList_Predicate_mutable_not_matcher(xds_type_matcher_v3_Matcher_MatcherList_Predicate* msg, upb_Arena* arena) {
350
436
  struct xds_type_matcher_v3_Matcher_MatcherList_Predicate* sub = (struct xds_type_matcher_v3_Matcher_MatcherList_Predicate*)xds_type_matcher_v3_Matcher_MatcherList_Predicate_not_matcher(msg);
351
437
  if (sub == NULL) {
352
438
  sub = (struct xds_type_matcher_v3_Matcher_MatcherList_Predicate*)_upb_Message_New(&xds_type_matcher_v3_Matcher_MatcherList_Predicate_msginit, arena);
@@ -381,33 +467,57 @@ UPB_INLINE xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* xd
381
467
  return ret;
382
468
  }
383
469
  UPB_INLINE char* xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_serialize(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* msg, upb_Arena* arena, size_t* len) {
384
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_msginit, 0, arena, len);
470
+ char* ptr;
471
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_msginit, 0, arena, &ptr, len);
472
+ return ptr;
385
473
  }
386
474
  UPB_INLINE char* xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_serialize_ex(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* msg, int options,
387
475
  upb_Arena* arena, size_t* len) {
388
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_msginit, options, arena, len);
476
+ char* ptr;
477
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_msginit, options, arena, &ptr, len);
478
+ return ptr;
389
479
  }
390
480
  typedef enum {
391
481
  xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_matcher_value_match = 2,
392
482
  xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_matcher_custom_match = 3,
393
483
  xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_matcher_NOT_SET = 0
394
484
  } xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_matcher_oneofcases;
395
- UPB_INLINE xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_matcher_oneofcases xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_matcher_case(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* msg) { return (xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_matcher_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(12, 24), int32_t); }
396
-
397
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_has_input(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate *msg) { return _upb_hasbit(msg, 1); }
485
+ UPB_INLINE xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_matcher_oneofcases xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_matcher_case(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* msg) {
486
+ return (xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_matcher_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t);
487
+ }
488
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_has_input(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* msg) {
489
+ return _upb_hasbit(msg, 1);
490
+ }
491
+ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_clear_input(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* msg) {
492
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), const upb_Message*) = NULL;
493
+ }
398
494
  UPB_INLINE const struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_input(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* msg) {
399
- return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct xds_core_v3_TypedExtensionConfig*);
495
+ return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), const struct xds_core_v3_TypedExtensionConfig*);
496
+ }
497
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_has_value_match(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* msg) {
498
+ return _upb_getoneofcase(msg, UPB_SIZE(4, 4)) == 2;
499
+ }
500
+ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_clear_value_match(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* msg) {
501
+ UPB_WRITE_ONEOF(msg, struct xds_type_matcher_v3_StringMatcher*, UPB_SIZE(12, 16), 0, UPB_SIZE(4, 4), xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_matcher_NOT_SET);
502
+ }
503
+ UPB_INLINE const struct xds_type_matcher_v3_StringMatcher* xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_value_match(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* msg) {
504
+ return UPB_READ_ONEOF(msg, const struct xds_type_matcher_v3_StringMatcher*, UPB_SIZE(12, 16), UPB_SIZE(4, 4), 2, NULL);
505
+ }
506
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_has_custom_match(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* msg) {
507
+ return _upb_getoneofcase(msg, UPB_SIZE(4, 4)) == 3;
508
+ }
509
+ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_clear_custom_match(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* msg) {
510
+ UPB_WRITE_ONEOF(msg, struct xds_core_v3_TypedExtensionConfig*, UPB_SIZE(12, 16), 0, UPB_SIZE(4, 4), xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_matcher_NOT_SET);
511
+ }
512
+ UPB_INLINE const struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_custom_match(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* msg) {
513
+ return UPB_READ_ONEOF(msg, const struct xds_core_v3_TypedExtensionConfig*, UPB_SIZE(12, 16), UPB_SIZE(4, 4), 3, NULL);
400
514
  }
401
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_has_value_match(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 2; }
402
- UPB_INLINE const struct xds_type_matcher_v3_StringMatcher* xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_value_match(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate *msg) { return UPB_READ_ONEOF(msg, const struct xds_type_matcher_v3_StringMatcher*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 2, NULL); }
403
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_has_custom_match(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 3; }
404
- UPB_INLINE const struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_custom_match(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate *msg) { return UPB_READ_ONEOF(msg, const struct xds_core_v3_TypedExtensionConfig*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 3, NULL); }
405
515
 
406
516
  UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_set_input(xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate *msg, struct xds_core_v3_TypedExtensionConfig* value) {
407
517
  _upb_sethas(msg, 1);
408
- *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct xds_core_v3_TypedExtensionConfig*) = value;
518
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), struct xds_core_v3_TypedExtensionConfig*) = value;
409
519
  }
410
- UPB_INLINE struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_mutable_input(xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate *msg, upb_Arena *arena) {
520
+ UPB_INLINE struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_mutable_input(xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* msg, upb_Arena* arena) {
411
521
  struct xds_core_v3_TypedExtensionConfig* sub = (struct xds_core_v3_TypedExtensionConfig*)xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_input(msg);
412
522
  if (sub == NULL) {
413
523
  sub = (struct xds_core_v3_TypedExtensionConfig*)_upb_Message_New(&xds_core_v3_TypedExtensionConfig_msginit, arena);
@@ -417,9 +527,9 @@ UPB_INLINE struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_
417
527
  return sub;
418
528
  }
419
529
  UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_set_value_match(xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate *msg, struct xds_type_matcher_v3_StringMatcher* value) {
420
- UPB_WRITE_ONEOF(msg, struct xds_type_matcher_v3_StringMatcher*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 2);
530
+ UPB_WRITE_ONEOF(msg, struct xds_type_matcher_v3_StringMatcher*, UPB_SIZE(12, 16), value, UPB_SIZE(4, 4), 2);
421
531
  }
422
- UPB_INLINE struct xds_type_matcher_v3_StringMatcher* xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_mutable_value_match(xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate *msg, upb_Arena *arena) {
532
+ UPB_INLINE struct xds_type_matcher_v3_StringMatcher* xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_mutable_value_match(xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* msg, upb_Arena* arena) {
423
533
  struct xds_type_matcher_v3_StringMatcher* sub = (struct xds_type_matcher_v3_StringMatcher*)xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_value_match(msg);
424
534
  if (sub == NULL) {
425
535
  sub = (struct xds_type_matcher_v3_StringMatcher*)_upb_Message_New(&xds_type_matcher_v3_StringMatcher_msginit, arena);
@@ -429,9 +539,9 @@ UPB_INLINE struct xds_type_matcher_v3_StringMatcher* xds_type_matcher_v3_Matcher
429
539
  return sub;
430
540
  }
431
541
  UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_set_custom_match(xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate *msg, struct xds_core_v3_TypedExtensionConfig* value) {
432
- UPB_WRITE_ONEOF(msg, struct xds_core_v3_TypedExtensionConfig*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 3);
542
+ UPB_WRITE_ONEOF(msg, struct xds_core_v3_TypedExtensionConfig*, UPB_SIZE(12, 16), value, UPB_SIZE(4, 4), 3);
433
543
  }
434
- UPB_INLINE struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_mutable_custom_match(xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate *msg, upb_Arena *arena) {
544
+ UPB_INLINE struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_mutable_custom_match(xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate* msg, upb_Arena* arena) {
435
545
  struct xds_core_v3_TypedExtensionConfig* sub = (struct xds_core_v3_TypedExtensionConfig*)xds_type_matcher_v3_Matcher_MatcherList_Predicate_SinglePredicate_custom_match(msg);
436
546
  if (sub == NULL) {
437
547
  sub = (struct xds_core_v3_TypedExtensionConfig*)_upb_Message_New(&xds_core_v3_TypedExtensionConfig_msginit, arena);
@@ -466,25 +576,35 @@ UPB_INLINE xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* xds_
466
576
  return ret;
467
577
  }
468
578
  UPB_INLINE char* xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_serialize(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* msg, upb_Arena* arena, size_t* len) {
469
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_msginit, 0, arena, len);
579
+ char* ptr;
580
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_msginit, 0, arena, &ptr, len);
581
+ return ptr;
470
582
  }
471
583
  UPB_INLINE char* xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_serialize_ex(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* msg, int options,
472
584
  upb_Arena* arena, size_t* len) {
473
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_msginit, options, arena, len);
585
+ char* ptr;
586
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_msginit, options, arena, &ptr, len);
587
+ return ptr;
588
+ }
589
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_has_predicate(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* msg) {
590
+ return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0));
591
+ }
592
+ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_clear_predicate(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* msg) {
593
+ _upb_array_detach(msg, UPB_SIZE(0, 0));
594
+ }
595
+ UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherList_Predicate* const* xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_predicate(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* msg, size_t* len) {
596
+ return (const xds_type_matcher_v3_Matcher_MatcherList_Predicate* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len);
474
597
  }
475
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_has_predicate(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0)); }
476
- UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherList_Predicate* const* xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_predicate(const xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList *msg, size_t *len) { return (const xds_type_matcher_v3_Matcher_MatcherList_Predicate* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); }
477
598
 
478
- UPB_INLINE xds_type_matcher_v3_Matcher_MatcherList_Predicate** xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_mutable_predicate(xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList *msg, size_t *len) {
599
+ UPB_INLINE xds_type_matcher_v3_Matcher_MatcherList_Predicate** xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_mutable_predicate(xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* msg, size_t* len) {
479
600
  return (xds_type_matcher_v3_Matcher_MatcherList_Predicate**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
480
601
  }
481
- UPB_INLINE xds_type_matcher_v3_Matcher_MatcherList_Predicate** xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_resize_predicate(xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList *msg, size_t len, upb_Arena *arena) {
602
+ UPB_INLINE xds_type_matcher_v3_Matcher_MatcherList_Predicate** xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_resize_predicate(xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* msg, size_t len, upb_Arena* arena) {
482
603
  return (xds_type_matcher_v3_Matcher_MatcherList_Predicate**)_upb_Array_Resize_accessor2(msg, UPB_SIZE(0, 0), len, UPB_SIZE(2, 3), arena);
483
604
  }
484
- UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList_Predicate* xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_add_predicate(xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList *msg, upb_Arena *arena) {
605
+ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList_Predicate* xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList_add_predicate(xds_type_matcher_v3_Matcher_MatcherList_Predicate_PredicateList* msg, upb_Arena* arena) {
485
606
  struct xds_type_matcher_v3_Matcher_MatcherList_Predicate* sub = (struct xds_type_matcher_v3_Matcher_MatcherList_Predicate*)_upb_Message_New(&xds_type_matcher_v3_Matcher_MatcherList_Predicate_msginit, arena);
486
- bool ok = _upb_Array_Append_accessor2(
487
- msg, UPB_SIZE(0, 0), UPB_SIZE(2, 3), &sub, arena);
607
+ bool ok = _upb_Array_Append_accessor2(msg, UPB_SIZE(0, 0), UPB_SIZE(2, 3), &sub, arena);
488
608
  if (!ok) return NULL;
489
609
  return sub;
490
610
  }
@@ -514,17 +634,31 @@ UPB_INLINE xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* xds_type_matche
514
634
  return ret;
515
635
  }
516
636
  UPB_INLINE char* xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_serialize(const xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* msg, upb_Arena* arena, size_t* len) {
517
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_msginit, 0, arena, len);
637
+ char* ptr;
638
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_msginit, 0, arena, &ptr, len);
639
+ return ptr;
518
640
  }
519
641
  UPB_INLINE char* xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_serialize_ex(const xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* msg, int options,
520
642
  upb_Arena* arena, size_t* len) {
521
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_msginit, options, arena, len);
643
+ char* ptr;
644
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_msginit, options, arena, &ptr, len);
645
+ return ptr;
646
+ }
647
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_has_predicate(const xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* msg) {
648
+ return _upb_hasbit(msg, 1);
649
+ }
650
+ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_clear_predicate(const xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* msg) {
651
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const upb_Message*) = NULL;
522
652
  }
523
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_has_predicate(const xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher *msg) { return _upb_hasbit(msg, 1); }
524
653
  UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherList_Predicate* xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_predicate(const xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* msg) {
525
654
  return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const xds_type_matcher_v3_Matcher_MatcherList_Predicate*);
526
655
  }
527
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_has_on_match(const xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher *msg) { return _upb_hasbit(msg, 2); }
656
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_has_on_match(const xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* msg) {
657
+ return _upb_hasbit(msg, 2);
658
+ }
659
+ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_clear_on_match(const xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* msg) {
660
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const upb_Message*) = NULL;
661
+ }
528
662
  UPB_INLINE const xds_type_matcher_v3_Matcher_OnMatch* xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_on_match(const xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* msg) {
529
663
  return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const xds_type_matcher_v3_Matcher_OnMatch*);
530
664
  }
@@ -533,7 +667,7 @@ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_set_predica
533
667
  _upb_sethas(msg, 1);
534
668
  *UPB_PTR_AT(msg, UPB_SIZE(4, 8), xds_type_matcher_v3_Matcher_MatcherList_Predicate*) = value;
535
669
  }
536
- UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList_Predicate* xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_mutable_predicate(xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher *msg, upb_Arena *arena) {
670
+ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherList_Predicate* xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_mutable_predicate(xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* msg, upb_Arena* arena) {
537
671
  struct xds_type_matcher_v3_Matcher_MatcherList_Predicate* sub = (struct xds_type_matcher_v3_Matcher_MatcherList_Predicate*)xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_predicate(msg);
538
672
  if (sub == NULL) {
539
673
  sub = (struct xds_type_matcher_v3_Matcher_MatcherList_Predicate*)_upb_Message_New(&xds_type_matcher_v3_Matcher_MatcherList_Predicate_msginit, arena);
@@ -546,7 +680,7 @@ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_set_on_matc
546
680
  _upb_sethas(msg, 2);
547
681
  *UPB_PTR_AT(msg, UPB_SIZE(8, 16), xds_type_matcher_v3_Matcher_OnMatch*) = value;
548
682
  }
549
- UPB_INLINE struct xds_type_matcher_v3_Matcher_OnMatch* xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_mutable_on_match(xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher *msg, upb_Arena *arena) {
683
+ UPB_INLINE struct xds_type_matcher_v3_Matcher_OnMatch* xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_mutable_on_match(xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher* msg, upb_Arena* arena) {
550
684
  struct xds_type_matcher_v3_Matcher_OnMatch* sub = (struct xds_type_matcher_v3_Matcher_OnMatch*)xds_type_matcher_v3_Matcher_MatcherList_FieldMatcher_on_match(msg);
551
685
  if (sub == NULL) {
552
686
  sub = (struct xds_type_matcher_v3_Matcher_OnMatch*)_upb_Message_New(&xds_type_matcher_v3_Matcher_OnMatch_msginit, arena);
@@ -581,11 +715,15 @@ UPB_INLINE xds_type_matcher_v3_Matcher_MatcherTree* xds_type_matcher_v3_Matcher_
581
715
  return ret;
582
716
  }
583
717
  UPB_INLINE char* xds_type_matcher_v3_Matcher_MatcherTree_serialize(const xds_type_matcher_v3_Matcher_MatcherTree* msg, upb_Arena* arena, size_t* len) {
584
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherTree_msginit, 0, arena, len);
718
+ char* ptr;
719
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherTree_msginit, 0, arena, &ptr, len);
720
+ return ptr;
585
721
  }
586
722
  UPB_INLINE char* xds_type_matcher_v3_Matcher_MatcherTree_serialize_ex(const xds_type_matcher_v3_Matcher_MatcherTree* msg, int options,
587
723
  upb_Arena* arena, size_t* len) {
588
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherTree_msginit, options, arena, len);
724
+ char* ptr;
725
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherTree_msginit, options, arena, &ptr, len);
726
+ return ptr;
589
727
  }
590
728
  typedef enum {
591
729
  xds_type_matcher_v3_Matcher_MatcherTree_tree_type_exact_match_map = 2,
@@ -593,24 +731,51 @@ typedef enum {
593
731
  xds_type_matcher_v3_Matcher_MatcherTree_tree_type_custom_match = 4,
594
732
  xds_type_matcher_v3_Matcher_MatcherTree_tree_type_NOT_SET = 0
595
733
  } xds_type_matcher_v3_Matcher_MatcherTree_tree_type_oneofcases;
596
- UPB_INLINE xds_type_matcher_v3_Matcher_MatcherTree_tree_type_oneofcases xds_type_matcher_v3_Matcher_MatcherTree_tree_type_case(const xds_type_matcher_v3_Matcher_MatcherTree* msg) { return (xds_type_matcher_v3_Matcher_MatcherTree_tree_type_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(12, 24), int32_t); }
597
-
598
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_has_input(const xds_type_matcher_v3_Matcher_MatcherTree *msg) { return _upb_hasbit(msg, 1); }
734
+ UPB_INLINE xds_type_matcher_v3_Matcher_MatcherTree_tree_type_oneofcases xds_type_matcher_v3_Matcher_MatcherTree_tree_type_case(const xds_type_matcher_v3_Matcher_MatcherTree* msg) {
735
+ return (xds_type_matcher_v3_Matcher_MatcherTree_tree_type_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(4, 4), int32_t);
736
+ }
737
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_has_input(const xds_type_matcher_v3_Matcher_MatcherTree* msg) {
738
+ return _upb_hasbit(msg, 1);
739
+ }
740
+ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherTree_clear_input(const xds_type_matcher_v3_Matcher_MatcherTree* msg) {
741
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), const upb_Message*) = NULL;
742
+ }
599
743
  UPB_INLINE const struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_MatcherTree_input(const xds_type_matcher_v3_Matcher_MatcherTree* msg) {
600
- return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct xds_core_v3_TypedExtensionConfig*);
744
+ return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), const struct xds_core_v3_TypedExtensionConfig*);
745
+ }
746
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_has_exact_match_map(const xds_type_matcher_v3_Matcher_MatcherTree* msg) {
747
+ return _upb_getoneofcase(msg, UPB_SIZE(4, 4)) == 2;
748
+ }
749
+ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherTree_clear_exact_match_map(const xds_type_matcher_v3_Matcher_MatcherTree* msg) {
750
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherTree_MatchMap*, UPB_SIZE(12, 16), 0, UPB_SIZE(4, 4), xds_type_matcher_v3_Matcher_MatcherTree_tree_type_NOT_SET);
751
+ }
752
+ UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* xds_type_matcher_v3_Matcher_MatcherTree_exact_match_map(const xds_type_matcher_v3_Matcher_MatcherTree* msg) {
753
+ return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap*, UPB_SIZE(12, 16), UPB_SIZE(4, 4), 2, NULL);
754
+ }
755
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_has_prefix_match_map(const xds_type_matcher_v3_Matcher_MatcherTree* msg) {
756
+ return _upb_getoneofcase(msg, UPB_SIZE(4, 4)) == 3;
757
+ }
758
+ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherTree_clear_prefix_match_map(const xds_type_matcher_v3_Matcher_MatcherTree* msg) {
759
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherTree_MatchMap*, UPB_SIZE(12, 16), 0, UPB_SIZE(4, 4), xds_type_matcher_v3_Matcher_MatcherTree_tree_type_NOT_SET);
760
+ }
761
+ UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* xds_type_matcher_v3_Matcher_MatcherTree_prefix_match_map(const xds_type_matcher_v3_Matcher_MatcherTree* msg) {
762
+ return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap*, UPB_SIZE(12, 16), UPB_SIZE(4, 4), 3, NULL);
763
+ }
764
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_has_custom_match(const xds_type_matcher_v3_Matcher_MatcherTree* msg) {
765
+ return _upb_getoneofcase(msg, UPB_SIZE(4, 4)) == 4;
766
+ }
767
+ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherTree_clear_custom_match(const xds_type_matcher_v3_Matcher_MatcherTree* msg) {
768
+ UPB_WRITE_ONEOF(msg, struct xds_core_v3_TypedExtensionConfig*, UPB_SIZE(12, 16), 0, UPB_SIZE(4, 4), xds_type_matcher_v3_Matcher_MatcherTree_tree_type_NOT_SET);
769
+ }
770
+ UPB_INLINE const struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_MatcherTree_custom_match(const xds_type_matcher_v3_Matcher_MatcherTree* msg) {
771
+ return UPB_READ_ONEOF(msg, const struct xds_core_v3_TypedExtensionConfig*, UPB_SIZE(12, 16), UPB_SIZE(4, 4), 4, NULL);
601
772
  }
602
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_has_exact_match_map(const xds_type_matcher_v3_Matcher_MatcherTree *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 2; }
603
- UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* xds_type_matcher_v3_Matcher_MatcherTree_exact_match_map(const xds_type_matcher_v3_Matcher_MatcherTree *msg) { return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 2, NULL); }
604
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_has_prefix_match_map(const xds_type_matcher_v3_Matcher_MatcherTree *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 3; }
605
- UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* xds_type_matcher_v3_Matcher_MatcherTree_prefix_match_map(const xds_type_matcher_v3_Matcher_MatcherTree *msg) { return UPB_READ_ONEOF(msg, const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 3, NULL); }
606
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_has_custom_match(const xds_type_matcher_v3_Matcher_MatcherTree *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 4; }
607
- UPB_INLINE const struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_MatcherTree_custom_match(const xds_type_matcher_v3_Matcher_MatcherTree *msg) { return UPB_READ_ONEOF(msg, const struct xds_core_v3_TypedExtensionConfig*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 4, NULL); }
608
773
 
609
774
  UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherTree_set_input(xds_type_matcher_v3_Matcher_MatcherTree *msg, struct xds_core_v3_TypedExtensionConfig* value) {
610
775
  _upb_sethas(msg, 1);
611
- *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct xds_core_v3_TypedExtensionConfig*) = value;
776
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 8), struct xds_core_v3_TypedExtensionConfig*) = value;
612
777
  }
613
- UPB_INLINE struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_MatcherTree_mutable_input(xds_type_matcher_v3_Matcher_MatcherTree *msg, upb_Arena *arena) {
778
+ UPB_INLINE struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_MatcherTree_mutable_input(xds_type_matcher_v3_Matcher_MatcherTree* msg, upb_Arena* arena) {
614
779
  struct xds_core_v3_TypedExtensionConfig* sub = (struct xds_core_v3_TypedExtensionConfig*)xds_type_matcher_v3_Matcher_MatcherTree_input(msg);
615
780
  if (sub == NULL) {
616
781
  sub = (struct xds_core_v3_TypedExtensionConfig*)_upb_Message_New(&xds_core_v3_TypedExtensionConfig_msginit, arena);
@@ -620,9 +785,9 @@ UPB_INLINE struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_
620
785
  return sub;
621
786
  }
622
787
  UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherTree_set_exact_match_map(xds_type_matcher_v3_Matcher_MatcherTree *msg, xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* value) {
623
- UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherTree_MatchMap*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 2);
788
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherTree_MatchMap*, UPB_SIZE(12, 16), value, UPB_SIZE(4, 4), 2);
624
789
  }
625
- UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* xds_type_matcher_v3_Matcher_MatcherTree_mutable_exact_match_map(xds_type_matcher_v3_Matcher_MatcherTree *msg, upb_Arena *arena) {
790
+ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* xds_type_matcher_v3_Matcher_MatcherTree_mutable_exact_match_map(xds_type_matcher_v3_Matcher_MatcherTree* msg, upb_Arena* arena) {
626
791
  struct xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* sub = (struct xds_type_matcher_v3_Matcher_MatcherTree_MatchMap*)xds_type_matcher_v3_Matcher_MatcherTree_exact_match_map(msg);
627
792
  if (sub == NULL) {
628
793
  sub = (struct xds_type_matcher_v3_Matcher_MatcherTree_MatchMap*)_upb_Message_New(&xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_msginit, arena);
@@ -632,9 +797,9 @@ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* xds_type_mat
632
797
  return sub;
633
798
  }
634
799
  UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherTree_set_prefix_match_map(xds_type_matcher_v3_Matcher_MatcherTree *msg, xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* value) {
635
- UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherTree_MatchMap*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 3);
800
+ UPB_WRITE_ONEOF(msg, xds_type_matcher_v3_Matcher_MatcherTree_MatchMap*, UPB_SIZE(12, 16), value, UPB_SIZE(4, 4), 3);
636
801
  }
637
- UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* xds_type_matcher_v3_Matcher_MatcherTree_mutable_prefix_match_map(xds_type_matcher_v3_Matcher_MatcherTree *msg, upb_Arena *arena) {
802
+ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* xds_type_matcher_v3_Matcher_MatcherTree_mutable_prefix_match_map(xds_type_matcher_v3_Matcher_MatcherTree* msg, upb_Arena* arena) {
638
803
  struct xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* sub = (struct xds_type_matcher_v3_Matcher_MatcherTree_MatchMap*)xds_type_matcher_v3_Matcher_MatcherTree_prefix_match_map(msg);
639
804
  if (sub == NULL) {
640
805
  sub = (struct xds_type_matcher_v3_Matcher_MatcherTree_MatchMap*)_upb_Message_New(&xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_msginit, arena);
@@ -644,9 +809,9 @@ UPB_INLINE struct xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* xds_type_mat
644
809
  return sub;
645
810
  }
646
811
  UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherTree_set_custom_match(xds_type_matcher_v3_Matcher_MatcherTree *msg, struct xds_core_v3_TypedExtensionConfig* value) {
647
- UPB_WRITE_ONEOF(msg, struct xds_core_v3_TypedExtensionConfig*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 4);
812
+ UPB_WRITE_ONEOF(msg, struct xds_core_v3_TypedExtensionConfig*, UPB_SIZE(12, 16), value, UPB_SIZE(4, 4), 4);
648
813
  }
649
- UPB_INLINE struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_MatcherTree_mutable_custom_match(xds_type_matcher_v3_Matcher_MatcherTree *msg, upb_Arena *arena) {
814
+ UPB_INLINE struct xds_core_v3_TypedExtensionConfig* xds_type_matcher_v3_Matcher_MatcherTree_mutable_custom_match(xds_type_matcher_v3_Matcher_MatcherTree* msg, upb_Arena* arena) {
650
815
  struct xds_core_v3_TypedExtensionConfig* sub = (struct xds_core_v3_TypedExtensionConfig*)xds_type_matcher_v3_Matcher_MatcherTree_custom_match(msg);
651
816
  if (sub == NULL) {
652
817
  sub = (struct xds_core_v3_TypedExtensionConfig*)_upb_Message_New(&xds_core_v3_TypedExtensionConfig_msginit, arena);
@@ -681,31 +846,54 @@ UPB_INLINE xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* xds_type_matcher_v3
681
846
  return ret;
682
847
  }
683
848
  UPB_INLINE char* xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_serialize(const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* msg, upb_Arena* arena, size_t* len) {
684
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_msginit, 0, arena, len);
849
+ char* ptr;
850
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_msginit, 0, arena, &ptr, len);
851
+ return ptr;
685
852
  }
686
853
  UPB_INLINE char* xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_serialize_ex(const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* msg, int options,
687
854
  upb_Arena* arena, size_t* len) {
688
- return upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_msginit, options, arena, len);
855
+ char* ptr;
856
+ (void)upb_Encode(msg, &xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_msginit, options, arena, &ptr, len);
857
+ return ptr;
858
+ }
859
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_has_map(const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* msg) {
860
+ return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0));
861
+ }
862
+ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_clear_map(const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* msg) {
863
+ _upb_array_detach(msg, UPB_SIZE(0, 0));
864
+ }
865
+ UPB_INLINE size_t xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_map_size(const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* msg) {
866
+ return _upb_msg_map_size(msg, UPB_SIZE(0, 0));
867
+ }
868
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_map_get(const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* msg, upb_StringView key, xds_type_matcher_v3_Matcher_OnMatch** val) {
869
+ return _upb_msg_map_get(msg, UPB_SIZE(0, 0), &key, 0, val, sizeof(*val));
870
+ }
871
+ UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry* xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_map_next(const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* msg, size_t* iter) {
872
+ return (const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry*)_upb_msg_map_next(msg, UPB_SIZE(0, 0), iter);
689
873
  }
690
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_has_map(const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0)); }
691
- UPB_INLINE size_t xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_map_size(const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap *msg) {return _upb_msg_map_size(msg, UPB_SIZE(0, 0)); }
692
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_map_get(const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap *msg, upb_StringView key, xds_type_matcher_v3_Matcher_OnMatch* *val) { return _upb_msg_map_get(msg, UPB_SIZE(0, 0), &key, 0, val, sizeof(*val)); }
693
- UPB_INLINE const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry* xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_map_next(const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap *msg, size_t* iter) { return (const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry*)_upb_msg_map_next(msg, UPB_SIZE(0, 0), iter); }
694
874
 
695
- UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_map_clear(xds_type_matcher_v3_Matcher_MatcherTree_MatchMap *msg) { _upb_msg_map_clear(msg, UPB_SIZE(0, 0)); }
696
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_map_set(xds_type_matcher_v3_Matcher_MatcherTree_MatchMap *msg, upb_StringView key, xds_type_matcher_v3_Matcher_OnMatch* val, upb_Arena *a) { return _upb_msg_map_set(msg, UPB_SIZE(0, 0), &key, 0, &val, sizeof(val), a); }
697
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_map_delete(xds_type_matcher_v3_Matcher_MatcherTree_MatchMap *msg, upb_StringView key) { return _upb_msg_map_delete(msg, UPB_SIZE(0, 0), &key, 0); }
698
- UPB_INLINE xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry* xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_map_nextmutable(xds_type_matcher_v3_Matcher_MatcherTree_MatchMap *msg, size_t* iter) { return (xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry*)_upb_msg_map_next(msg, UPB_SIZE(0, 0), iter); }
875
+ UPB_INLINE void xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_map_clear(xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* msg) { _upb_msg_map_clear(msg, UPB_SIZE(0, 0)); }
876
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_map_set(xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* msg, upb_StringView key, xds_type_matcher_v3_Matcher_OnMatch* val, upb_Arena* a) {
877
+ return _upb_msg_map_set(msg, UPB_SIZE(0, 0), &key, 0, &val, sizeof(val), a);
878
+ }
879
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_map_delete(xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* msg, upb_StringView key) {
880
+ return _upb_msg_map_delete(msg, UPB_SIZE(0, 0), &key, 0);
881
+ }
882
+ UPB_INLINE xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry* xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_map_nextmutable(xds_type_matcher_v3_Matcher_MatcherTree_MatchMap* msg, size_t* iter) {
883
+ return (xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry*)_upb_msg_map_next(msg, UPB_SIZE(0, 0), iter);
884
+ }
699
885
 
700
886
  /* xds.type.matcher.v3.Matcher.MatcherTree.MatchMap.MapEntry */
701
887
 
702
- UPB_INLINE upb_StringView xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry_key(const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry *msg) {
888
+ UPB_INLINE upb_StringView xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry_key(const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry* msg) {
703
889
  upb_StringView ret;
704
890
  _upb_msg_map_key(msg, &ret, 0);
705
891
  return ret;
706
892
  }
707
- UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry_has_value(const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
708
- UPB_INLINE const xds_type_matcher_v3_Matcher_OnMatch* xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry_value(const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry *msg) {
893
+ UPB_INLINE bool xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry_has_value(const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry* msg) {
894
+ return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16));
895
+ }
896
+ UPB_INLINE const xds_type_matcher_v3_Matcher_OnMatch* xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry_value(const xds_type_matcher_v3_Matcher_MatcherTree_MatchMap_MapEntry* msg) {
709
897
  xds_type_matcher_v3_Matcher_OnMatch* ret;
710
898
  _upb_msg_map_value(msg, &ret, sizeof(ret));
711
899
  return ret;