grpc 1.52.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 (893) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +50 -5
  3. data/include/grpc/event_engine/event_engine.h +24 -2
  4. data/include/grpc/event_engine/slice_buffer.h +13 -1
  5. data/include/grpc/impl/grpc_types.h +3 -0
  6. data/include/grpc/support/time.h +6 -4
  7. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +148 -0
  8. data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +52 -0
  9. data/src/core/ext/filters/backend_metrics/backend_metric_provider.h +29 -0
  10. data/src/core/ext/filters/channel_idle/channel_idle_filter.h +3 -3
  11. data/src/core/ext/filters/channel_idle/idle_filter_state.h +3 -3
  12. data/src/core/ext/filters/client_channel/backend_metric.h +3 -3
  13. data/src/core/ext/filters/client_channel/backup_poller.h +3 -3
  14. data/src/core/ext/filters/client_channel/channel_connectivity.cc +1 -1
  15. data/src/core/ext/filters/client_channel/client_channel.cc +29 -33
  16. data/src/core/ext/filters/client_channel/client_channel.h +3 -3
  17. data/src/core/ext/filters/client_channel/client_channel_channelz.h +3 -3
  18. data/src/core/ext/filters/client_channel/client_channel_factory.h +3 -3
  19. data/src/core/ext/filters/client_channel/client_channel_service_config.h +3 -3
  20. data/src/core/ext/filters/client_channel/config_selector.h +3 -3
  21. data/src/core/ext/filters/client_channel/connector.h +8 -4
  22. data/src/core/ext/filters/client_channel/dynamic_filters.h +3 -3
  23. data/src/core/ext/filters/client_channel/global_subchannel_pool.h +3 -3
  24. data/src/core/ext/filters/client_channel/health/health_check_client.h +3 -3
  25. data/src/core/ext/filters/client_channel/http_proxy.h +3 -3
  26. data/src/core/ext/filters/client_channel/lb_call_state_internal.h +3 -3
  27. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.h +3 -3
  28. data/src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h +3 -3
  29. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h +3 -3
  30. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +14 -7
  31. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h +3 -3
  32. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +1 -0
  33. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +3 -3
  34. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h +3 -3
  35. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +3 -3
  36. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +3 -3
  37. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc +1 -78
  38. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.h +3 -3
  39. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric_internal.h +117 -0
  40. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h +3 -3
  41. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h +3 -3
  42. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +1 -0
  43. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +3 -3
  44. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.cc +128 -0
  45. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/static_stride_scheduler.h +71 -0
  46. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc +972 -0
  47. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +2 -2
  48. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +3 -6
  49. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_attributes.h +3 -3
  50. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h +3 -3
  51. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +12 -7
  52. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc +275 -107
  53. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.h +10 -3
  54. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc +5 -0
  55. data/src/core/ext/filters/client_channel/local_subchannel_pool.h +3 -3
  56. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +3 -3
  57. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +6 -1
  58. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +1 -2
  59. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +3 -3
  60. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h +3 -3
  61. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +3 -3
  62. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +1 -0
  63. data/src/core/ext/filters/client_channel/resolver/polling_resolver.h +3 -3
  64. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +3 -7
  65. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h +3 -3
  66. data/src/core/ext/filters/client_channel/retry_filter.cc +10 -13
  67. data/src/core/ext/filters/client_channel/retry_filter.h +3 -3
  68. data/src/core/ext/filters/client_channel/retry_service_config.h +3 -3
  69. data/src/core/ext/filters/client_channel/retry_throttle.h +3 -3
  70. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +4 -4
  71. data/src/core/ext/filters/client_channel/subchannel.cc +5 -1
  72. data/src/core/ext/filters/client_channel/subchannel.h +3 -3
  73. data/src/core/ext/filters/client_channel/subchannel_interface_internal.h +3 -3
  74. data/src/core/ext/filters/client_channel/subchannel_pool_interface.h +3 -3
  75. data/src/core/ext/filters/client_channel/subchannel_stream_client.h +3 -3
  76. data/src/core/ext/filters/deadline/deadline_filter.cc +40 -48
  77. data/src/core/ext/filters/deadline/deadline_filter.h +6 -10
  78. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +3 -3
  79. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h +3 -3
  80. data/src/core/ext/filters/http/client/http_client_filter.cc +26 -21
  81. data/src/core/ext/filters/http/client/http_client_filter.h +3 -3
  82. data/src/core/ext/filters/http/client_authority_filter.h +3 -3
  83. data/src/core/ext/filters/http/message_compress/compression_filter.cc +109 -117
  84. data/src/core/ext/filters/http/message_compress/compression_filter.h +17 -10
  85. data/src/core/ext/filters/http/server/http_server_filter.cc +25 -24
  86. data/src/core/ext/filters/http/server/http_server_filter.h +3 -3
  87. data/src/core/ext/filters/message_size/message_size_filter.cc +2 -1
  88. data/src/core/ext/filters/message_size/message_size_filter.h +3 -3
  89. data/src/core/ext/filters/rbac/rbac_filter.cc +4 -3
  90. data/src/core/ext/filters/rbac/rbac_filter.h +3 -3
  91. data/src/core/ext/filters/rbac/rbac_service_config_parser.h +3 -3
  92. data/src/core/ext/filters/server_config_selector/server_config_selector.h +3 -3
  93. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.h +3 -3
  94. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +27 -37
  95. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +5 -5
  96. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +3 -3
  97. data/src/core/ext/transport/chttp2/alpn/alpn.h +3 -3
  98. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +2 -7
  99. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +3 -3
  100. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +1 -0
  101. data/src/core/ext/transport/chttp2/server/chttp2_server.h +3 -3
  102. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +3 -3
  103. data/src/core/ext/transport/chttp2/transport/bin_encoder.h +3 -3
  104. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +195 -111
  105. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +3 -3
  106. data/src/core/ext/transport/chttp2/transport/context_list.h +3 -3
  107. data/src/core/ext/transport/chttp2/transport/decode_huff.h +3 -3
  108. data/src/core/ext/transport/chttp2/transport/flow_control.cc +1 -0
  109. data/src/core/ext/transport/chttp2/transport/flow_control.h +3 -3
  110. data/src/core/ext/transport/chttp2/transport/frame.h +3 -3
  111. data/src/core/ext/transport/chttp2/transport/frame_data.cc +2 -0
  112. data/src/core/ext/transport/chttp2/transport/frame_data.h +3 -3
  113. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +2 -0
  114. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +3 -3
  115. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +1 -0
  116. data/src/core/ext/transport/chttp2/transport/frame_ping.h +3 -3
  117. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +2 -0
  118. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +3 -3
  119. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +1 -0
  120. data/src/core/ext/transport/chttp2/transport/frame_settings.h +3 -3
  121. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +2 -0
  122. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +3 -3
  123. data/src/core/ext/transport/chttp2/transport/hpack_constants.h +3 -3
  124. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +3 -3
  125. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +3 -3
  126. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +18 -407
  127. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +3 -3
  128. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +1 -0
  129. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +3 -3
  130. data/src/core/ext/transport/chttp2/transport/http2_settings.h +3 -3
  131. data/src/core/ext/transport/chttp2/transport/http_trace.h +3 -3
  132. data/src/core/ext/transport/chttp2/transport/huffsyms.h +3 -3
  133. data/src/core/ext/transport/chttp2/transport/internal.h +28 -23
  134. data/src/core/ext/transport/chttp2/transport/parsing.cc +111 -31
  135. data/src/core/ext/transport/chttp2/transport/stream_map.h +3 -3
  136. data/src/core/ext/transport/chttp2/transport/varint.h +3 -3
  137. data/src/core/ext/transport/chttp2/transport/writing.cc +9 -8
  138. data/src/core/ext/transport/inproc/inproc_transport.h +3 -3
  139. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +3 -2
  140. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +9 -0
  141. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.c +38 -2
  142. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.h +185 -0
  143. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +7 -3
  144. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +44 -0
  145. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +16 -25
  146. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +48 -74
  147. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +30 -7
  148. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +137 -0
  149. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +15 -12
  150. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +83 -51
  151. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +3 -2
  152. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +15 -0
  153. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +17 -2
  154. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +61 -0
  155. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +11 -5
  156. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +37 -6
  157. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +5 -3
  158. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +24 -0
  159. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +5 -3
  160. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +22 -0
  161. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +6 -3
  162. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +24 -0
  163. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +24 -5
  164. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +50 -0
  165. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +57 -16
  166. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +254 -17
  167. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +3 -2
  168. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +9 -0
  169. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.c +3 -2
  170. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.h +9 -0
  171. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +7 -6
  172. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +21 -12
  173. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +6 -3
  174. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +23 -0
  175. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +10 -7
  176. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +42 -12
  177. 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
  178. 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
  179. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.c +111 -0
  180. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +444 -0
  181. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.c +7 -3
  182. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +24 -0
  183. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +8 -6
  184. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +31 -9
  185. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +5 -3
  186. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +24 -0
  187. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.c +47 -0
  188. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.h +113 -0
  189. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.c +43 -0
  190. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.h +114 -0
  191. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.h +3 -1
  192. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c +54 -53
  193. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.c +34 -13
  194. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.h +10 -0
  195. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +195 -187
  196. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +232 -224
  197. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +0 -5
  198. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +95 -75
  199. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +5 -0
  200. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +94 -93
  201. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +81 -75
  202. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +189 -187
  203. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +7 -3
  204. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +5 -0
  205. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +71 -66
  206. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +137 -133
  207. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +16 -12
  208. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.c +140 -133
  209. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +81 -70
  210. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +5 -0
  211. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +771 -741
  212. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +10 -0
  213. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.c +16 -14
  214. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.c +14 -13
  215. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.c +20 -18
  216. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +53 -42
  217. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +363 -356
  218. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +149 -145
  219. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +16 -13
  220. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.c +48 -0
  221. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.h +35 -0
  222. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +14 -14
  223. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.c +40 -0
  224. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.h +40 -0
  225. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c +10 -9
  226. data/src/core/ext/xds/certificate_provider_store.h +3 -3
  227. data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +1 -0
  228. data/src/core/ext/xds/file_watcher_certificate_provider_factory.h +3 -3
  229. data/src/core/ext/xds/upb_utils.h +3 -3
  230. data/src/core/ext/xds/xds_api.h +3 -3
  231. data/src/core/ext/xds/xds_bootstrap.h +3 -3
  232. data/src/core/ext/xds/xds_bootstrap_grpc.cc +1 -0
  233. data/src/core/ext/xds/xds_bootstrap_grpc.h +3 -3
  234. data/src/core/ext/xds/xds_certificate_provider.h +3 -3
  235. data/src/core/ext/xds/xds_channel_args.h +3 -3
  236. data/src/core/ext/xds/xds_channel_stack_modifier.h +3 -3
  237. data/src/core/ext/xds/xds_client.cc +8 -3
  238. data/src/core/ext/xds/xds_client.h +3 -3
  239. data/src/core/ext/xds/xds_client_grpc.cc +0 -1
  240. data/src/core/ext/xds/xds_client_grpc.h +3 -3
  241. data/src/core/ext/xds/xds_client_stats.h +4 -3
  242. data/src/core/ext/xds/xds_cluster.cc +11 -7
  243. data/src/core/ext/xds/xds_cluster.h +6 -6
  244. data/src/core/ext/xds/xds_cluster_specifier_plugin.h +3 -3
  245. data/src/core/ext/xds/xds_common_types.cc +1 -0
  246. data/src/core/ext/xds/xds_common_types.h +3 -3
  247. data/src/core/ext/xds/xds_endpoint.cc +1 -1
  248. data/src/core/ext/xds/xds_endpoint.h +3 -3
  249. data/src/core/ext/xds/xds_health_status.h +30 -3
  250. data/src/core/ext/xds/xds_http_fault_filter.h +3 -3
  251. data/src/core/ext/xds/xds_http_filters.cc +1 -1
  252. data/src/core/ext/xds/xds_http_filters.h +3 -3
  253. data/src/core/ext/xds/xds_http_rbac_filter.h +3 -3
  254. data/src/core/ext/xds/xds_http_stateful_session_filter.h +3 -3
  255. data/src/core/ext/xds/xds_lb_policy_registry.cc +95 -0
  256. data/src/core/ext/xds/xds_lb_policy_registry.h +3 -3
  257. data/src/core/ext/xds/xds_listener.cc +1 -0
  258. data/src/core/ext/xds/xds_listener.h +3 -3
  259. data/src/core/ext/xds/xds_resource_type.h +3 -3
  260. data/src/core/ext/xds/xds_resource_type_impl.h +3 -3
  261. data/src/core/ext/xds/xds_route_config.cc +6 -0
  262. data/src/core/ext/xds/xds_route_config.h +3 -3
  263. data/src/core/ext/xds/xds_routing.h +3 -3
  264. data/src/core/ext/xds/xds_transport.h +3 -3
  265. data/src/core/ext/xds/xds_transport_grpc.h +3 -3
  266. data/src/core/lib/address_utils/parse_address.h +3 -3
  267. data/src/core/lib/address_utils/sockaddr_utils.cc +1 -0
  268. data/src/core/lib/address_utils/sockaddr_utils.h +3 -3
  269. data/src/core/lib/avl/avl.h +3 -3
  270. data/src/core/lib/backoff/backoff.h +3 -3
  271. data/src/core/lib/channel/call_finalization.h +3 -3
  272. data/src/core/lib/channel/call_tracer.h +3 -3
  273. data/src/core/lib/channel/channel_args.cc +1 -0
  274. data/src/core/lib/channel/channel_args.h +11 -5
  275. data/src/core/lib/channel/channel_args_preconditioning.h +3 -3
  276. data/src/core/lib/channel/channel_fwd.h +3 -3
  277. data/src/core/lib/channel/channel_stack.cc +1 -2
  278. data/src/core/lib/channel/channel_stack.h +4 -4
  279. data/src/core/lib/channel/channel_stack_builder.h +3 -3
  280. data/src/core/lib/channel/channel_stack_builder_impl.cc +14 -1
  281. data/src/core/lib/channel/channel_stack_builder_impl.h +3 -3
  282. data/src/core/lib/channel/channel_trace.h +3 -3
  283. data/src/core/lib/channel/channelz.h +3 -3
  284. data/src/core/lib/channel/channelz_registry.h +3 -3
  285. data/src/core/lib/channel/connected_channel.cc +883 -354
  286. data/src/core/lib/channel/connected_channel.h +3 -3
  287. data/src/core/lib/channel/context.h +7 -3
  288. data/src/core/lib/channel/promise_based_filter.cc +532 -260
  289. data/src/core/lib/channel/promise_based_filter.h +124 -44
  290. data/src/core/lib/channel/status_util.h +3 -3
  291. data/src/core/lib/compression/compression_internal.h +3 -3
  292. data/src/core/lib/compression/message_compress.h +3 -3
  293. data/src/core/lib/config/core_configuration.h +3 -3
  294. data/src/core/lib/debug/event_log.h +3 -3
  295. data/src/core/lib/debug/histogram_view.h +3 -3
  296. data/src/core/lib/debug/stats.h +3 -3
  297. data/src/core/lib/debug/stats_data.cc +66 -65
  298. data/src/core/lib/debug/stats_data.h +42 -33
  299. data/src/core/lib/debug/trace.h +4 -26
  300. data/src/core/lib/event_engine/channel_args_endpoint_config.cc +5 -0
  301. data/src/core/lib/event_engine/channel_args_endpoint_config.h +3 -3
  302. data/src/core/lib/event_engine/common_closures.h +3 -3
  303. data/src/core/lib/event_engine/default_event_engine.cc +9 -4
  304. data/src/core/lib/event_engine/default_event_engine.h +30 -6
  305. data/src/core/lib/event_engine/default_event_engine_factory.h +3 -3
  306. data/src/core/lib/event_engine/event_engine.cc +25 -0
  307. data/src/core/lib/event_engine/executor/executor.h +3 -3
  308. data/src/core/lib/event_engine/forkable.cc +11 -6
  309. data/src/core/lib/event_engine/forkable.h +3 -3
  310. data/src/core/lib/event_engine/handle_containers.h +10 -3
  311. data/src/core/lib/event_engine/poller.h +3 -3
  312. data/src/core/lib/event_engine/posix.h +158 -0
  313. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +44 -16
  314. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h +14 -4
  315. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +6 -7
  316. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.h +3 -3
  317. data/src/core/lib/event_engine/posix_engine/event_poller.h +3 -3
  318. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.h +3 -3
  319. data/src/core/lib/event_engine/posix_engine/internal_errqueue.h +3 -3
  320. data/src/core/lib/event_engine/posix_engine/lockfree_event.h +3 -3
  321. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +52 -55
  322. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +46 -13
  323. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +82 -12
  324. data/src/core/lib/event_engine/posix_engine/posix_engine.h +23 -9
  325. data/src/core/lib/event_engine/posix_engine/posix_engine_closure.h +3 -3
  326. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +60 -7
  327. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +65 -14
  328. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +0 -1
  329. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.h +6 -6
  330. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +3 -3
  331. data/src/core/lib/event_engine/posix_engine/timer.h +3 -3
  332. data/src/core/lib/event_engine/posix_engine/timer_heap.h +3 -3
  333. data/src/core/lib/event_engine/posix_engine/timer_manager.h +3 -3
  334. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.h +3 -3
  335. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.h +3 -3
  336. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.h +3 -3
  337. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix.h +3 -3
  338. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.h +3 -3
  339. data/src/core/lib/event_engine/resolved_address.cc +19 -0
  340. data/src/core/lib/event_engine/resolved_address_internal.h +34 -0
  341. data/src/core/lib/event_engine/shim.cc +56 -0
  342. data/src/core/lib/event_engine/shim.h +33 -0
  343. data/src/core/lib/event_engine/slice.cc +1 -1
  344. data/src/core/lib/event_engine/tcp_socket_utils.cc +18 -2
  345. data/src/core/lib/event_engine/tcp_socket_utils.h +8 -3
  346. data/src/core/lib/event_engine/thread_local.cc +29 -0
  347. data/src/core/lib/event_engine/thread_local.h +32 -0
  348. data/src/core/lib/event_engine/thread_pool.cc +41 -65
  349. data/src/core/lib/event_engine/thread_pool.h +21 -17
  350. data/src/core/lib/event_engine/time_util.h +3 -3
  351. data/src/core/lib/event_engine/trace.cc +6 -0
  352. data/src/core/lib/event_engine/trace.h +16 -3
  353. data/src/core/lib/event_engine/utils.cc +2 -2
  354. data/src/core/lib/event_engine/utils.h +12 -4
  355. data/src/core/lib/event_engine/windows/iocp.cc +24 -40
  356. data/src/core/lib/event_engine/windows/iocp.h +3 -3
  357. data/src/core/lib/event_engine/windows/win_socket.cc +56 -33
  358. data/src/core/lib/event_engine/windows/win_socket.h +34 -25
  359. data/src/core/lib/event_engine/windows/windows_endpoint.cc +331 -0
  360. data/src/core/lib/event_engine/windows/windows_endpoint.h +103 -0
  361. data/src/core/lib/event_engine/windows/windows_engine.cc +243 -20
  362. data/src/core/lib/event_engine/windows/windows_engine.h +62 -23
  363. data/src/core/lib/experiments/config.cc +16 -1
  364. data/src/core/lib/experiments/config.h +13 -3
  365. data/src/core/lib/experiments/experiments.cc +14 -8
  366. data/src/core/lib/experiments/experiments.h +80 -21
  367. data/src/core/lib/gpr/alloc.h +3 -3
  368. data/src/core/lib/gpr/spinlock.h +3 -3
  369. data/src/core/lib/gpr/string.h +3 -3
  370. data/src/core/lib/gpr/sync_abseil.cc +15 -7
  371. data/src/core/lib/gpr/time_precise.h +3 -3
  372. data/src/core/lib/gpr/tmpfile.h +3 -3
  373. data/src/core/lib/gpr/useful.h +3 -3
  374. data/src/core/lib/gprpp/atomic_utils.h +3 -3
  375. data/src/core/lib/gprpp/bitset.h +3 -3
  376. data/src/core/lib/gprpp/chunked_vector.h +3 -3
  377. data/src/core/lib/gprpp/construct_destruct.h +3 -3
  378. data/src/core/lib/gprpp/cpp_impl_of.h +3 -3
  379. data/src/core/lib/gprpp/crash.h +3 -3
  380. data/src/core/lib/gprpp/debug_location.h +3 -6
  381. data/src/core/lib/gprpp/dual_ref_counted.h +3 -3
  382. data/src/core/lib/gprpp/env.h +3 -3
  383. data/src/core/lib/gprpp/examine_stack.h +3 -3
  384. data/src/core/lib/gprpp/fork.cc +21 -4
  385. data/src/core/lib/gprpp/fork.h +7 -5
  386. data/src/core/lib/gprpp/global_config.h +3 -3
  387. data/src/core/lib/gprpp/global_config_custom.h +3 -3
  388. data/src/core/lib/gprpp/global_config_env.cc +1 -0
  389. data/src/core/lib/gprpp/global_config_env.h +3 -3
  390. data/src/core/lib/gprpp/global_config_generic.h +3 -3
  391. data/src/core/lib/gprpp/host_port.cc +2 -0
  392. data/src/core/lib/gprpp/host_port.h +3 -3
  393. data/src/core/lib/gprpp/load_file.h +3 -3
  394. data/src/core/lib/gprpp/manual_constructor.h +3 -3
  395. data/src/core/lib/gprpp/match.h +3 -3
  396. data/src/core/lib/gprpp/memory.h +3 -3
  397. data/src/core/lib/gprpp/mpscq.h +3 -3
  398. data/src/core/lib/gprpp/no_destruct.h +3 -3
  399. data/src/core/lib/gprpp/notification.h +3 -3
  400. data/src/core/lib/gprpp/orphanable.h +3 -3
  401. data/src/core/lib/gprpp/overload.h +3 -3
  402. data/src/core/lib/gprpp/packed_table.h +3 -3
  403. data/src/core/lib/gprpp/per_cpu.h +3 -3
  404. data/src/core/lib/gprpp/ref_counted.h +3 -3
  405. data/src/core/lib/gprpp/ref_counted_ptr.h +3 -3
  406. data/src/core/lib/gprpp/single_set_ptr.h +3 -3
  407. data/src/core/lib/gprpp/sorted_pack.h +3 -3
  408. data/src/core/lib/gprpp/stat.h +3 -3
  409. data/src/core/lib/gprpp/status_helper.h +3 -3
  410. data/src/core/lib/gprpp/strerror.cc +2 -0
  411. data/src/core/lib/gprpp/strerror.h +3 -3
  412. data/src/core/lib/gprpp/sync.h +3 -3
  413. data/src/core/lib/gprpp/table.h +3 -3
  414. data/src/core/lib/gprpp/tchar.h +3 -3
  415. data/src/core/lib/gprpp/thd.h +3 -3
  416. data/src/core/lib/gprpp/time.cc +1 -0
  417. data/src/core/lib/gprpp/time.h +3 -3
  418. data/src/core/lib/gprpp/time_averaged_stats.h +3 -3
  419. data/src/core/lib/gprpp/time_util.h +3 -3
  420. data/src/core/lib/gprpp/unique_type_name.h +3 -3
  421. data/src/core/lib/gprpp/validation_errors.h +3 -3
  422. data/src/core/lib/gprpp/work_serializer.h +3 -3
  423. data/src/core/lib/handshaker/proxy_mapper.h +3 -3
  424. data/src/core/lib/handshaker/proxy_mapper_registry.h +3 -3
  425. data/src/core/lib/http/format_request.cc +1 -0
  426. data/src/core/lib/http/format_request.h +3 -3
  427. data/src/core/lib/http/httpcli.cc +1 -0
  428. data/src/core/lib/http/httpcli.h +3 -3
  429. data/src/core/lib/http/httpcli_ssl_credentials.h +3 -3
  430. data/src/core/lib/http/parser.h +3 -3
  431. data/src/core/lib/iomgr/block_annotate.h +3 -3
  432. data/src/core/lib/iomgr/buffer_list.h +3 -3
  433. data/src/core/lib/iomgr/call_combiner.cc +4 -4
  434. data/src/core/lib/iomgr/call_combiner.h +3 -3
  435. data/src/core/lib/iomgr/cfstream_handle.h +3 -3
  436. data/src/core/lib/iomgr/closure.cc +27 -0
  437. data/src/core/lib/iomgr/closure.h +5 -3
  438. data/src/core/lib/iomgr/combiner.h +3 -3
  439. data/src/core/lib/iomgr/dynamic_annotations.h +3 -3
  440. data/src/core/lib/iomgr/endpoint.h +3 -3
  441. data/src/core/lib/iomgr/endpoint_cfstream.h +3 -3
  442. data/src/core/lib/iomgr/endpoint_pair.h +3 -3
  443. data/src/core/lib/iomgr/endpoint_pair_windows.cc +10 -2
  444. data/src/core/lib/iomgr/error.h +3 -3
  445. data/src/core/lib/iomgr/error_cfstream.h +3 -3
  446. data/src/core/lib/iomgr/ev_apple.h +3 -3
  447. data/src/core/lib/iomgr/ev_epoll1_linux.h +3 -3
  448. data/src/core/lib/iomgr/ev_poll_posix.h +3 -3
  449. data/src/core/lib/iomgr/ev_posix.h +3 -3
  450. data/src/core/lib/iomgr/event_engine_shims/closure.cc +62 -0
  451. data/src/core/lib/iomgr/event_engine_shims/closure.h +39 -0
  452. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +430 -0
  453. data/src/core/lib/iomgr/event_engine_shims/endpoint.h +43 -0
  454. data/src/core/lib/iomgr/event_engine_shims/tcp_client.cc +91 -0
  455. data/src/core/lib/iomgr/event_engine_shims/tcp_client.h +44 -0
  456. data/src/core/lib/iomgr/exec_ctx.h +3 -3
  457. data/src/core/lib/iomgr/executor.h +3 -3
  458. data/src/core/lib/iomgr/fork_posix.cc +5 -4
  459. data/src/core/lib/iomgr/gethostname.h +3 -3
  460. data/src/core/lib/iomgr/grpc_if_nametoindex.h +3 -3
  461. data/src/core/lib/iomgr/internal_errqueue.h +3 -3
  462. data/src/core/lib/iomgr/iocp_windows.h +3 -3
  463. data/src/core/lib/iomgr/iomgr.h +3 -3
  464. data/src/core/lib/iomgr/iomgr_fwd.h +3 -3
  465. data/src/core/lib/iomgr/iomgr_internal.h +3 -3
  466. data/src/core/lib/iomgr/load_file.h +3 -3
  467. data/src/core/lib/iomgr/lockfree_event.h +3 -3
  468. data/src/core/lib/iomgr/nameser.h +3 -3
  469. data/src/core/lib/iomgr/polling_entity.h +3 -3
  470. data/src/core/lib/iomgr/pollset.h +3 -3
  471. data/src/core/lib/iomgr/pollset_set.h +3 -3
  472. data/src/core/lib/iomgr/pollset_set_windows.h +3 -3
  473. data/src/core/lib/iomgr/pollset_windows.cc +2 -2
  474. data/src/core/lib/iomgr/pollset_windows.h +3 -3
  475. data/src/core/lib/iomgr/port.h +3 -3
  476. data/src/core/lib/iomgr/python_util.h +3 -3
  477. data/src/core/lib/iomgr/resolve_address.h +3 -3
  478. data/src/core/lib/iomgr/resolve_address_impl.h +3 -3
  479. data/src/core/lib/iomgr/resolve_address_posix.h +3 -3
  480. data/src/core/lib/iomgr/resolve_address_windows.h +3 -3
  481. data/src/core/lib/iomgr/resolved_address.h +3 -3
  482. data/src/core/lib/iomgr/sockaddr.h +3 -3
  483. data/src/core/lib/iomgr/sockaddr_posix.h +3 -3
  484. data/src/core/lib/iomgr/sockaddr_windows.h +3 -3
  485. data/src/core/lib/iomgr/socket_factory_posix.h +3 -3
  486. data/src/core/lib/iomgr/socket_mutator.h +3 -3
  487. data/src/core/lib/iomgr/socket_utils.h +3 -3
  488. data/src/core/lib/iomgr/socket_utils_posix.h +3 -3
  489. data/src/core/lib/iomgr/socket_windows.h +3 -3
  490. data/src/core/lib/iomgr/systemd_utils.cc +19 -19
  491. data/src/core/lib/iomgr/systemd_utils.h +24 -24
  492. data/src/core/lib/iomgr/tcp_client.h +3 -3
  493. data/src/core/lib/iomgr/tcp_client_posix.cc +12 -0
  494. data/src/core/lib/iomgr/tcp_client_posix.h +3 -3
  495. data/src/core/lib/iomgr/tcp_client_windows.cc +13 -1
  496. data/src/core/lib/iomgr/tcp_posix.cc +49 -65
  497. data/src/core/lib/iomgr/tcp_posix.h +3 -3
  498. data/src/core/lib/iomgr/tcp_server.h +3 -3
  499. data/src/core/lib/iomgr/tcp_server_posix.cc +219 -4
  500. data/src/core/lib/iomgr/tcp_server_utils_posix.h +13 -3
  501. data/src/core/lib/iomgr/tcp_server_windows.cc +4 -6
  502. data/src/core/lib/iomgr/tcp_windows.h +3 -3
  503. data/src/core/lib/iomgr/timer.h +3 -3
  504. data/src/core/lib/iomgr/timer_generic.h +3 -3
  505. data/src/core/lib/iomgr/timer_heap.h +3 -3
  506. data/src/core/lib/iomgr/timer_manager.h +3 -3
  507. data/src/core/lib/iomgr/unix_sockets_posix.h +3 -3
  508. data/src/core/lib/iomgr/wakeup_fd_pipe.h +3 -3
  509. data/src/core/lib/iomgr/wakeup_fd_posix.h +3 -3
  510. data/src/core/lib/json/json.h +3 -3
  511. data/src/core/lib/json/json_args.h +3 -3
  512. data/src/core/lib/json/json_channel_args.h +3 -3
  513. data/src/core/lib/json/json_object_loader.h +3 -3
  514. data/src/core/lib/json/json_reader.cc +1 -0
  515. data/src/core/lib/json/json_util.h +3 -3
  516. data/src/core/lib/load_balancing/lb_policy.cc +9 -0
  517. data/src/core/lib/load_balancing/lb_policy.h +9 -5
  518. data/src/core/lib/load_balancing/lb_policy_factory.h +3 -3
  519. data/src/core/lib/load_balancing/lb_policy_registry.cc +1 -0
  520. data/src/core/lib/load_balancing/lb_policy_registry.h +3 -3
  521. data/src/core/lib/load_balancing/subchannel_interface.h +8 -6
  522. data/src/core/lib/matchers/matchers.cc +1 -0
  523. data/src/core/lib/matchers/matchers.h +3 -3
  524. data/src/core/lib/promise/activity.cc +8 -6
  525. data/src/core/lib/promise/activity.h +52 -66
  526. data/src/core/lib/promise/arena_promise.h +3 -3
  527. data/src/core/lib/promise/context.h +3 -3
  528. data/src/core/lib/promise/detail/basic_join.h +197 -0
  529. data/src/core/lib/promise/detail/basic_seq.h +10 -16
  530. data/src/core/lib/promise/detail/promise_factory.h +3 -3
  531. data/src/core/lib/promise/detail/promise_like.h +3 -3
  532. data/src/core/lib/promise/detail/status.h +3 -3
  533. data/src/core/lib/promise/detail/switch.h +3 -3
  534. data/src/core/lib/promise/exec_ctx_wakeup_scheduler.h +3 -3
  535. data/src/core/lib/promise/if.h +195 -0
  536. data/src/core/lib/promise/interceptor_list.h +308 -0
  537. data/src/core/lib/promise/intra_activity_waiter.h +9 -3
  538. data/src/core/lib/promise/latch.h +99 -5
  539. data/src/core/lib/promise/loop.h +4 -4
  540. data/src/core/lib/promise/map.h +4 -6
  541. data/src/core/lib/promise/pipe.h +296 -193
  542. data/src/core/lib/promise/poll.h +113 -14
  543. data/src/core/lib/promise/promise.h +4 -5
  544. data/src/core/lib/promise/race.h +6 -9
  545. data/src/core/lib/promise/seq.h +3 -3
  546. data/src/core/lib/promise/sleep.h +3 -3
  547. data/src/core/lib/promise/{pipe.cc → trace.cc} +3 -2
  548. data/src/core/lib/promise/trace.h +24 -0
  549. data/src/core/lib/promise/try_join.h +82 -0
  550. data/src/core/lib/promise/try_seq.h +3 -3
  551. data/src/core/lib/resolver/resolver.h +3 -3
  552. data/src/core/lib/resolver/resolver_factory.h +4 -4
  553. data/src/core/lib/resolver/resolver_registry.cc +15 -0
  554. data/src/core/lib/resolver/resolver_registry.h +3 -3
  555. data/src/core/lib/resolver/server_address.cc +1 -0
  556. data/src/core/lib/resolver/server_address.h +3 -3
  557. data/src/core/lib/resource_quota/api.h +3 -3
  558. data/src/core/lib/resource_quota/arena.cc +36 -9
  559. data/src/core/lib/resource_quota/arena.h +84 -22
  560. data/src/core/lib/resource_quota/memory_quota.h +3 -3
  561. data/src/core/lib/resource_quota/periodic_update.h +3 -3
  562. data/src/core/lib/resource_quota/resource_quota.h +3 -3
  563. data/src/core/lib/resource_quota/thread_quota.h +3 -3
  564. data/src/core/lib/resource_quota/trace.h +3 -3
  565. data/src/core/lib/security/authorization/authorization_engine.h +3 -3
  566. data/src/core/lib/security/authorization/authorization_policy_provider.h +3 -3
  567. data/src/core/lib/security/authorization/evaluate_args.h +3 -3
  568. data/src/core/lib/security/authorization/grpc_authorization_engine.h +3 -3
  569. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +3 -3
  570. data/src/core/lib/security/authorization/matchers.h +3 -3
  571. data/src/core/lib/security/authorization/rbac_policy.cc +1 -0
  572. data/src/core/lib/security/authorization/rbac_policy.h +3 -3
  573. data/src/core/lib/security/certificate_provider/certificate_provider_factory.h +3 -3
  574. data/src/core/lib/security/certificate_provider/certificate_provider_registry.h +3 -3
  575. data/src/core/lib/security/context/security_context.h +3 -3
  576. data/src/core/lib/security/credentials/alts/alts_credentials.h +3 -3
  577. data/src/core/lib/security/credentials/alts/check_gcp_environment.h +3 -3
  578. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.h +3 -3
  579. data/src/core/lib/security/credentials/call_creds_util.h +3 -3
  580. data/src/core/lib/security/credentials/channel_creds_registry.h +3 -3
  581. data/src/core/lib/security/credentials/composite/composite_credentials.h +3 -3
  582. data/src/core/lib/security/credentials/credentials.h +3 -3
  583. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +1 -0
  584. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +3 -3
  585. data/src/core/lib/security/credentials/external/aws_request_signer.cc +1 -0
  586. data/src/core/lib/security/credentials/external/aws_request_signer.h +3 -3
  587. data/src/core/lib/security/credentials/external/external_account_credentials.cc +1 -0
  588. data/src/core/lib/security/credentials/external/external_account_credentials.h +3 -3
  589. data/src/core/lib/security/credentials/external/file_external_account_credentials.h +3 -3
  590. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +1 -0
  591. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +3 -3
  592. data/src/core/lib/security/credentials/fake/fake_credentials.h +3 -3
  593. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +3 -3
  594. data/src/core/lib/security/credentials/iam/iam_credentials.cc +1 -0
  595. data/src/core/lib/security/credentials/iam/iam_credentials.h +3 -3
  596. data/src/core/lib/security/credentials/insecure/insecure_credentials.h +3 -3
  597. data/src/core/lib/security/credentials/jwt/json_token.h +3 -3
  598. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +4 -3
  599. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +3 -3
  600. data/src/core/lib/security/credentials/local/local_credentials.h +3 -3
  601. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +4 -3
  602. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +3 -3
  603. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +3 -3
  604. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h +3 -3
  605. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +1 -1
  606. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +3 -3
  607. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +3 -3
  608. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +3 -3
  609. data/src/core/lib/security/credentials/tls/tls_credentials.h +3 -3
  610. data/src/core/lib/security/credentials/tls/tls_utils.h +3 -3
  611. data/src/core/lib/security/credentials/xds/xds_credentials.h +3 -3
  612. data/src/core/lib/security/security_connector/alts/alts_security_connector.h +3 -3
  613. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +1 -0
  614. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +3 -3
  615. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +3 -3
  616. data/src/core/lib/security/security_connector/load_system_roots.h +3 -3
  617. data/src/core/lib/security/security_connector/load_system_roots_supported.h +3 -3
  618. data/src/core/lib/security/security_connector/local/local_security_connector.h +3 -3
  619. data/src/core/lib/security/security_connector/security_connector.h +3 -3
  620. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +1 -0
  621. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +3 -3
  622. data/src/core/lib/security/security_connector/ssl_utils.h +3 -3
  623. data/src/core/lib/security/security_connector/ssl_utils_config.h +3 -3
  624. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +3 -3
  625. data/src/core/lib/security/transport/auth_filters.h +27 -5
  626. data/src/core/lib/security/transport/secure_endpoint.h +3 -3
  627. data/src/core/lib/security/transport/security_handshaker.cc +9 -0
  628. data/src/core/lib/security/transport/security_handshaker.h +3 -3
  629. data/src/core/lib/security/transport/server_auth_filter.cc +120 -251
  630. data/src/core/lib/security/transport/tsi_error.h +3 -3
  631. data/src/core/lib/security/util/json_util.h +3 -3
  632. data/src/core/lib/service_config/service_config.h +3 -3
  633. data/src/core/lib/service_config/service_config_call_data.h +3 -3
  634. data/src/core/lib/service_config/service_config_impl.h +3 -3
  635. data/src/core/lib/service_config/service_config_parser.h +3 -3
  636. data/src/core/lib/slice/b64.h +3 -3
  637. data/src/core/lib/slice/percent_encoding.h +3 -3
  638. data/src/core/lib/slice/slice.cc +3 -3
  639. data/src/core/lib/slice/slice.h +14 -21
  640. data/src/core/lib/slice/slice_buffer.h +10 -4
  641. data/src/core/lib/slice/slice_internal.h +3 -3
  642. data/src/core/lib/slice/slice_refcount.cc +20 -0
  643. data/src/core/lib/slice/slice_refcount.h +26 -6
  644. data/src/core/lib/slice/slice_string_helpers.h +3 -3
  645. data/src/core/lib/surface/api_trace.h +3 -3
  646. data/src/core/lib/surface/builtins.h +3 -3
  647. data/src/core/lib/surface/call.cc +866 -252
  648. data/src/core/lib/surface/call.h +31 -3
  649. data/src/core/lib/surface/call_log_batch.cc +1 -0
  650. data/src/core/lib/surface/call_test_only.h +3 -3
  651. data/src/core/lib/surface/call_trace.cc +21 -11
  652. data/src/core/lib/surface/call_trace.h +3 -3
  653. data/src/core/lib/surface/channel.h +3 -3
  654. data/src/core/lib/surface/channel_init.h +3 -3
  655. data/src/core/lib/surface/channel_stack_type.h +3 -3
  656. data/src/core/lib/surface/completion_queue.cc +1 -0
  657. data/src/core/lib/surface/completion_queue.h +3 -3
  658. data/src/core/lib/surface/completion_queue_factory.h +3 -3
  659. data/src/core/lib/surface/event_string.cc +1 -0
  660. data/src/core/lib/surface/event_string.h +3 -3
  661. data/src/core/lib/surface/init.cc +1 -1
  662. data/src/core/lib/surface/init.h +3 -3
  663. data/src/core/lib/surface/init_internally.h +3 -3
  664. data/src/core/lib/surface/lame_client.cc +3 -1
  665. data/src/core/lib/surface/lame_client.h +3 -3
  666. data/src/core/lib/surface/server.cc +273 -27
  667. data/src/core/lib/surface/server.h +6 -3
  668. data/src/core/lib/surface/validate_metadata.h +3 -3
  669. data/src/core/lib/surface/version.cc +2 -2
  670. data/src/core/lib/transport/bdp_estimator.h +3 -3
  671. data/src/core/lib/transport/connectivity_state.h +3 -3
  672. data/src/core/lib/transport/error_utils.h +3 -3
  673. data/src/core/lib/transport/handshaker.cc +11 -0
  674. data/src/core/lib/transport/handshaker.h +4 -4
  675. data/src/core/lib/transport/handshaker_factory.h +3 -3
  676. data/src/core/lib/transport/handshaker_registry.h +3 -3
  677. data/src/core/lib/transport/http2_errors.h +3 -3
  678. data/src/core/lib/transport/http_connect_handshaker.h +3 -3
  679. data/src/core/lib/transport/metadata_batch.cc +11 -0
  680. data/src/core/lib/transport/metadata_batch.h +24 -3
  681. data/src/core/lib/transport/parsed_metadata.h +3 -3
  682. data/src/core/lib/transport/pid_controller.h +3 -3
  683. data/src/core/lib/transport/status_conversion.h +3 -3
  684. data/src/core/lib/transport/tcp_connect_handshaker.cc +0 -1
  685. data/src/core/lib/transport/tcp_connect_handshaker.h +3 -3
  686. data/src/core/lib/transport/timeout_encoding.h +3 -3
  687. data/src/core/lib/transport/transport.cc +3 -8
  688. data/src/core/lib/transport/transport.h +16 -8
  689. data/src/core/lib/transport/transport_fwd.h +3 -3
  690. data/src/core/lib/transport/transport_impl.h +3 -3
  691. data/src/core/lib/transport/transport_op_string.cc +1 -0
  692. data/src/core/lib/uri/uri_parser.cc +1 -1
  693. data/src/core/lib/uri/uri_parser.h +3 -3
  694. data/src/core/plugin_registry/grpc_plugin_registry.cc +5 -0
  695. data/src/core/tsi/alts/crypt/gsec.h +3 -3
  696. data/src/core/tsi/alts/frame_protector/alts_counter.h +3 -3
  697. data/src/core/tsi/alts/frame_protector/alts_crypter.h +3 -3
  698. data/src/core/tsi/alts/frame_protector/alts_frame_protector.h +3 -3
  699. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.h +3 -3
  700. data/src/core/tsi/alts/frame_protector/frame_handler.h +3 -3
  701. data/src/core/tsi/alts/handshaker/alts_handshaker_client.h +3 -3
  702. data/src/core/tsi/alts/handshaker/alts_shared_resource.h +3 -3
  703. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.h +3 -3
  704. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker_private.h +3 -3
  705. data/src/core/tsi/alts/handshaker/alts_tsi_utils.h +3 -3
  706. data/src/core/tsi/alts/handshaker/transport_security_common_api.h +3 -3
  707. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h +3 -3
  708. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h +3 -3
  709. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol.h +3 -3
  710. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.h +3 -3
  711. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h +3 -3
  712. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h +3 -3
  713. data/src/core/tsi/fake_transport_security.h +3 -3
  714. data/src/core/tsi/local_transport_security.h +3 -3
  715. data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +1 -1
  716. data/src/core/tsi/ssl/key_logging/ssl_key_logging.h +3 -3
  717. data/src/core/tsi/ssl/session_cache/ssl_session.h +3 -3
  718. data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +3 -3
  719. data/src/core/tsi/ssl_transport_security.cc +113 -24
  720. data/src/core/tsi/ssl_transport_security.h +5 -3
  721. data/src/core/tsi/ssl_transport_security_utils.h +3 -3
  722. data/src/core/tsi/ssl_types.h +3 -3
  723. data/src/core/tsi/transport_security.h +3 -3
  724. data/src/core/tsi/transport_security_grpc.h +3 -3
  725. data/src/core/tsi/transport_security_interface.h +3 -3
  726. data/src/ruby/lib/grpc/version.rb +1 -1
  727. data/src/ruby/pb/generate_proto_ruby.sh +0 -6
  728. data/third_party/abseil-cpp/absl/algorithm/container.h +56 -57
  729. data/third_party/abseil-cpp/absl/base/attributes.h +39 -19
  730. data/third_party/abseil-cpp/absl/base/config.h +44 -3
  731. data/third_party/abseil-cpp/absl/base/internal/cycleclock.h +3 -18
  732. data/third_party/abseil-cpp/absl/base/internal/cycleclock_config.h +55 -0
  733. data/third_party/abseil-cpp/absl/base/internal/direct_mmap.h +2 -1
  734. data/third_party/abseil-cpp/absl/base/internal/inline_variable.h +3 -3
  735. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.cc +2 -2
  736. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.h +1 -1
  737. data/third_party/abseil-cpp/absl/base/internal/raw_logging.cc +10 -6
  738. data/third_party/abseil-cpp/absl/base/internal/raw_logging.h +23 -24
  739. data/third_party/abseil-cpp/absl/base/internal/spinlock.cc +3 -3
  740. data/third_party/abseil-cpp/absl/base/internal/spinlock.h +2 -6
  741. data/third_party/abseil-cpp/absl/base/internal/spinlock_win32.inc +4 -1
  742. data/third_party/abseil-cpp/absl/base/internal/strerror.cc +4 -4
  743. data/third_party/abseil-cpp/absl/base/internal/sysinfo.cc +14 -10
  744. data/third_party/abseil-cpp/absl/base/internal/thread_annotations.h +9 -0
  745. data/third_party/abseil-cpp/absl/base/internal/thread_identity.h +4 -0
  746. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h +3 -40
  747. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock_config.h +62 -0
  748. data/third_party/abseil-cpp/absl/base/macros.h +4 -21
  749. data/third_party/abseil-cpp/absl/base/optimization.h +58 -6
  750. data/third_party/abseil-cpp/absl/base/options.h +1 -7
  751. data/third_party/abseil-cpp/absl/base/policy_checks.h +15 -13
  752. data/third_party/abseil-cpp/absl/container/fixed_array.h +7 -5
  753. data/third_party/abseil-cpp/absl/container/flat_hash_set.h +0 -7
  754. data/third_party/abseil-cpp/absl/container/inlined_vector.h +66 -18
  755. data/third_party/abseil-cpp/absl/container/internal/common.h +3 -3
  756. data/third_party/abseil-cpp/absl/container/internal/common_policy_traits.h +132 -0
  757. data/third_party/abseil-cpp/absl/container/internal/container_memory.h +13 -1
  758. data/third_party/abseil-cpp/absl/container/internal/hash_policy_traits.h +4 -55
  759. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +50 -5
  760. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +14 -46
  761. data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +110 -32
  762. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +155 -4
  763. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +661 -341
  764. data/third_party/abseil-cpp/absl/crc/crc32c.cc +99 -0
  765. data/third_party/abseil-cpp/absl/crc/crc32c.h +183 -0
  766. data/third_party/abseil-cpp/absl/crc/internal/cpu_detect.cc +256 -0
  767. data/third_party/abseil-cpp/absl/crc/internal/cpu_detect.h +57 -0
  768. data/third_party/abseil-cpp/absl/crc/internal/crc.cc +468 -0
  769. data/third_party/abseil-cpp/absl/crc/internal/crc.h +91 -0
  770. data/third_party/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h +269 -0
  771. data/third_party/abseil-cpp/absl/crc/internal/crc32c.h +39 -0
  772. data/third_party/abseil-cpp/absl/crc/internal/crc32c_inline.h +72 -0
  773. data/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.cc +130 -0
  774. data/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.h +159 -0
  775. data/third_party/abseil-cpp/absl/crc/internal/crc_internal.h +179 -0
  776. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy.h +119 -0
  777. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_fallback.cc +75 -0
  778. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_x86_64.cc +434 -0
  779. data/third_party/abseil-cpp/absl/crc/internal/crc_non_temporal_memcpy.cc +93 -0
  780. data/third_party/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc +725 -0
  781. data/third_party/abseil-cpp/absl/crc/internal/non_temporal_arm_intrinsics.h +79 -0
  782. data/third_party/abseil-cpp/absl/crc/internal/non_temporal_memcpy.h +180 -0
  783. data/third_party/abseil-cpp/absl/debugging/internal/address_is_readable.cc +1 -1
  784. data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +67 -38
  785. data/third_party/abseil-cpp/absl/debugging/internal/demangle.h +1 -1
  786. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.cc +12 -13
  787. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +11 -9
  788. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_generic-inl.inc +1 -1
  789. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_riscv-inl.inc +40 -85
  790. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_win32-inl.inc +5 -4
  791. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +33 -8
  792. data/third_party/abseil-cpp/absl/debugging/internal/vdso_support.cc +3 -2
  793. data/third_party/abseil-cpp/absl/debugging/symbolize_darwin.inc +3 -2
  794. data/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +118 -94
  795. data/third_party/abseil-cpp/absl/debugging/symbolize_win32.inc +7 -6
  796. data/third_party/abseil-cpp/absl/functional/any_invocable.h +5 -2
  797. data/third_party/abseil-cpp/absl/functional/internal/any_invocable.h +47 -26
  798. data/third_party/abseil-cpp/absl/hash/internal/city.cc +10 -10
  799. data/third_party/abseil-cpp/absl/hash/internal/hash.h +18 -4
  800. data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.cc +3 -14
  801. data/third_party/abseil-cpp/absl/memory/memory.h +26 -447
  802. data/third_party/abseil-cpp/absl/meta/type_traits.h +104 -12
  803. data/third_party/abseil-cpp/absl/numeric/bits.h +2 -3
  804. data/third_party/abseil-cpp/absl/numeric/int128.cc +10 -8
  805. data/third_party/abseil-cpp/absl/profiling/internal/sample_recorder.h +14 -6
  806. data/third_party/abseil-cpp/absl/random/internal/fast_uniform_bits.h +2 -1
  807. data/third_party/abseil-cpp/absl/random/internal/nonsecure_base.h +1 -1
  808. data/third_party/abseil-cpp/absl/random/internal/pcg_engine.h +2 -23
  809. data/third_party/abseil-cpp/absl/random/internal/pool_urbg.cc +9 -9
  810. data/third_party/abseil-cpp/absl/random/internal/seed_material.cc +2 -2
  811. data/third_party/abseil-cpp/absl/random/random.h +6 -6
  812. data/third_party/abseil-cpp/absl/status/internal/status_internal.h +1 -0
  813. data/third_party/abseil-cpp/absl/status/status.cc +19 -12
  814. data/third_party/abseil-cpp/absl/status/status.h +2 -2
  815. data/third_party/abseil-cpp/absl/strings/ascii.cc +5 -5
  816. data/third_party/abseil-cpp/absl/strings/charconv.cc +534 -96
  817. data/third_party/abseil-cpp/absl/strings/cord.cc +92 -40
  818. data/third_party/abseil-cpp/absl/strings/cord.h +71 -80
  819. data/third_party/abseil-cpp/absl/strings/cord_buffer.h +8 -5
  820. data/third_party/abseil-cpp/absl/strings/escaping.cc +73 -62
  821. data/third_party/abseil-cpp/absl/strings/escaping.h +24 -19
  822. data/third_party/abseil-cpp/absl/strings/internal/char_map.h +14 -12
  823. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.cc +4 -4
  824. data/third_party/abseil-cpp/absl/strings/internal/charconv_parse.cc +2 -2
  825. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +326 -70
  826. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.cc +8 -4
  827. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h +26 -14
  828. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.cc +5 -5
  829. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_crc.cc +9 -7
  830. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_crc.h +5 -4
  831. data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.h +7 -15
  832. data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.h +3 -3
  833. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.cc +8 -5
  834. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.h +7 -7
  835. data/third_party/abseil-cpp/absl/strings/internal/cordz_statistics.h +4 -4
  836. data/third_party/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.cc +93 -0
  837. data/third_party/abseil-cpp/absl/strings/internal/damerau_levenshtein_distance.h +34 -0
  838. data/third_party/abseil-cpp/absl/strings/internal/escaping.cc +12 -10
  839. data/third_party/abseil-cpp/absl/strings/internal/escaping.h +7 -9
  840. data/third_party/abseil-cpp/absl/strings/internal/has_absl_stringify.h +55 -0
  841. data/third_party/abseil-cpp/absl/strings/internal/memutil.cc +9 -6
  842. data/third_party/abseil-cpp/absl/strings/internal/ostringstream.cc +14 -7
  843. data/third_party/abseil-cpp/absl/strings/internal/ostringstream.h +35 -10
  844. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.cc +113 -46
  845. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.h +126 -29
  846. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.cc +3 -2
  847. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h +4 -3
  848. data/third_party/abseil-cpp/absl/strings/internal/str_format/checker.h +49 -287
  849. data/third_party/abseil-cpp/absl/strings/internal/str_format/constexpr_parser.h +351 -0
  850. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.cc +2 -1
  851. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h +4 -2
  852. data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc +215 -181
  853. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.cc +10 -209
  854. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.h +10 -101
  855. data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +2 -1
  856. data/third_party/abseil-cpp/absl/strings/internal/stringify_sink.cc +28 -0
  857. data/third_party/abseil-cpp/absl/strings/internal/stringify_sink.h +57 -0
  858. data/third_party/abseil-cpp/absl/strings/numbers.cc +34 -31
  859. data/third_party/abseil-cpp/absl/strings/str_cat.cc +9 -6
  860. data/third_party/abseil-cpp/absl/strings/str_cat.h +50 -3
  861. data/third_party/abseil-cpp/absl/strings/str_format.h +71 -9
  862. data/third_party/abseil-cpp/absl/strings/string_view.cc +6 -6
  863. data/third_party/abseil-cpp/absl/strings/string_view.h +3 -10
  864. data/third_party/abseil-cpp/absl/strings/substitute.cc +8 -6
  865. data/third_party/abseil-cpp/absl/strings/substitute.h +46 -20
  866. data/third_party/abseil-cpp/absl/synchronization/internal/futex.h +20 -17
  867. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +37 -31
  868. data/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.h +22 -8
  869. data/third_party/abseil-cpp/absl/synchronization/mutex.cc +104 -55
  870. data/third_party/abseil-cpp/absl/synchronization/mutex.h +85 -46
  871. data/third_party/abseil-cpp/absl/synchronization/notification.cc +0 -1
  872. data/third_party/abseil-cpp/absl/synchronization/notification.h +0 -1
  873. data/third_party/abseil-cpp/absl/time/civil_time.cc +26 -0
  874. data/third_party/abseil-cpp/absl/time/civil_time.h +25 -0
  875. data/third_party/abseil-cpp/absl/time/clock.cc +17 -11
  876. data/third_party/abseil-cpp/absl/time/duration.cc +7 -7
  877. data/third_party/abseil-cpp/absl/time/format.cc +2 -1
  878. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc +1 -1
  879. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.cc +26 -5
  880. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +7 -6
  881. data/third_party/abseil-cpp/absl/time/internal/cctz/src/zone_info_source.cc +36 -35
  882. data/third_party/abseil-cpp/absl/time/time.cc +2 -2
  883. data/third_party/abseil-cpp/absl/time/time.h +253 -158
  884. data/third_party/abseil-cpp/absl/types/internal/span.h +30 -19
  885. data/third_party/abseil-cpp/absl/types/internal/variant.h +28 -40
  886. data/third_party/abseil-cpp/absl/types/span.h +29 -7
  887. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_genn.c +1 -1
  888. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +1 -2
  889. metadata +73 -8
  890. data/src/core/lib/event_engine/socket_notifier.h +0 -55
  891. data/src/core/lib/promise/for_each.h +0 -155
  892. data/src/core/lib/promise/map_pipe.h +0 -88
  893. data/src/core/lib/promise/try_concurrently.h +0 -342
@@ -0,0 +1,111 @@
1
+ /* This file was generated by upbc (the upb compiler) from the input
2
+ * file:
3
+ *
4
+ * envoy/extensions/load_balancing_policies/common/v3/common.proto
5
+ *
6
+ * Do not edit -- your changes will be discarded when the file is
7
+ * regenerated. */
8
+
9
+ #include <stddef.h>
10
+ #include "upb/msg_internal.h"
11
+ #include "envoy/extensions/load_balancing_policies/common/v3/common.upb.h"
12
+ #include "envoy/config/core/v3/base.upb.h"
13
+ #include "envoy/type/v3/percent.upb.h"
14
+ #include "google/protobuf/duration.upb.h"
15
+ #include "google/protobuf/wrappers.upb.h"
16
+ #include "udpa/annotations/status.upb.h"
17
+ #include "validate/validate.upb.h"
18
+
19
+ #include "upb/port_def.inc"
20
+
21
+ static const upb_MiniTable_Sub envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_submsgs[2] = {
22
+ {.submsg = &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_msginit},
23
+ {.submsg = &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig_msginit},
24
+ };
25
+
26
+ static const upb_MiniTable_Field envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig__fields[2] = {
27
+ {1, UPB_SIZE(4, 8), UPB_SIZE(-1, -1), 0, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
28
+ {2, UPB_SIZE(4, 8), UPB_SIZE(-1, -1), 1, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
29
+ };
30
+
31
+ const upb_MiniTable envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_msginit = {
32
+ &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_submsgs[0],
33
+ &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig__fields[0],
34
+ UPB_SIZE(8, 16), 2, kUpb_ExtMode_NonExtendable, 2, 255, 0,
35
+ };
36
+
37
+ static const upb_MiniTable_Sub envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_submsgs[2] = {
38
+ {.submsg = &envoy_type_v3_Percent_msginit},
39
+ {.submsg = &google_protobuf_UInt64Value_msginit},
40
+ };
41
+
42
+ static const upb_MiniTable_Field envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig__fields[3] = {
43
+ {1, UPB_SIZE(4, 8), UPB_SIZE(1, 1), 0, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
44
+ {2, UPB_SIZE(8, 16), UPB_SIZE(2, 2), 1, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
45
+ {3, UPB_SIZE(1, 1), UPB_SIZE(0, 0), kUpb_NoSub, 8, kUpb_FieldMode_Scalar | (kUpb_FieldRep_1Byte << kUpb_FieldRep_Shift)},
46
+ };
47
+
48
+ const upb_MiniTable envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_msginit = {
49
+ &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_submsgs[0],
50
+ &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig__fields[0],
51
+ UPB_SIZE(16, 24), 3, kUpb_ExtMode_NonExtendable, 3, 255, 0,
52
+ };
53
+
54
+ const upb_MiniTable envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig_msginit = {
55
+ NULL,
56
+ NULL,
57
+ UPB_SIZE(0, 0), 0, kUpb_ExtMode_NonExtendable, 0, 255, 0,
58
+ };
59
+
60
+ static const upb_MiniTable_Sub envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_submsgs[3] = {
61
+ {.submsg = &google_protobuf_Duration_msginit},
62
+ {.submsg = &envoy_config_core_v3_RuntimeDouble_msginit},
63
+ {.submsg = &envoy_type_v3_Percent_msginit},
64
+ };
65
+
66
+ static const upb_MiniTable_Field envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig__fields[3] = {
67
+ {1, UPB_SIZE(4, 8), UPB_SIZE(1, 1), 0, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
68
+ {2, UPB_SIZE(8, 16), UPB_SIZE(2, 2), 1, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
69
+ {3, UPB_SIZE(12, 24), UPB_SIZE(3, 3), 2, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
70
+ };
71
+
72
+ const upb_MiniTable envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_msginit = {
73
+ &envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_submsgs[0],
74
+ &envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig__fields[0],
75
+ UPB_SIZE(16, 32), 3, kUpb_ExtMode_NonExtendable, 3, 255, 0,
76
+ };
77
+
78
+ static const upb_MiniTable_Sub envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_submsgs[1] = {
79
+ {.submsg = &google_protobuf_UInt32Value_msginit},
80
+ };
81
+
82
+ static const upb_MiniTable_Field envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig__fields[2] = {
83
+ {1, UPB_SIZE(1, 1), UPB_SIZE(0, 0), kUpb_NoSub, 8, kUpb_FieldMode_Scalar | (kUpb_FieldRep_1Byte << kUpb_FieldRep_Shift)},
84
+ {2, UPB_SIZE(4, 8), UPB_SIZE(1, 1), 0, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
85
+ };
86
+
87
+ const upb_MiniTable envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_msginit = {
88
+ &envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_submsgs[0],
89
+ &envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig__fields[0],
90
+ UPB_SIZE(8, 16), 2, kUpb_ExtMode_NonExtendable, 2, 255, 0,
91
+ };
92
+
93
+ static const upb_MiniTable *messages_layout[5] = {
94
+ &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_msginit,
95
+ &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_msginit,
96
+ &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig_msginit,
97
+ &envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_msginit,
98
+ &envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_msginit,
99
+ };
100
+
101
+ const upb_MiniTable_File envoy_extensions_load_balancing_policies_common_v3_common_proto_upb_file_layout = {
102
+ messages_layout,
103
+ NULL,
104
+ NULL,
105
+ 5,
106
+ 0,
107
+ 0,
108
+ };
109
+
110
+ #include "upb/port_undef.inc"
111
+
@@ -0,0 +1,444 @@
1
+ /* This file was generated by upbc (the upb compiler) from the input
2
+ * file:
3
+ *
4
+ * envoy/extensions/load_balancing_policies/common/v3/common.proto
5
+ *
6
+ * Do not edit -- your changes will be discarded when the file is
7
+ * regenerated. */
8
+
9
+ #ifndef ENVOY_EXTENSIONS_LOAD_BALANCING_POLICIES_COMMON_V3_COMMON_PROTO_UPB_H_
10
+ #define ENVOY_EXTENSIONS_LOAD_BALANCING_POLICIES_COMMON_V3_COMMON_PROTO_UPB_H_
11
+
12
+ #include "upb/msg_internal.h"
13
+ #include "upb/decode.h"
14
+ #include "upb/decode_fast.h"
15
+ #include "upb/encode.h"
16
+
17
+ #include "upb/port_def.inc"
18
+
19
+ #ifdef __cplusplus
20
+ extern "C" {
21
+ #endif
22
+
23
+ struct envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig;
24
+ struct envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig;
25
+ struct envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig;
26
+ struct envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig;
27
+ struct envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig;
28
+ typedef struct envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig;
29
+ typedef struct envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig;
30
+ typedef struct envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig;
31
+ typedef struct envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig;
32
+ typedef struct envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig;
33
+ extern const upb_MiniTable envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_msginit;
34
+ extern const upb_MiniTable envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_msginit;
35
+ extern const upb_MiniTable envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig_msginit;
36
+ extern const upb_MiniTable envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_msginit;
37
+ extern const upb_MiniTable envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_msginit;
38
+ struct envoy_config_core_v3_RuntimeDouble;
39
+ struct envoy_type_v3_Percent;
40
+ struct google_protobuf_Duration;
41
+ struct google_protobuf_UInt32Value;
42
+ struct google_protobuf_UInt64Value;
43
+ extern const upb_MiniTable envoy_config_core_v3_RuntimeDouble_msginit;
44
+ extern const upb_MiniTable envoy_type_v3_Percent_msginit;
45
+ extern const upb_MiniTable google_protobuf_Duration_msginit;
46
+ extern const upb_MiniTable google_protobuf_UInt32Value_msginit;
47
+ extern const upb_MiniTable google_protobuf_UInt64Value_msginit;
48
+
49
+
50
+
51
+ /* envoy.extensions.load_balancing_policies.common.v3.LocalityLbConfig */
52
+
53
+ UPB_INLINE envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_new(upb_Arena* arena) {
54
+ return (envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig*)_upb_Message_New(&envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_msginit, arena);
55
+ }
56
+ UPB_INLINE envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
57
+ envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig* ret = envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_new(arena);
58
+ if (!ret) return NULL;
59
+ if (upb_Decode(buf, size, ret, &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
60
+ return NULL;
61
+ }
62
+ return ret;
63
+ }
64
+ UPB_INLINE envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_parse_ex(const char* buf, size_t size,
65
+ const upb_ExtensionRegistry* extreg,
66
+ int options, upb_Arena* arena) {
67
+ envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig* ret = envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_new(arena);
68
+ if (!ret) return NULL;
69
+ if (upb_Decode(buf, size, ret, &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_msginit, extreg, options, arena) !=
70
+ kUpb_DecodeStatus_Ok) {
71
+ return NULL;
72
+ }
73
+ return ret;
74
+ }
75
+ UPB_INLINE char* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_serialize(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig* msg, upb_Arena* arena, size_t* len) {
76
+ char* ptr;
77
+ (void)upb_Encode(msg, &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_msginit, 0, arena, &ptr, len);
78
+ return ptr;
79
+ }
80
+ UPB_INLINE char* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_serialize_ex(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig* msg, int options,
81
+ upb_Arena* arena, size_t* len) {
82
+ char* ptr;
83
+ (void)upb_Encode(msg, &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_msginit, options, arena, &ptr, len);
84
+ return ptr;
85
+ }
86
+ typedef enum {
87
+ envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_locality_config_specifier_zone_aware_lb_config = 1,
88
+ envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_locality_config_specifier_locality_weighted_lb_config = 2,
89
+ envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_locality_config_specifier_NOT_SET = 0
90
+ } envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_locality_config_specifier_oneofcases;
91
+ UPB_INLINE envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_locality_config_specifier_oneofcases envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_locality_config_specifier_case(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig* msg) {
92
+ return (envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_locality_config_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t);
93
+ }
94
+ UPB_INLINE bool envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_has_zone_aware_lb_config(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig* msg) {
95
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 1;
96
+ }
97
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_clear_zone_aware_lb_config(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig* msg) {
98
+ UPB_WRITE_ONEOF(msg, envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig*, UPB_SIZE(4, 8), 0, UPB_SIZE(0, 0), envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_locality_config_specifier_NOT_SET);
99
+ }
100
+ UPB_INLINE const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_zone_aware_lb_config(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig* msg) {
101
+ return UPB_READ_ONEOF(msg, const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig*, UPB_SIZE(4, 8), UPB_SIZE(0, 0), 1, NULL);
102
+ }
103
+ UPB_INLINE bool envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_has_locality_weighted_lb_config(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig* msg) {
104
+ return _upb_getoneofcase(msg, UPB_SIZE(0, 0)) == 2;
105
+ }
106
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_clear_locality_weighted_lb_config(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig* msg) {
107
+ UPB_WRITE_ONEOF(msg, envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig*, UPB_SIZE(4, 8), 0, UPB_SIZE(0, 0), envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_locality_config_specifier_NOT_SET);
108
+ }
109
+ UPB_INLINE const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_locality_weighted_lb_config(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig* msg) {
110
+ return UPB_READ_ONEOF(msg, const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig*, UPB_SIZE(4, 8), UPB_SIZE(0, 0), 2, NULL);
111
+ }
112
+
113
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_set_zone_aware_lb_config(envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig *msg, envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* value) {
114
+ UPB_WRITE_ONEOF(msg, envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig*, UPB_SIZE(4, 8), value, UPB_SIZE(0, 0), 1);
115
+ }
116
+ UPB_INLINE struct envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_mutable_zone_aware_lb_config(envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig* msg, upb_Arena* arena) {
117
+ struct envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* sub = (struct envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig*)envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_zone_aware_lb_config(msg);
118
+ if (sub == NULL) {
119
+ sub = (struct envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig*)_upb_Message_New(&envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_msginit, arena);
120
+ if (!sub) return NULL;
121
+ envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_set_zone_aware_lb_config(msg, sub);
122
+ }
123
+ return sub;
124
+ }
125
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_set_locality_weighted_lb_config(envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig *msg, envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig* value) {
126
+ UPB_WRITE_ONEOF(msg, envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig*, UPB_SIZE(4, 8), value, UPB_SIZE(0, 0), 2);
127
+ }
128
+ UPB_INLINE struct envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_mutable_locality_weighted_lb_config(envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig* msg, upb_Arena* arena) {
129
+ struct envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig* sub = (struct envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig*)envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_locality_weighted_lb_config(msg);
130
+ if (sub == NULL) {
131
+ sub = (struct envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig*)_upb_Message_New(&envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig_msginit, arena);
132
+ if (!sub) return NULL;
133
+ envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_set_locality_weighted_lb_config(msg, sub);
134
+ }
135
+ return sub;
136
+ }
137
+
138
+ /* envoy.extensions.load_balancing_policies.common.v3.LocalityLbConfig.ZoneAwareLbConfig */
139
+
140
+ UPB_INLINE envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_new(upb_Arena* arena) {
141
+ return (envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig*)_upb_Message_New(&envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_msginit, arena);
142
+ }
143
+ UPB_INLINE envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
144
+ envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* ret = envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_new(arena);
145
+ if (!ret) return NULL;
146
+ if (upb_Decode(buf, size, ret, &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
147
+ return NULL;
148
+ }
149
+ return ret;
150
+ }
151
+ UPB_INLINE envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_parse_ex(const char* buf, size_t size,
152
+ const upb_ExtensionRegistry* extreg,
153
+ int options, upb_Arena* arena) {
154
+ envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* ret = envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_new(arena);
155
+ if (!ret) return NULL;
156
+ if (upb_Decode(buf, size, ret, &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_msginit, extreg, options, arena) !=
157
+ kUpb_DecodeStatus_Ok) {
158
+ return NULL;
159
+ }
160
+ return ret;
161
+ }
162
+ UPB_INLINE char* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_serialize(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* msg, upb_Arena* arena, size_t* len) {
163
+ char* ptr;
164
+ (void)upb_Encode(msg, &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_msginit, 0, arena, &ptr, len);
165
+ return ptr;
166
+ }
167
+ UPB_INLINE char* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_serialize_ex(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* msg, int options,
168
+ upb_Arena* arena, size_t* len) {
169
+ char* ptr;
170
+ (void)upb_Encode(msg, &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_msginit, options, arena, &ptr, len);
171
+ return ptr;
172
+ }
173
+ UPB_INLINE bool envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_has_routing_enabled(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* msg) {
174
+ return _upb_hasbit(msg, 1);
175
+ }
176
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_clear_routing_enabled(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* msg) {
177
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const upb_Message*) = NULL;
178
+ }
179
+ UPB_INLINE const struct envoy_type_v3_Percent* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_routing_enabled(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* msg) {
180
+ return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct envoy_type_v3_Percent*);
181
+ }
182
+ UPB_INLINE bool envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_has_min_cluster_size(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* msg) {
183
+ return _upb_hasbit(msg, 2);
184
+ }
185
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_clear_min_cluster_size(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* msg) {
186
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const upb_Message*) = NULL;
187
+ }
188
+ UPB_INLINE const struct google_protobuf_UInt64Value* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_min_cluster_size(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* msg) {
189
+ return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct google_protobuf_UInt64Value*);
190
+ }
191
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_clear_fail_traffic_on_panic(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* msg) {
192
+ *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = 0;
193
+ }
194
+ UPB_INLINE bool envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_fail_traffic_on_panic(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* msg) {
195
+ return *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool);
196
+ }
197
+
198
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_set_routing_enabled(envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig *msg, struct envoy_type_v3_Percent* value) {
199
+ _upb_sethas(msg, 1);
200
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct envoy_type_v3_Percent*) = value;
201
+ }
202
+ UPB_INLINE struct envoy_type_v3_Percent* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_mutable_routing_enabled(envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* msg, upb_Arena* arena) {
203
+ struct envoy_type_v3_Percent* sub = (struct envoy_type_v3_Percent*)envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_routing_enabled(msg);
204
+ if (sub == NULL) {
205
+ sub = (struct envoy_type_v3_Percent*)_upb_Message_New(&envoy_type_v3_Percent_msginit, arena);
206
+ if (!sub) return NULL;
207
+ envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_set_routing_enabled(msg, sub);
208
+ }
209
+ return sub;
210
+ }
211
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_set_min_cluster_size(envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig *msg, struct google_protobuf_UInt64Value* value) {
212
+ _upb_sethas(msg, 2);
213
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), struct google_protobuf_UInt64Value*) = value;
214
+ }
215
+ UPB_INLINE struct google_protobuf_UInt64Value* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_mutable_min_cluster_size(envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig* msg, upb_Arena* arena) {
216
+ struct google_protobuf_UInt64Value* sub = (struct google_protobuf_UInt64Value*)envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_min_cluster_size(msg);
217
+ if (sub == NULL) {
218
+ sub = (struct google_protobuf_UInt64Value*)_upb_Message_New(&google_protobuf_UInt64Value_msginit, arena);
219
+ if (!sub) return NULL;
220
+ envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_set_min_cluster_size(msg, sub);
221
+ }
222
+ return sub;
223
+ }
224
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig_set_fail_traffic_on_panic(envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_ZoneAwareLbConfig *msg, bool value) {
225
+ *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = value;
226
+ }
227
+
228
+ /* envoy.extensions.load_balancing_policies.common.v3.LocalityLbConfig.LocalityWeightedLbConfig */
229
+
230
+ UPB_INLINE envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig_new(upb_Arena* arena) {
231
+ return (envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig*)_upb_Message_New(&envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig_msginit, arena);
232
+ }
233
+ UPB_INLINE envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
234
+ envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig* ret = envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig_new(arena);
235
+ if (!ret) return NULL;
236
+ if (upb_Decode(buf, size, ret, &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
237
+ return NULL;
238
+ }
239
+ return ret;
240
+ }
241
+ UPB_INLINE envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig_parse_ex(const char* buf, size_t size,
242
+ const upb_ExtensionRegistry* extreg,
243
+ int options, upb_Arena* arena) {
244
+ envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig* ret = envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig_new(arena);
245
+ if (!ret) return NULL;
246
+ if (upb_Decode(buf, size, ret, &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig_msginit, extreg, options, arena) !=
247
+ kUpb_DecodeStatus_Ok) {
248
+ return NULL;
249
+ }
250
+ return ret;
251
+ }
252
+ UPB_INLINE char* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig_serialize(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig* msg, upb_Arena* arena, size_t* len) {
253
+ char* ptr;
254
+ (void)upb_Encode(msg, &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig_msginit, 0, arena, &ptr, len);
255
+ return ptr;
256
+ }
257
+ UPB_INLINE char* envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig_serialize_ex(const envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig* msg, int options,
258
+ upb_Arena* arena, size_t* len) {
259
+ char* ptr;
260
+ (void)upb_Encode(msg, &envoy_extensions_load_balancing_policies_common_v3_LocalityLbConfig_LocalityWeightedLbConfig_msginit, options, arena, &ptr, len);
261
+ return ptr;
262
+ }
263
+
264
+
265
+ /* envoy.extensions.load_balancing_policies.common.v3.SlowStartConfig */
266
+
267
+ UPB_INLINE envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_new(upb_Arena* arena) {
268
+ return (envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig*)_upb_Message_New(&envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_msginit, arena);
269
+ }
270
+ UPB_INLINE envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
271
+ envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* ret = envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_new(arena);
272
+ if (!ret) return NULL;
273
+ if (upb_Decode(buf, size, ret, &envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
274
+ return NULL;
275
+ }
276
+ return ret;
277
+ }
278
+ UPB_INLINE envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_parse_ex(const char* buf, size_t size,
279
+ const upb_ExtensionRegistry* extreg,
280
+ int options, upb_Arena* arena) {
281
+ envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* ret = envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_new(arena);
282
+ if (!ret) return NULL;
283
+ if (upb_Decode(buf, size, ret, &envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_msginit, extreg, options, arena) !=
284
+ kUpb_DecodeStatus_Ok) {
285
+ return NULL;
286
+ }
287
+ return ret;
288
+ }
289
+ UPB_INLINE char* envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_serialize(const envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* msg, upb_Arena* arena, size_t* len) {
290
+ char* ptr;
291
+ (void)upb_Encode(msg, &envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_msginit, 0, arena, &ptr, len);
292
+ return ptr;
293
+ }
294
+ UPB_INLINE char* envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_serialize_ex(const envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* msg, int options,
295
+ upb_Arena* arena, size_t* len) {
296
+ char* ptr;
297
+ (void)upb_Encode(msg, &envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_msginit, options, arena, &ptr, len);
298
+ return ptr;
299
+ }
300
+ UPB_INLINE bool envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_has_slow_start_window(const envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* msg) {
301
+ return _upb_hasbit(msg, 1);
302
+ }
303
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_clear_slow_start_window(const envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* msg) {
304
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const upb_Message*) = NULL;
305
+ }
306
+ UPB_INLINE const struct google_protobuf_Duration* envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_slow_start_window(const envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* msg) {
307
+ return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_Duration*);
308
+ }
309
+ UPB_INLINE bool envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_has_aggression(const envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* msg) {
310
+ return _upb_hasbit(msg, 2);
311
+ }
312
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_clear_aggression(const envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* msg) {
313
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const upb_Message*) = NULL;
314
+ }
315
+ UPB_INLINE const struct envoy_config_core_v3_RuntimeDouble* envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_aggression(const envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* msg) {
316
+ return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct envoy_config_core_v3_RuntimeDouble*);
317
+ }
318
+ UPB_INLINE bool envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_has_min_weight_percent(const envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* msg) {
319
+ return _upb_hasbit(msg, 3);
320
+ }
321
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_clear_min_weight_percent(const envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* msg) {
322
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const upb_Message*) = NULL;
323
+ }
324
+ UPB_INLINE const struct envoy_type_v3_Percent* envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_min_weight_percent(const envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* msg) {
325
+ return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct envoy_type_v3_Percent*);
326
+ }
327
+
328
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_set_slow_start_window(envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig *msg, struct google_protobuf_Duration* value) {
329
+ _upb_sethas(msg, 1);
330
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_Duration*) = value;
331
+ }
332
+ UPB_INLINE struct google_protobuf_Duration* envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_mutable_slow_start_window(envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* msg, upb_Arena* arena) {
333
+ struct google_protobuf_Duration* sub = (struct google_protobuf_Duration*)envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_slow_start_window(msg);
334
+ if (sub == NULL) {
335
+ sub = (struct google_protobuf_Duration*)_upb_Message_New(&google_protobuf_Duration_msginit, arena);
336
+ if (!sub) return NULL;
337
+ envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_set_slow_start_window(msg, sub);
338
+ }
339
+ return sub;
340
+ }
341
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_set_aggression(envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig *msg, struct envoy_config_core_v3_RuntimeDouble* value) {
342
+ _upb_sethas(msg, 2);
343
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), struct envoy_config_core_v3_RuntimeDouble*) = value;
344
+ }
345
+ UPB_INLINE struct envoy_config_core_v3_RuntimeDouble* envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_mutable_aggression(envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* msg, upb_Arena* arena) {
346
+ struct envoy_config_core_v3_RuntimeDouble* sub = (struct envoy_config_core_v3_RuntimeDouble*)envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_aggression(msg);
347
+ if (sub == NULL) {
348
+ sub = (struct envoy_config_core_v3_RuntimeDouble*)_upb_Message_New(&envoy_config_core_v3_RuntimeDouble_msginit, arena);
349
+ if (!sub) return NULL;
350
+ envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_set_aggression(msg, sub);
351
+ }
352
+ return sub;
353
+ }
354
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_set_min_weight_percent(envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig *msg, struct envoy_type_v3_Percent* value) {
355
+ _upb_sethas(msg, 3);
356
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), struct envoy_type_v3_Percent*) = value;
357
+ }
358
+ UPB_INLINE struct envoy_type_v3_Percent* envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_mutable_min_weight_percent(envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig* msg, upb_Arena* arena) {
359
+ struct envoy_type_v3_Percent* sub = (struct envoy_type_v3_Percent*)envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_min_weight_percent(msg);
360
+ if (sub == NULL) {
361
+ sub = (struct envoy_type_v3_Percent*)_upb_Message_New(&envoy_type_v3_Percent_msginit, arena);
362
+ if (!sub) return NULL;
363
+ envoy_extensions_load_balancing_policies_common_v3_SlowStartConfig_set_min_weight_percent(msg, sub);
364
+ }
365
+ return sub;
366
+ }
367
+
368
+ /* envoy.extensions.load_balancing_policies.common.v3.ConsistentHashingLbConfig */
369
+
370
+ UPB_INLINE envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig* envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_new(upb_Arena* arena) {
371
+ return (envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig*)_upb_Message_New(&envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_msginit, arena);
372
+ }
373
+ UPB_INLINE envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig* envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_parse(const char* buf, size_t size, upb_Arena* arena) {
374
+ envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig* ret = envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_new(arena);
375
+ if (!ret) return NULL;
376
+ if (upb_Decode(buf, size, ret, &envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_msginit, NULL, 0, arena) != kUpb_DecodeStatus_Ok) {
377
+ return NULL;
378
+ }
379
+ return ret;
380
+ }
381
+ UPB_INLINE envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig* envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_parse_ex(const char* buf, size_t size,
382
+ const upb_ExtensionRegistry* extreg,
383
+ int options, upb_Arena* arena) {
384
+ envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig* ret = envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_new(arena);
385
+ if (!ret) return NULL;
386
+ if (upb_Decode(buf, size, ret, &envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_msginit, extreg, options, arena) !=
387
+ kUpb_DecodeStatus_Ok) {
388
+ return NULL;
389
+ }
390
+ return ret;
391
+ }
392
+ UPB_INLINE char* envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_serialize(const envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig* msg, upb_Arena* arena, size_t* len) {
393
+ char* ptr;
394
+ (void)upb_Encode(msg, &envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_msginit, 0, arena, &ptr, len);
395
+ return ptr;
396
+ }
397
+ UPB_INLINE char* envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_serialize_ex(const envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig* msg, int options,
398
+ upb_Arena* arena, size_t* len) {
399
+ char* ptr;
400
+ (void)upb_Encode(msg, &envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_msginit, options, arena, &ptr, len);
401
+ return ptr;
402
+ }
403
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_clear_use_hostname_for_hashing(const envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig* msg) {
404
+ *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = 0;
405
+ }
406
+ UPB_INLINE bool envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_use_hostname_for_hashing(const envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig* msg) {
407
+ return *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool);
408
+ }
409
+ UPB_INLINE bool envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_has_hash_balance_factor(const envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig* msg) {
410
+ return _upb_hasbit(msg, 1);
411
+ }
412
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_clear_hash_balance_factor(const envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig* msg) {
413
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const upb_Message*) = NULL;
414
+ }
415
+ UPB_INLINE const struct google_protobuf_UInt32Value* envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_hash_balance_factor(const envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig* msg) {
416
+ return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_protobuf_UInt32Value*);
417
+ }
418
+
419
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_set_use_hostname_for_hashing(envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig *msg, bool value) {
420
+ *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = value;
421
+ }
422
+ UPB_INLINE void envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_set_hash_balance_factor(envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig *msg, struct google_protobuf_UInt32Value* value) {
423
+ _upb_sethas(msg, 1);
424
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_protobuf_UInt32Value*) = value;
425
+ }
426
+ UPB_INLINE struct google_protobuf_UInt32Value* envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_mutable_hash_balance_factor(envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig* msg, upb_Arena* arena) {
427
+ struct google_protobuf_UInt32Value* sub = (struct google_protobuf_UInt32Value*)envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_hash_balance_factor(msg);
428
+ if (sub == NULL) {
429
+ sub = (struct google_protobuf_UInt32Value*)_upb_Message_New(&google_protobuf_UInt32Value_msginit, arena);
430
+ if (!sub) return NULL;
431
+ envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_set_hash_balance_factor(msg, sub);
432
+ }
433
+ return sub;
434
+ }
435
+
436
+ extern const upb_MiniTable_File envoy_extensions_load_balancing_policies_common_v3_common_proto_upb_file_layout;
437
+
438
+ #ifdef __cplusplus
439
+ } /* extern "C" */
440
+ #endif
441
+
442
+ #include "upb/port_undef.inc"
443
+
444
+ #endif /* ENVOY_EXTENSIONS_LOAD_BALANCING_POLICIES_COMMON_V3_COMMON_PROTO_UPB_H_ */
@@ -9,30 +9,34 @@
9
9
  #include <stddef.h>
10
10
  #include "upb/msg_internal.h"
11
11
  #include "envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h"
12
+ #include "envoy/extensions/load_balancing_policies/common/v3/common.upb.h"
12
13
  #include "google/protobuf/wrappers.upb.h"
14
+ #include "envoy/annotations/deprecation.upb.h"
13
15
  #include "udpa/annotations/status.upb.h"
14
16
  #include "validate/validate.upb.h"
15
17
 
16
18
  #include "upb/port_def.inc"
17
19
 
18
- static const upb_MiniTable_Sub envoy_extensions_load_balancing_policies_ring_hash_v3_RingHash_submsgs[3] = {
20
+ static const upb_MiniTable_Sub envoy_extensions_load_balancing_policies_ring_hash_v3_RingHash_submsgs[4] = {
19
21
  {.submsg = &google_protobuf_UInt64Value_msginit},
20
22
  {.submsg = &google_protobuf_UInt64Value_msginit},
21
23
  {.submsg = &google_protobuf_UInt32Value_msginit},
24
+ {.submsg = &envoy_extensions_load_balancing_policies_common_v3_ConsistentHashingLbConfig_msginit},
22
25
  };
23
26
 
24
- static const upb_MiniTable_Field envoy_extensions_load_balancing_policies_ring_hash_v3_RingHash__fields[5] = {
27
+ static const upb_MiniTable_Field envoy_extensions_load_balancing_policies_ring_hash_v3_RingHash__fields[6] = {
25
28
  {1, UPB_SIZE(4, 4), UPB_SIZE(0, 0), kUpb_NoSub, 5, kUpb_FieldMode_Scalar | (kUpb_FieldRep_4Byte << kUpb_FieldRep_Shift)},
26
29
  {2, UPB_SIZE(12, 16), UPB_SIZE(1, 1), 0, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
27
30
  {3, UPB_SIZE(16, 24), UPB_SIZE(2, 2), 1, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
28
31
  {4, UPB_SIZE(8, 8), UPB_SIZE(0, 0), kUpb_NoSub, 8, kUpb_FieldMode_Scalar | (kUpb_FieldRep_1Byte << kUpb_FieldRep_Shift)},
29
32
  {5, UPB_SIZE(20, 32), UPB_SIZE(3, 3), 2, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
33
+ {6, UPB_SIZE(24, 40), UPB_SIZE(4, 4), 3, 11, kUpb_FieldMode_Scalar | (kUpb_FieldRep_Pointer << kUpb_FieldRep_Shift)},
30
34
  };
31
35
 
32
36
  const upb_MiniTable envoy_extensions_load_balancing_policies_ring_hash_v3_RingHash_msginit = {
33
37
  &envoy_extensions_load_balancing_policies_ring_hash_v3_RingHash_submsgs[0],
34
38
  &envoy_extensions_load_balancing_policies_ring_hash_v3_RingHash__fields[0],
35
- UPB_SIZE(24, 40), 5, kUpb_ExtMode_NonExtendable, 5, 255, 0,
39
+ UPB_SIZE(32, 48), 6, kUpb_ExtMode_NonExtendable, 6, 255, 0,
36
40
  };
37
41
 
38
42
  static const upb_MiniTable *messages_layout[1] = {