grpc 1.56.0 → 1.61.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2616) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +1296 -928
  3. data/include/grpc/event_engine/event_engine.h +84 -52
  4. data/include/grpc/event_engine/internal/memory_allocator_impl.h +6 -0
  5. data/include/grpc/event_engine/internal/slice_cast.h +12 -0
  6. data/include/grpc/event_engine/memory_allocator.h +5 -3
  7. data/include/grpc/event_engine/slice.h +5 -0
  8. data/include/grpc/grpc_crl_provider.h +94 -0
  9. data/include/grpc/grpc_security.h +57 -1
  10. data/include/grpc/impl/call.h +29 -0
  11. data/include/grpc/impl/channel_arg_names.h +400 -0
  12. data/include/grpc/impl/grpc_types.h +1 -350
  13. data/include/grpc/impl/slice_type.h +1 -1
  14. data/include/grpc/module.modulemap +3 -0
  15. data/include/grpc/support/port_platform.h +103 -24
  16. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +55 -15
  17. data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +20 -6
  18. data/src/core/ext/filters/channel_idle/channel_idle_filter.cc +49 -46
  19. data/src/core/ext/filters/channel_idle/channel_idle_filter.h +18 -10
  20. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +326 -0
  21. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h +143 -0
  22. data/src/core/ext/filters/client_channel/backend_metric.cc +2 -2
  23. data/src/core/ext/filters/client_channel/client_channel.cc +514 -82
  24. data/src/core/ext/filters/client_channel/client_channel.h +55 -14
  25. data/src/core/ext/filters/client_channel/client_channel_internal.h +2 -0
  26. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +21 -8
  27. data/src/core/ext/filters/client_channel/connector.h +2 -3
  28. data/src/core/ext/filters/client_channel/dynamic_filters.cc +0 -1
  29. data/src/core/ext/filters/client_channel/dynamic_filters.h +5 -3
  30. data/src/core/ext/filters/client_channel/global_subchannel_pool.cc +1 -1
  31. data/src/core/ext/filters/client_channel/http_proxy_mapper.cc +305 -0
  32. data/src/core/ext/filters/client_channel/http_proxy_mapper.h +53 -0
  33. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.cc +60 -52
  34. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.h +27 -12
  35. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc +32 -40
  36. data/src/core/ext/filters/client_channel/lb_policy/endpoint_list.cc +187 -0
  37. data/src/core/ext/filters/client_channel/lb_policy/endpoint_list.h +220 -0
  38. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +0 -2
  39. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +246 -231
  40. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc +20 -19
  41. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h +4 -4
  42. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +4 -3
  43. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +3 -1
  44. data/src/core/ext/filters/client_channel/lb_policy/health_check_client.cc +90 -25
  45. data/src/core/ext/filters/client_channel/lb_policy/health_check_client.h +3 -5
  46. data/src/core/ext/filters/client_channel/lb_policy/health_check_client_internal.h +27 -9
  47. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc +13 -6
  48. data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric_internal.h +2 -0
  49. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc +257 -210
  50. data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h +0 -21
  51. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +898 -213
  52. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.h +36 -0
  53. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +19 -37
  54. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +488 -492
  55. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h +3 -5
  56. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +63 -101
  57. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +416 -37
  58. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +37 -58
  59. data/src/core/ext/filters/client_channel/lb_policy/weighted_round_robin/weighted_round_robin.cc +893 -76
  60. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +25 -51
  61. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +507 -523
  62. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h +8 -0
  63. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +255 -185
  64. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +16 -58
  65. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc +807 -308
  66. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.h +2 -6
  67. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc +18 -81
  68. data/src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc +5 -6
  69. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +12 -15
  70. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +102 -11
  71. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +105 -175
  72. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +46 -33
  73. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +11 -7
  74. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +1 -1
  75. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_plugin.cc +6 -0
  76. data/src/core/ext/filters/client_channel/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +112 -73
  77. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +3 -4
  78. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +76 -189
  79. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +46 -27
  80. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +2 -2
  81. data/src/core/ext/filters/client_channel/resolver/polling_resolver.cc +17 -13
  82. data/src/core/ext/filters/client_channel/resolver/polling_resolver.h +1 -0
  83. data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +31 -19
  84. data/src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.cc +1031 -0
  85. data/src/core/ext/filters/client_channel/resolver/xds/xds_dependency_manager.h +277 -0
  86. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +474 -560
  87. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver_attributes.h +62 -0
  88. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.cc +25 -0
  89. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver_trace.h +30 -0
  90. data/src/core/ext/filters/client_channel/retry_filter.cc +40 -2499
  91. data/src/core/ext/filters/client_channel/retry_filter.h +92 -1
  92. data/src/core/ext/filters/client_channel/retry_filter_legacy_call_data.cc +2051 -0
  93. data/src/core/ext/filters/client_channel/retry_filter_legacy_call_data.h +442 -0
  94. data/src/core/ext/filters/client_channel/retry_service_config.cc +1 -1
  95. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +62 -70
  96. data/src/core/ext/filters/client_channel/subchannel.cc +47 -9
  97. data/src/core/ext/filters/client_channel/subchannel.h +20 -5
  98. data/src/core/ext/filters/client_channel/subchannel_interface_internal.h +3 -0
  99. data/src/core/ext/filters/client_channel/subchannel_stream_client.cc +0 -1
  100. data/src/core/ext/filters/deadline/deadline_filter.cc +21 -24
  101. data/src/core/ext/filters/deadline/deadline_filter.h +0 -4
  102. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +18 -13
  103. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +13 -4
  104. data/src/core/ext/filters/http/client/http_client_filter.cc +30 -39
  105. data/src/core/ext/filters/http/client/http_client_filter.h +10 -5
  106. data/src/core/ext/filters/http/client_authority_filter.cc +23 -25
  107. data/src/core/ext/filters/http/client_authority_filter.h +12 -4
  108. data/src/core/ext/filters/http/http_filters_plugin.cc +58 -38
  109. data/src/core/ext/filters/http/message_compress/compression_filter.cc +56 -84
  110. data/src/core/ext/filters/http/message_compress/compression_filter.h +54 -12
  111. data/src/core/ext/filters/http/message_compress/legacy_compression_filter.cc +325 -0
  112. data/src/core/ext/filters/http/message_compress/legacy_compression_filter.h +139 -0
  113. data/src/core/ext/filters/http/server/http_server_filter.cc +55 -53
  114. data/src/core/ext/filters/http/server/http_server_filter.h +11 -4
  115. data/src/core/ext/filters/message_size/message_size_filter.cc +79 -108
  116. data/src/core/ext/filters/message_size/message_size_filter.h +35 -23
  117. data/src/core/ext/filters/rbac/rbac_filter.cc +46 -113
  118. data/src/core/ext/filters/rbac/rbac_filter.h +18 -29
  119. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +4 -7
  120. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc +26 -13
  121. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +179 -108
  122. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +42 -14
  123. data/src/core/ext/gcp/metadata_query.cc +0 -1
  124. data/src/core/ext/transport/chttp2/alpn/alpn.cc +1 -1
  125. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +5 -7
  126. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +36 -36
  127. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +1118 -1059
  128. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +47 -4
  129. data/src/core/ext/transport/chttp2/transport/context_list_entry.h +12 -2
  130. data/src/core/ext/transport/chttp2/transport/decode_huff.cc +6569 -174
  131. data/src/core/ext/transport/chttp2/transport/decode_huff.h +2278 -441
  132. data/src/core/ext/transport/chttp2/transport/flow_control.cc +56 -88
  133. data/src/core/ext/transport/chttp2/transport/flow_control.h +85 -12
  134. data/src/core/ext/transport/chttp2/transport/frame.cc +506 -0
  135. data/src/core/ext/transport/chttp2/transport/frame.h +193 -22
  136. data/src/core/ext/transport/chttp2/transport/frame_data.cc +4 -3
  137. data/src/core/ext/transport/chttp2/transport/frame_data.h +1 -1
  138. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +0 -2
  139. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +1 -1
  140. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +23 -20
  141. data/src/core/ext/transport/chttp2/transport/frame_ping.h +1 -1
  142. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +10 -3
  143. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +1 -1
  144. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +34 -82
  145. data/src/core/ext/transport/chttp2/transport/frame_settings.h +5 -8
  146. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +1 -3
  147. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +1 -1
  148. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +16 -22
  149. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +7 -3
  150. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +3 -4
  151. data/src/core/ext/transport/chttp2/transport/hpack_parse_result.cc +184 -0
  152. data/src/core/ext/transport/chttp2/transport/hpack_parse_result.h +351 -0
  153. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +640 -547
  154. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +160 -12
  155. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +47 -33
  156. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +19 -5
  157. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +122 -32
  158. data/src/core/ext/transport/chttp2/transport/http2_settings.h +142 -37
  159. data/src/core/ext/transport/chttp2/transport/internal.h +227 -165
  160. data/src/core/ext/transport/chttp2/transport/legacy_frame.h +43 -0
  161. data/src/core/ext/transport/chttp2/transport/max_concurrent_streams_policy.cc +44 -0
  162. data/src/core/ext/transport/chttp2/transport/max_concurrent_streams_policy.h +67 -0
  163. data/src/core/ext/transport/chttp2/transport/parsing.cc +168 -60
  164. data/src/core/ext/transport/chttp2/transport/ping_abuse_policy.cc +90 -0
  165. data/src/core/ext/transport/chttp2/transport/ping_abuse_policy.h +59 -0
  166. data/src/core/ext/transport/chttp2/transport/ping_callbacks.cc +108 -0
  167. data/src/core/ext/transport/chttp2/transport/ping_callbacks.h +115 -0
  168. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.cc +120 -0
  169. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.h +88 -0
  170. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +1 -1
  171. data/src/core/ext/transport/chttp2/transport/write_size_policy.cc +60 -0
  172. data/src/core/ext/transport/chttp2/transport/write_size_policy.h +66 -0
  173. data/src/core/ext/transport/chttp2/transport/writing.cc +226 -178
  174. data/src/core/ext/transport/inproc/inproc_transport.cc +163 -1229
  175. data/src/core/ext/transport/inproc/inproc_transport.h +0 -4
  176. data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +1303 -0
  177. data/src/core/ext/transport/inproc/legacy_inproc_transport.h +30 -0
  178. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb.h +725 -0
  179. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.c +149 -0
  180. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.h +34 -0
  181. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb.h +827 -0
  182. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.c +180 -0
  183. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.h +33 -0
  184. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb.h +733 -0
  185. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.c +157 -0
  186. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.h +34 -0
  187. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb.h +2772 -0
  188. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.c +532 -0
  189. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.h +48 -0
  190. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb.h +248 -0
  191. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.c +66 -0
  192. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.h +31 -0
  193. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb.h +280 -0
  194. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.c +74 -0
  195. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.h +31 -0
  196. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb.h +162 -0
  197. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb_minitable.c +56 -0
  198. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb_minitable.h +30 -0
  199. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb.h +122 -0
  200. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.c +49 -0
  201. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.h +30 -0
  202. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb.h +117 -0
  203. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb_minitable.c +49 -0
  204. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb_minitable.h +30 -0
  205. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb.h +928 -0
  206. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.c +150 -0
  207. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.h +31 -0
  208. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb.h +117 -0
  209. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.c +54 -0
  210. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.h +30 -0
  211. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb.h +122 -0
  212. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb_minitable.c +58 -0
  213. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb_minitable.h +33 -0
  214. data/src/core/ext/upb-gen/envoy/annotations/resource.upb.h +109 -0
  215. data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.c +55 -0
  216. data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.h +31 -0
  217. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb.h +1753 -0
  218. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.c +375 -0
  219. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.h +45 -0
  220. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb.h +3420 -0
  221. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.c +612 -0
  222. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.h +49 -0
  223. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb.h +526 -0
  224. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.c +125 -0
  225. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.h +32 -0
  226. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb.h +3890 -0
  227. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.c +729 -0
  228. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.h +53 -0
  229. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb.h +117 -0
  230. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.c +54 -0
  231. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.h +30 -0
  232. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb.h +659 -0
  233. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.c +123 -0
  234. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.h +30 -0
  235. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb.h +1830 -0
  236. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.c +395 -0
  237. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.h +44 -0
  238. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb.h +1041 -0
  239. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.c +224 -0
  240. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.h +37 -0
  241. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb.h +129 -0
  242. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.c +55 -0
  243. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.h +30 -0
  244. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb.h +2420 -0
  245. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.c +577 -0
  246. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.h +53 -0
  247. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb.h +1130 -0
  248. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.c +225 -0
  249. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.h +36 -0
  250. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb.h +110 -0
  251. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.c +51 -0
  252. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.h +30 -0
  253. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb.h +116 -0
  254. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.c +53 -0
  255. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.h +30 -0
  256. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb.h +250 -0
  257. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.c +68 -0
  258. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.h +31 -0
  259. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb.h +1688 -0
  260. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.c +378 -0
  261. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.h +43 -0
  262. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb.h +1938 -0
  263. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.c +315 -0
  264. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.h +38 -0
  265. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb.h +144 -0
  266. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.c +55 -0
  267. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.h +30 -0
  268. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb.h +2245 -0
  269. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.c +481 -0
  270. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.h +45 -0
  271. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb.h +238 -0
  272. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.c +70 -0
  273. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.h +31 -0
  274. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb.h +232 -0
  275. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.c +72 -0
  276. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.h +31 -0
  277. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb.h +287 -0
  278. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.c +76 -0
  279. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.h +31 -0
  280. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb.h +255 -0
  281. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.c +66 -0
  282. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.h +30 -0
  283. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb.h +129 -0
  284. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.c +54 -0
  285. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.h +30 -0
  286. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb.h +489 -0
  287. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.c +138 -0
  288. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.h +33 -0
  289. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb.h +993 -0
  290. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.c +229 -0
  291. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.h +36 -0
  292. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb.h +911 -0
  293. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.c +179 -0
  294. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.h +34 -0
  295. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb.h +101 -0
  296. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.c +50 -0
  297. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.h +30 -0
  298. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb.h +1613 -0
  299. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.c +268 -0
  300. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.h +39 -0
  301. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb.h +1447 -0
  302. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.c +260 -0
  303. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.h +36 -0
  304. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb.h +327 -0
  305. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.c +86 -0
  306. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.h +30 -0
  307. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb.h +197 -0
  308. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.c +77 -0
  309. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.h +31 -0
  310. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb.h +183 -0
  311. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.c +64 -0
  312. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.h +30 -0
  313. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb.h +974 -0
  314. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.c +219 -0
  315. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.h +37 -0
  316. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb.h +1183 -0
  317. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.c +250 -0
  318. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.h +39 -0
  319. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb.h +1704 -0
  320. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.c +348 -0
  321. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.h +40 -0
  322. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb.h +857 -0
  323. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.c +133 -0
  324. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.h +32 -0
  325. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb.h +9666 -0
  326. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.c +1667 -0
  327. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.h +87 -0
  328. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb.h +341 -0
  329. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.c +97 -0
  330. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.h +32 -0
  331. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb.h +1515 -0
  332. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.c +325 -0
  333. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.h +41 -0
  334. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb.h +119 -0
  335. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.c +51 -0
  336. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.h +30 -0
  337. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb.h +118 -0
  338. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.c +55 -0
  339. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.h +30 -0
  340. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb.h +190 -0
  341. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.c +73 -0
  342. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.h +31 -0
  343. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb.h +202 -0
  344. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.c +62 -0
  345. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.h +30 -0
  346. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb.h +409 -0
  347. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb_minitable.c +81 -0
  348. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb_minitable.h +30 -0
  349. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb.h +115 -0
  350. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.c +52 -0
  351. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.h +30 -0
  352. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb.h +102 -0
  353. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.c +51 -0
  354. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.h +30 -0
  355. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb.h +254 -0
  356. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.c +85 -0
  357. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.h +31 -0
  358. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb.h +49 -0
  359. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb_minitable.c +33 -0
  360. data/src/core/ext/upb-gen/envoy/config/trace/v3/trace.upb_minitable.h +39 -0
  361. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb.h +256 -0
  362. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.c +87 -0
  363. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.h +31 -0
  364. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb.h +201 -0
  365. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.c +65 -0
  366. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.h +30 -0
  367. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb.h +2691 -0
  368. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.c +555 -0
  369. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.h +45 -0
  370. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +134 -0
  371. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.c +46 -0
  372. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.h +30 -0
  373. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb.h +428 -0
  374. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.c +116 -0
  375. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.h +34 -0
  376. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb.h +656 -0
  377. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.c +141 -0
  378. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.h +32 -0
  379. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +266 -0
  380. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.c +87 -0
  381. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.h +31 -0
  382. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb.h +462 -0
  383. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.c +101 -0
  384. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.h +31 -0
  385. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +194 -0
  386. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.c +72 -0
  387. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.h +31 -0
  388. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +3943 -0
  389. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.c +679 -0
  390. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.h +50 -0
  391. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +101 -0
  392. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.c +50 -0
  393. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.h +30 -0
  394. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +239 -0
  395. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb_minitable.c +67 -0
  396. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb_minitable.h +30 -0
  397. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +488 -0
  398. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.c +135 -0
  399. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.h +34 -0
  400. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb.h +86 -0
  401. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb_minitable.c +44 -0
  402. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb_minitable.h +30 -0
  403. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +250 -0
  404. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.c +68 -0
  405. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.h +30 -0
  406. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +101 -0
  407. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.c +50 -0
  408. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.h +30 -0
  409. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +39 -0
  410. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb_minitable.c +28 -0
  411. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/cert.upb_minitable.h +34 -0
  412. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb.h +1469 -0
  413. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.c +262 -0
  414. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.h +36 -0
  415. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +361 -0
  416. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.c +108 -0
  417. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.h +32 -0
  418. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +1467 -0
  419. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.c +267 -0
  420. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.h +36 -0
  421. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +217 -0
  422. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.c +72 -0
  423. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.h +31 -0
  424. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb.h +712 -0
  425. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.c +151 -0
  426. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.h +33 -0
  427. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb.h +73 -0
  428. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb_minitable.c +38 -0
  429. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb_minitable.h +30 -0
  430. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb.h +2141 -0
  431. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.c +402 -0
  432. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.h +43 -0
  433. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb.h +324 -0
  434. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.c +84 -0
  435. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.h +31 -0
  436. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb.h +925 -0
  437. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.c +183 -0
  438. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.h +34 -0
  439. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb.h +131 -0
  440. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.c +54 -0
  441. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.h +30 -0
  442. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb.h +312 -0
  443. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.c +86 -0
  444. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.h +33 -0
  445. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb.h +124 -0
  446. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.c +53 -0
  447. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.h +30 -0
  448. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb.h +299 -0
  449. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb_minitable.c +105 -0
  450. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb_minitable.h +34 -0
  451. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb.h +260 -0
  452. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.c +76 -0
  453. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.h +31 -0
  454. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb.h +166 -0
  455. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.c +55 -0
  456. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.h +30 -0
  457. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb.h +130 -0
  458. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.c +54 -0
  459. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.h +30 -0
  460. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb.h +110 -0
  461. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.c +51 -0
  462. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.h +30 -0
  463. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb.h +271 -0
  464. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.c +96 -0
  465. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.h +32 -0
  466. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb.h +109 -0
  467. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb_minitable.c +43 -0
  468. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb_minitable.h +31 -0
  469. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb.h +306 -0
  470. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.c +81 -0
  471. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.h +31 -0
  472. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb.h +230 -0
  473. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.c +70 -0
  474. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.h +31 -0
  475. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb.h +347 -0
  476. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.c +92 -0
  477. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.h +32 -0
  478. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb.h +525 -0
  479. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.c +127 -0
  480. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.h +36 -0
  481. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb.h +506 -0
  482. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.c +139 -0
  483. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.h +34 -0
  484. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb.h +227 -0
  485. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.c +76 -0
  486. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.h +32 -0
  487. data/src/core/ext/upb-gen/envoy/type/v3/http.upb.h +38 -0
  488. data/src/core/ext/upb-gen/envoy/type/v3/http.upb_minitable.c +26 -0
  489. data/src/core/ext/upb-gen/envoy/type/v3/http.upb_minitable.h +29 -0
  490. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb.h +148 -0
  491. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb_minitable.c +46 -0
  492. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb_minitable.h +30 -0
  493. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb.h +162 -0
  494. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb_minitable.c +64 -0
  495. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb_minitable.h +31 -0
  496. data/src/core/ext/upb-gen/envoy/type/v3/range.upb.h +238 -0
  497. data/src/core/ext/upb-gen/envoy/type/v3/range.upb_minitable.c +84 -0
  498. data/src/core/ext/upb-gen/envoy/type/v3/range.upb_minitable.h +32 -0
  499. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb.h +232 -0
  500. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.c +75 -0
  501. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.h +31 -0
  502. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb.h +42 -0
  503. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb_minitable.c +26 -0
  504. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_unit.upb_minitable.h +29 -0
  505. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb.h +117 -0
  506. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb_minitable.c +49 -0
  507. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb_minitable.h +30 -0
  508. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb.h +146 -0
  509. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.c +57 -0
  510. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.h +30 -0
  511. data/src/core/ext/upb-gen/google/api/annotations.upb.h +56 -0
  512. data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.c +38 -0
  513. data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.h +30 -0
  514. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb.h +1743 -0
  515. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.c +369 -0
  516. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.h +42 -0
  517. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb.h +1829 -0
  518. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.c +399 -0
  519. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.h +43 -0
  520. data/src/core/ext/upb-gen/google/api/http.upb.h +496 -0
  521. data/src/core/ext/upb-gen/google/api/http.upb_minitable.c +111 -0
  522. data/src/core/ext/upb-gen/google/api/http.upb_minitable.h +32 -0
  523. data/src/core/ext/upb-gen/google/api/httpbody.upb.h +165 -0
  524. data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.c +52 -0
  525. data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.h +30 -0
  526. data/src/core/ext/upb-gen/google/protobuf/any.upb.h +99 -0
  527. data/src/core/ext/upb-gen/google/protobuf/any.upb_minitable.c +46 -0
  528. data/src/core/ext/upb-gen/google/protobuf/any.upb_minitable.h +30 -0
  529. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb.h +6397 -0
  530. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.c +1357 -0
  531. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.h +78 -0
  532. data/src/core/ext/upb-gen/google/protobuf/duration.upb.h +99 -0
  533. data/src/core/ext/upb-gen/google/protobuf/duration.upb_minitable.c +46 -0
  534. data/src/core/ext/upb-gen/google/protobuf/duration.upb_minitable.h +30 -0
  535. data/src/core/ext/upb-gen/google/protobuf/empty.upb.h +69 -0
  536. data/src/core/ext/upb-gen/google/protobuf/empty.upb_minitable.c +35 -0
  537. data/src/core/ext/upb-gen/google/protobuf/empty.upb_minitable.h +30 -0
  538. data/src/core/ext/upb-gen/google/protobuf/struct.upb.h +422 -0
  539. data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.c +115 -0
  540. data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.h +33 -0
  541. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb.h +99 -0
  542. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb_minitable.c +46 -0
  543. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb_minitable.h +30 -0
  544. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb.h +508 -0
  545. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb_minitable.c +163 -0
  546. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb_minitable.h +38 -0
  547. data/src/core/ext/upb-gen/google/rpc/status.upb.h +165 -0
  548. data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.c +52 -0
  549. data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.h +30 -0
  550. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb.h +385 -0
  551. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb_minitable.c +106 -0
  552. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb_minitable.h +33 -0
  553. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb.h +237 -0
  554. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.c +79 -0
  555. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.h +31 -0
  556. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb.h +1658 -0
  557. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.c +342 -0
  558. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.h +41 -0
  559. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb.h +197 -0
  560. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.c +69 -0
  561. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.h +31 -0
  562. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb.h +144 -0
  563. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.c +58 -0
  564. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.h +31 -0
  565. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb.h +877 -0
  566. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.c +221 -0
  567. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.h +38 -0
  568. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb.h +297 -0
  569. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.c +92 -0
  570. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.h +32 -0
  571. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb.h +1333 -0
  572. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.c +243 -0
  573. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.h +38 -0
  574. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb.h +322 -0
  575. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.c +118 -0
  576. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.h +37 -0
  577. data/src/core/ext/upb-gen/udpa/annotations/security.upb.h +125 -0
  578. data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.c +59 -0
  579. data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.h +31 -0
  580. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb.h +55 -0
  581. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb_minitable.c +37 -0
  582. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb_minitable.h +30 -0
  583. data/src/core/ext/upb-gen/udpa/annotations/status.upb.h +131 -0
  584. data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.c +58 -0
  585. data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.h +31 -0
  586. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb.h +109 -0
  587. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.c +55 -0
  588. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.h +31 -0
  589. data/src/core/ext/upb-gen/validate/validate.upb.h +6507 -0
  590. data/src/core/ext/upb-gen/validate/validate.upb_minitable.c +943 -0
  591. data/src/core/ext/upb-gen/validate/validate.upb_minitable.h +57 -0
  592. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb.h +322 -0
  593. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.c +118 -0
  594. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.h +37 -0
  595. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb.h +125 -0
  596. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.c +59 -0
  597. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.h +31 -0
  598. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb.h +55 -0
  599. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb_minitable.c +37 -0
  600. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb_minitable.h +30 -0
  601. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb.h +336 -0
  602. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.c +117 -0
  603. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.h +36 -0
  604. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb.h +109 -0
  605. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.c +55 -0
  606. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.h +31 -0
  607. data/src/core/ext/upb-gen/xds/core/v3/authority.upb.h +87 -0
  608. data/src/core/ext/upb-gen/xds/core/v3/authority.upb_minitable.c +45 -0
  609. data/src/core/ext/upb-gen/xds/core/v3/authority.upb_minitable.h +30 -0
  610. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb.h +116 -0
  611. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.c +53 -0
  612. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.h +30 -0
  613. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb.h +234 -0
  614. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.c +78 -0
  615. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.h +31 -0
  616. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb.h +134 -0
  617. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.c +62 -0
  618. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.h +31 -0
  619. data/src/core/ext/upb-gen/xds/core/v3/extension.upb.h +115 -0
  620. data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.c +52 -0
  621. data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.h +30 -0
  622. data/src/core/ext/upb-gen/xds/core/v3/resource.upb.h +144 -0
  623. data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.c +55 -0
  624. data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.h +30 -0
  625. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb.h +331 -0
  626. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.c +84 -0
  627. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.h +31 -0
  628. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb.h +146 -0
  629. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.c +59 -0
  630. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.h +30 -0
  631. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb.h +350 -0
  632. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.c +126 -0
  633. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.h +33 -0
  634. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb.h +161 -0
  635. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.c +52 -0
  636. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.h +30 -0
  637. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb.h +101 -0
  638. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.c +50 -0
  639. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.h +30 -0
  640. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb.h +263 -0
  641. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.c +72 -0
  642. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.h +31 -0
  643. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb.h +71 -0
  644. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.c +36 -0
  645. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.h +30 -0
  646. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb.h +282 -0
  647. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.c +75 -0
  648. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.h +31 -0
  649. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb.h +1107 -0
  650. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.c +265 -0
  651. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.h +39 -0
  652. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb.h +726 -0
  653. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.c +157 -0
  654. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.h +35 -0
  655. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb.h +159 -0
  656. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.c +58 -0
  657. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.h +31 -0
  658. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb.h +304 -0
  659. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.c +79 -0
  660. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.h +31 -0
  661. data/src/core/ext/upb-gen/xds/type/v3/cel.upb.h +233 -0
  662. data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.c +79 -0
  663. data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.h +31 -0
  664. data/src/core/ext/upb-gen/xds/type/v3/range.upb.h +235 -0
  665. data/src/core/ext/upb-gen/xds/type/v3/range.upb_minitable.c +82 -0
  666. data/src/core/ext/upb-gen/xds/type/v3/range.upb_minitable.h +32 -0
  667. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb.h +114 -0
  668. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.c +51 -0
  669. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.h +30 -0
  670. data/src/core/ext/upbdefs-gen/envoy/admin/v3/certs.upbdefs.c +83 -0
  671. data/src/core/ext/upbdefs-gen/envoy/admin/v3/certs.upbdefs.h +55 -0
  672. data/src/core/ext/upbdefs-gen/envoy/admin/v3/clusters.upbdefs.c +127 -0
  673. data/src/core/ext/upbdefs-gen/envoy/admin/v3/clusters.upbdefs.h +50 -0
  674. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump.upbdefs.c +101 -0
  675. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump.upbdefs.h +55 -0
  676. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump_shared.upbdefs.c +276 -0
  677. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump_shared.upbdefs.h +125 -0
  678. data/src/core/ext/upbdefs-gen/envoy/admin/v3/init_dump.upbdefs.c +42 -0
  679. data/src/core/ext/upbdefs-gen/envoy/admin/v3/init_dump.upbdefs.h +40 -0
  680. data/src/core/ext/upbdefs-gen/envoy/admin/v3/listeners.upbdefs.c +55 -0
  681. data/src/core/ext/upbdefs-gen/envoy/admin/v3/listeners.upbdefs.h +40 -0
  682. data/src/core/ext/upbdefs-gen/envoy/admin/v3/memory.upbdefs.c +48 -0
  683. data/src/core/ext/upbdefs-gen/envoy/admin/v3/memory.upbdefs.h +35 -0
  684. data/src/core/ext/upbdefs-gen/envoy/admin/v3/metrics.upbdefs.c +45 -0
  685. data/src/core/ext/upbdefs-gen/envoy/admin/v3/metrics.upbdefs.h +35 -0
  686. data/src/core/ext/upbdefs-gen/envoy/admin/v3/mutex_stats.upbdefs.c +45 -0
  687. data/src/core/ext/upbdefs-gen/envoy/admin/v3/mutex_stats.upbdefs.h +35 -0
  688. data/src/core/ext/upbdefs-gen/envoy/admin/v3/server_info.upbdefs.c +141 -0
  689. data/src/core/ext/upbdefs-gen/envoy/admin/v3/server_info.upbdefs.h +40 -0
  690. data/src/core/ext/upbdefs-gen/envoy/admin/v3/tap.upbdefs.c +50 -0
  691. data/src/core/ext/upbdefs-gen/envoy/admin/v3/tap.upbdefs.h +35 -0
  692. data/src/core/ext/upbdefs-gen/envoy/annotations/deprecation.upbdefs.c +47 -0
  693. data/src/core/ext/upbdefs-gen/envoy/annotations/deprecation.upbdefs.h +30 -0
  694. data/src/core/ext/upbdefs-gen/envoy/annotations/resource.upbdefs.c +37 -0
  695. data/src/core/ext/upbdefs-gen/envoy/annotations/resource.upbdefs.h +35 -0
  696. data/src/core/ext/upbdefs-gen/envoy/config/accesslog/v3/accesslog.upbdefs.c +233 -0
  697. data/src/core/ext/upbdefs-gen/envoy/config/accesslog/v3/accesslog.upbdefs.h +110 -0
  698. data/src/core/ext/upbdefs-gen/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +422 -0
  699. data/src/core/ext/upbdefs-gen/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +130 -0
  700. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +97 -0
  701. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +45 -0
  702. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/cluster.upbdefs.c +566 -0
  703. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/cluster.upbdefs.h +150 -0
  704. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/filter.upbdefs.c +50 -0
  705. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/filter.upbdefs.h +35 -0
  706. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/outlier_detection.upbdefs.c +137 -0
  707. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/outlier_detection.upbdefs.h +35 -0
  708. data/src/core/ext/upbdefs-gen/envoy/config/common/matcher/v3/matcher.upbdefs.c +205 -0
  709. data/src/core/ext/upbdefs-gen/envoy/config/common/matcher/v3/matcher.upbdefs.h +105 -0
  710. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/address.upbdefs.c +131 -0
  711. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/address.upbdefs.h +70 -0
  712. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/backoff.upbdefs.c +53 -0
  713. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/backoff.upbdefs.h +35 -0
  714. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/base.upbdefs.c +270 -0
  715. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/base.upbdefs.h +150 -0
  716. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/config_source.upbdefs.c +167 -0
  717. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/config_source.upbdefs.h +65 -0
  718. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/event_service_config.upbdefs.c +52 -0
  719. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/event_service_config.upbdefs.h +35 -0
  720. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/extension.upbdefs.c +46 -0
  721. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/extension.upbdefs.h +35 -0
  722. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_method_list.upbdefs.c +52 -0
  723. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_method_list.upbdefs.h +40 -0
  724. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_service.upbdefs.c +236 -0
  725. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_service.upbdefs.h +100 -0
  726. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/health_check.upbdefs.c +244 -0
  727. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/health_check.upbdefs.h +75 -0
  728. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_uri.upbdefs.c +52 -0
  729. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_uri.upbdefs.h +35 -0
  730. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/protocol.upbdefs.c +310 -0
  731. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/protocol.upbdefs.h +110 -0
  732. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/proxy_protocol.upbdefs.c +56 -0
  733. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/proxy_protocol.upbdefs.h +40 -0
  734. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/resolver.upbdefs.c +54 -0
  735. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/resolver.upbdefs.h +40 -0
  736. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_option.upbdefs.c +60 -0
  737. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_option.upbdefs.h +40 -0
  738. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/substitution_format_string.upbdefs.c +69 -0
  739. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/substitution_format_string.upbdefs.h +35 -0
  740. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/udp_socket_config.upbdefs.c +48 -0
  741. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/udp_socket_config.upbdefs.h +35 -0
  742. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint.upbdefs.c +98 -0
  743. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint.upbdefs.h +50 -0
  744. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +139 -0
  745. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +65 -0
  746. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/load_report.upbdefs.c +135 -0
  747. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/load_report.upbdefs.h +55 -0
  748. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/api_listener.upbdefs.c +47 -0
  749. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/api_listener.upbdefs.h +35 -0
  750. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener.upbdefs.c +231 -0
  751. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener.upbdefs.h +80 -0
  752. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener_components.upbdefs.c +189 -0
  753. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener_components.upbdefs.h +65 -0
  754. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/quic_config.upbdefs.c +100 -0
  755. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/quic_config.upbdefs.h +35 -0
  756. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/udp_listener_config.upbdefs.c +70 -0
  757. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/udp_listener_config.upbdefs.h +40 -0
  758. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/metrics_service.upbdefs.c +75 -0
  759. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/metrics_service.upbdefs.h +35 -0
  760. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/stats.upbdefs.c +124 -0
  761. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/stats.upbdefs.h +70 -0
  762. data/src/core/ext/upbdefs-gen/envoy/config/overload/v3/overload.upbdefs.c +141 -0
  763. data/src/core/ext/upbdefs-gen/envoy/config/overload/v3/overload.upbdefs.h +80 -0
  764. data/src/core/ext/upbdefs-gen/envoy/config/rbac/v3/rbac.upbdefs.c +222 -0
  765. data/src/core/ext/upbdefs-gen/envoy/config/rbac/v3/rbac.upbdefs.h +85 -0
  766. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route.upbdefs.c +122 -0
  767. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route.upbdefs.h +45 -0
  768. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route_components.upbdefs.c +979 -0
  769. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route_components.upbdefs.h +320 -0
  770. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/scoped_route.upbdefs.c +76 -0
  771. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/scoped_route.upbdefs.h +45 -0
  772. data/src/core/ext/upbdefs-gen/envoy/config/tap/v3/common.upbdefs.c +198 -0
  773. data/src/core/ext/upbdefs-gen/envoy/config/tap/v3/common.upbdefs.h +90 -0
  774. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/datadog.upbdefs.c +55 -0
  775. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/datadog.upbdefs.h +35 -0
  776. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/dynamic_ot.upbdefs.c +56 -0
  777. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/dynamic_ot.upbdefs.h +35 -0
  778. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/http_tracer.upbdefs.c +56 -0
  779. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/http_tracer.upbdefs.h +40 -0
  780. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/lightstep.upbdefs.c +71 -0
  781. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/lightstep.upbdefs.h +35 -0
  782. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opencensus.upbdefs.c +98 -0
  783. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opencensus.upbdefs.h +35 -0
  784. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opentelemetry.upbdefs.c +44 -0
  785. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opentelemetry.upbdefs.h +35 -0
  786. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/service.upbdefs.c +51 -0
  787. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/service.upbdefs.h +35 -0
  788. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/skywalking.upbdefs.c +70 -0
  789. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/skywalking.upbdefs.h +40 -0
  790. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/trace.upbdefs.c +60 -0
  791. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/trace.upbdefs.h +30 -0
  792. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/xray.upbdefs.c +74 -0
  793. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/xray.upbdefs.h +40 -0
  794. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/zipkin.upbdefs.c +78 -0
  795. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/zipkin.upbdefs.h +35 -0
  796. data/src/core/ext/upbdefs-gen/envoy/data/accesslog/v3/accesslog.upbdefs.c +401 -0
  797. data/src/core/ext/upbdefs-gen/envoy/data/accesslog/v3/accesslog.upbdefs.h +110 -0
  798. data/src/core/ext/upbdefs-gen/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +49 -0
  799. data/src/core/ext/upbdefs-gen/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +35 -0
  800. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +91 -0
  801. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +55 -0
  802. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +122 -0
  803. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +45 -0
  804. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +79 -0
  805. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +40 -0
  806. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/router/v3/router.upbdefs.c +104 -0
  807. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/router/v3/router.upbdefs.h +40 -0
  808. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +59 -0
  809. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +40 -0
  810. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +601 -0
  811. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +135 -0
  812. data/src/core/ext/upbdefs-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +49 -0
  813. data/src/core/ext/upbdefs-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +35 -0
  814. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +47 -0
  815. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +30 -0
  816. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +214 -0
  817. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +65 -0
  818. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +90 -0
  819. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +45 -0
  820. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +257 -0
  821. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +65 -0
  822. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +57 -0
  823. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +40 -0
  824. data/src/core/ext/upbdefs-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upbdefs.c +133 -0
  825. data/src/core/ext/upbdefs-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upbdefs.h +50 -0
  826. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/ads.upbdefs.c +57 -0
  827. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/ads.upbdefs.h +35 -0
  828. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/discovery.upbdefs.c +199 -0
  829. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/discovery.upbdefs.h +100 -0
  830. data/src/core/ext/upbdefs-gen/envoy/service/load_stats/v3/lrs.upbdefs.c +75 -0
  831. data/src/core/ext/upbdefs-gen/envoy/service/load_stats/v3/lrs.upbdefs.h +40 -0
  832. data/src/core/ext/upbdefs-gen/envoy/service/status/v3/csds.upbdefs.c +154 -0
  833. data/src/core/ext/upbdefs-gen/envoy/service/status/v3/csds.upbdefs.h +55 -0
  834. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/cookie.upbdefs.c +45 -0
  835. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/cookie.upbdefs.h +35 -0
  836. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/path_transformation.upbdefs.c +55 -0
  837. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/path_transformation.upbdefs.h +50 -0
  838. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/filter_state.upbdefs.c +47 -0
  839. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/filter_state.upbdefs.h +35 -0
  840. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/http_inputs.upbdefs.c +54 -0
  841. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/http_inputs.upbdefs.h +55 -0
  842. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/metadata.upbdefs.c +60 -0
  843. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/metadata.upbdefs.h +40 -0
  844. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/node.upbdefs.c +53 -0
  845. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/node.upbdefs.h +35 -0
  846. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/number.upbdefs.c +51 -0
  847. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/number.upbdefs.h +35 -0
  848. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/path.upbdefs.c +50 -0
  849. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/path.upbdefs.h +35 -0
  850. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/regex.upbdefs.c +70 -0
  851. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/regex.upbdefs.h +45 -0
  852. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/status_code_input.upbdefs.c +39 -0
  853. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/status_code_input.upbdefs.h +40 -0
  854. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/string.upbdefs.c +64 -0
  855. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/string.upbdefs.h +40 -0
  856. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/struct.upbdefs.c +57 -0
  857. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/struct.upbdefs.h +40 -0
  858. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/value.upbdefs.c +74 -0
  859. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/value.upbdefs.h +45 -0
  860. data/src/core/ext/upbdefs-gen/envoy/type/metadata/v3/metadata.upbdefs.c +77 -0
  861. data/src/core/ext/upbdefs-gen/envoy/type/metadata/v3/metadata.upbdefs.h +65 -0
  862. data/src/core/ext/upbdefs-gen/envoy/type/tracing/v3/custom_tag.upbdefs.c +84 -0
  863. data/src/core/ext/upbdefs-gen/envoy/type/tracing/v3/custom_tag.upbdefs.h +55 -0
  864. data/src/core/ext/upbdefs-gen/envoy/type/v3/hash_policy.upbdefs.c +52 -0
  865. data/src/core/ext/upbdefs-gen/envoy/type/v3/hash_policy.upbdefs.h +45 -0
  866. data/src/core/ext/upbdefs-gen/envoy/type/v3/http.upbdefs.c +35 -0
  867. data/src/core/ext/upbdefs-gen/envoy/type/v3/http.upbdefs.h +30 -0
  868. data/src/core/ext/upbdefs-gen/envoy/type/v3/http_status.upbdefs.c +93 -0
  869. data/src/core/ext/upbdefs-gen/envoy/type/v3/http_status.upbdefs.h +35 -0
  870. data/src/core/ext/upbdefs-gen/envoy/type/v3/percent.upbdefs.c +53 -0
  871. data/src/core/ext/upbdefs-gen/envoy/type/v3/percent.upbdefs.h +40 -0
  872. data/src/core/ext/upbdefs-gen/envoy/type/v3/range.upbdefs.c +47 -0
  873. data/src/core/ext/upbdefs-gen/envoy/type/v3/range.upbdefs.h +45 -0
  874. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_strategy.upbdefs.c +68 -0
  875. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_strategy.upbdefs.h +40 -0
  876. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_unit.upbdefs.c +38 -0
  877. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_unit.upbdefs.h +30 -0
  878. data/src/core/ext/upbdefs-gen/envoy/type/v3/semantic_version.upbdefs.c +43 -0
  879. data/src/core/ext/upbdefs-gen/envoy/type/v3/semantic_version.upbdefs.h +35 -0
  880. data/src/core/ext/upbdefs-gen/envoy/type/v3/token_bucket.upbdefs.c +56 -0
  881. data/src/core/ext/upbdefs-gen/envoy/type/v3/token_bucket.upbdefs.h +35 -0
  882. data/src/core/ext/upbdefs-gen/google/api/annotations.upbdefs.c +39 -0
  883. data/src/core/ext/upbdefs-gen/google/api/annotations.upbdefs.h +30 -0
  884. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/checked.upbdefs.c +153 -0
  885. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/checked.upbdefs.h +95 -0
  886. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/syntax.upbdefs.c +152 -0
  887. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/syntax.upbdefs.h +100 -0
  888. data/src/core/ext/upbdefs-gen/google/api/http.upbdefs.c +51 -0
  889. data/src/core/ext/upbdefs-gen/google/api/http.upbdefs.h +45 -0
  890. data/src/core/ext/upbdefs-gen/google/api/httpbody.upbdefs.c +38 -0
  891. data/src/core/ext/upbdefs-gen/google/api/httpbody.upbdefs.h +35 -0
  892. data/src/core/ext/upbdefs-gen/google/protobuf/any.upbdefs.c +33 -0
  893. data/src/core/ext/upbdefs-gen/google/protobuf/any.upbdefs.h +35 -0
  894. data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.c +488 -0
  895. data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.h +190 -0
  896. data/src/core/ext/upbdefs-gen/google/protobuf/duration.upbdefs.c +34 -0
  897. data/src/core/ext/upbdefs-gen/google/protobuf/duration.upbdefs.h +35 -0
  898. data/src/core/ext/upbdefs-gen/google/protobuf/empty.upbdefs.c +31 -0
  899. data/src/core/ext/upbdefs-gen/google/protobuf/empty.upbdefs.h +35 -0
  900. data/src/core/ext/upbdefs-gen/google/protobuf/struct.upbdefs.c +53 -0
  901. data/src/core/ext/upbdefs-gen/google/protobuf/struct.upbdefs.h +50 -0
  902. data/src/core/ext/upbdefs-gen/google/protobuf/timestamp.upbdefs.c +34 -0
  903. data/src/core/ext/upbdefs-gen/google/protobuf/timestamp.upbdefs.h +35 -0
  904. data/src/core/ext/upbdefs-gen/google/protobuf/wrappers.upbdefs.c +44 -0
  905. data/src/core/ext/upbdefs-gen/google/protobuf/wrappers.upbdefs.h +75 -0
  906. data/src/core/ext/upbdefs-gen/google/rpc/status.upbdefs.c +36 -0
  907. data/src/core/ext/upbdefs-gen/google/rpc/status.upbdefs.h +35 -0
  908. data/src/core/ext/upbdefs-gen/opencensus/proto/trace/v1/trace_config.upbdefs.c +66 -0
  909. data/src/core/ext/upbdefs-gen/opencensus/proto/trace/v1/trace_config.upbdefs.h +50 -0
  910. data/src/core/ext/upbdefs-gen/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +98 -0
  911. data/src/core/ext/upbdefs-gen/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +75 -0
  912. data/src/core/ext/upbdefs-gen/udpa/annotations/migrate.upbdefs.c +61 -0
  913. data/src/core/ext/upbdefs-gen/udpa/annotations/migrate.upbdefs.h +45 -0
  914. data/src/core/ext/upbdefs-gen/udpa/annotations/security.upbdefs.c +46 -0
  915. data/src/core/ext/upbdefs-gen/udpa/annotations/security.upbdefs.h +35 -0
  916. data/src/core/ext/upbdefs-gen/udpa/annotations/sensitive.upbdefs.c +33 -0
  917. data/src/core/ext/upbdefs-gen/udpa/annotations/sensitive.upbdefs.h +30 -0
  918. data/src/core/ext/upbdefs-gen/udpa/annotations/status.upbdefs.c +45 -0
  919. data/src/core/ext/upbdefs-gen/udpa/annotations/status.upbdefs.h +35 -0
  920. data/src/core/ext/upbdefs-gen/udpa/annotations/versioning.upbdefs.c +38 -0
  921. data/src/core/ext/upbdefs-gen/udpa/annotations/versioning.upbdefs.h +35 -0
  922. data/src/core/ext/upbdefs-gen/validate/validate.upbdefs.c +282 -0
  923. data/src/core/ext/upbdefs-gen/validate/validate.upbdefs.h +145 -0
  924. data/src/core/ext/upbdefs-gen/xds/annotations/v3/migrate.upbdefs.c +62 -0
  925. data/src/core/ext/upbdefs-gen/xds/annotations/v3/migrate.upbdefs.h +45 -0
  926. data/src/core/ext/upbdefs-gen/xds/annotations/v3/security.upbdefs.c +46 -0
  927. data/src/core/ext/upbdefs-gen/xds/annotations/v3/security.upbdefs.h +35 -0
  928. data/src/core/ext/upbdefs-gen/xds/annotations/v3/sensitive.upbdefs.c +34 -0
  929. data/src/core/ext/upbdefs-gen/xds/annotations/v3/sensitive.upbdefs.h +30 -0
  930. data/src/core/ext/upbdefs-gen/xds/annotations/v3/status.upbdefs.c +63 -0
  931. data/src/core/ext/upbdefs-gen/xds/annotations/v3/status.upbdefs.h +50 -0
  932. data/src/core/ext/upbdefs-gen/xds/annotations/v3/versioning.upbdefs.c +39 -0
  933. data/src/core/ext/upbdefs-gen/xds/annotations/v3/versioning.upbdefs.h +35 -0
  934. data/src/core/ext/upbdefs-gen/xds/core/v3/authority.upbdefs.c +37 -0
  935. data/src/core/ext/upbdefs-gen/xds/core/v3/authority.upbdefs.h +35 -0
  936. data/src/core/ext/upbdefs-gen/xds/core/v3/cidr.upbdefs.c +44 -0
  937. data/src/core/ext/upbdefs-gen/xds/core/v3/cidr.upbdefs.h +35 -0
  938. data/src/core/ext/upbdefs-gen/xds/core/v3/collection_entry.upbdefs.c +55 -0
  939. data/src/core/ext/upbdefs-gen/xds/core/v3/collection_entry.upbdefs.h +40 -0
  940. data/src/core/ext/upbdefs-gen/xds/core/v3/context_params.upbdefs.c +38 -0
  941. data/src/core/ext/upbdefs-gen/xds/core/v3/context_params.upbdefs.h +40 -0
  942. data/src/core/ext/upbdefs-gen/xds/core/v3/extension.upbdefs.c +40 -0
  943. data/src/core/ext/upbdefs-gen/xds/core/v3/extension.upbdefs.h +35 -0
  944. data/src/core/ext/upbdefs-gen/xds/core/v3/resource.upbdefs.c +44 -0
  945. data/src/core/ext/upbdefs-gen/xds/core/v3/resource.upbdefs.h +35 -0
  946. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_locator.upbdefs.c +60 -0
  947. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_locator.upbdefs.h +40 -0
  948. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_name.upbdefs.c +45 -0
  949. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_name.upbdefs.h +35 -0
  950. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/cel.upbdefs.c +42 -0
  951. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/cel.upbdefs.h +35 -0
  952. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/domain.upbdefs.c +50 -0
  953. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/domain.upbdefs.h +40 -0
  954. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/http_inputs.upbdefs.c +35 -0
  955. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/http_inputs.upbdefs.h +35 -0
  956. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/ip.upbdefs.c +54 -0
  957. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/ip.upbdefs.h +40 -0
  958. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/matcher.upbdefs.c +125 -0
  959. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/matcher.upbdefs.h +80 -0
  960. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/range.upbdefs.c +70 -0
  961. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/range.upbdefs.h +60 -0
  962. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/regex.upbdefs.c +39 -0
  963. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/regex.upbdefs.h +40 -0
  964. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/string.upbdefs.c +51 -0
  965. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/string.upbdefs.h +40 -0
  966. data/src/core/ext/upbdefs-gen/xds/type/v3/cel.upbdefs.c +59 -0
  967. data/src/core/ext/upbdefs-gen/xds/type/v3/cel.upbdefs.h +40 -0
  968. data/src/core/ext/upbdefs-gen/xds/type/v3/range.upbdefs.c +35 -0
  969. data/src/core/ext/upbdefs-gen/xds/type/v3/range.upbdefs.h +45 -0
  970. data/src/core/ext/upbdefs-gen/xds/type/v3/typed_struct.upbdefs.c +36 -0
  971. data/src/core/ext/upbdefs-gen/xds/type/v3/typed_struct.upbdefs.h +35 -0
  972. data/src/core/ext/xds/certificate_provider_store.cc +2 -1
  973. data/src/core/ext/xds/certificate_provider_store.h +0 -5
  974. data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +0 -1
  975. data/src/core/ext/xds/xds_api.cc +31 -19
  976. data/src/core/ext/xds/xds_api.h +2 -2
  977. data/src/core/ext/xds/xds_bootstrap.h +3 -0
  978. data/src/core/ext/xds/xds_bootstrap_grpc.cc +33 -31
  979. data/src/core/ext/xds/xds_bootstrap_grpc.h +5 -13
  980. data/src/core/ext/xds/xds_certificate_provider.cc +88 -287
  981. data/src/core/ext/xds/xds_certificate_provider.h +44 -111
  982. data/src/core/ext/xds/xds_channel_stack_modifier.cc +17 -28
  983. data/src/core/ext/xds/xds_channel_stack_modifier.h +3 -5
  984. data/src/core/ext/xds/xds_client.cc +425 -421
  985. data/src/core/ext/xds/xds_client.h +32 -23
  986. data/src/core/ext/xds/xds_client_grpc.cc +15 -7
  987. data/src/core/ext/xds/xds_client_grpc.h +16 -2
  988. data/src/core/ext/xds/xds_client_stats.h +10 -1
  989. data/src/core/ext/xds/xds_cluster.cc +159 -68
  990. data/src/core/ext/xds/xds_cluster.h +11 -5
  991. data/src/core/ext/xds/xds_cluster_specifier_plugin.cc +9 -5
  992. data/src/core/ext/xds/xds_common_types.cc +14 -11
  993. data/src/core/ext/xds/xds_endpoint.cc +106 -70
  994. data/src/core/ext/xds/xds_endpoint.h +7 -4
  995. data/src/core/ext/xds/xds_health_status.cc +13 -18
  996. data/src/core/ext/xds/xds_health_status.h +10 -28
  997. data/src/core/ext/xds/xds_http_fault_filter.cc +1 -2
  998. data/src/core/ext/xds/xds_http_fault_filter.h +1 -2
  999. data/src/core/ext/xds/xds_http_filters.cc +1 -5
  1000. data/src/core/ext/xds/xds_http_filters.h +2 -4
  1001. data/src/core/ext/xds/xds_http_rbac_filter.cc +8 -11
  1002. data/src/core/ext/xds/xds_http_rbac_filter.h +1 -2
  1003. data/src/core/ext/xds/xds_http_stateful_session_filter.cc +2 -6
  1004. data/src/core/ext/xds/xds_http_stateful_session_filter.h +1 -2
  1005. data/src/core/ext/xds/xds_lb_policy_registry.cc +36 -0
  1006. data/src/core/ext/xds/xds_listener.cc +29 -25
  1007. data/src/core/ext/xds/xds_listener.h +13 -3
  1008. data/src/core/ext/xds/xds_resource_type.h +1 -7
  1009. data/src/core/ext/xds/xds_resource_type_impl.h +11 -11
  1010. data/src/core/ext/xds/xds_route_config.cc +48 -34
  1011. data/src/core/ext/xds/xds_route_config.h +2 -1
  1012. data/src/core/ext/xds/xds_routing.cc +2 -2
  1013. data/src/core/ext/xds/xds_server_config_fetcher.cc +110 -81
  1014. data/src/core/ext/xds/xds_transport.h +3 -0
  1015. data/src/core/ext/xds/xds_transport_grpc.cc +61 -54
  1016. data/src/core/ext/xds/xds_transport_grpc.h +4 -0
  1017. data/src/core/lib/address_utils/parse_address.cc +63 -1
  1018. data/src/core/lib/address_utils/parse_address.h +8 -0
  1019. data/src/core/lib/address_utils/sockaddr_utils.cc +46 -2
  1020. data/src/core/lib/address_utils/sockaddr_utils.h +2 -2
  1021. data/src/core/lib/avl/avl.h +11 -173
  1022. data/src/core/lib/backoff/random_early_detection.cc +4 -2
  1023. data/src/core/lib/backoff/random_early_detection.h +7 -4
  1024. data/src/core/lib/channel/call_tracer.cc +315 -1
  1025. data/src/core/lib/channel/call_tracer.h +63 -4
  1026. data/src/core/lib/channel/channel_args.cc +109 -84
  1027. data/src/core/lib/channel/channel_args.h +105 -29
  1028. data/src/core/lib/channel/channel_args_preconditioning.cc +0 -1
  1029. data/src/core/lib/channel/channel_stack.cc +36 -1
  1030. data/src/core/lib/channel/channel_stack.h +10 -10
  1031. data/src/core/lib/channel/channel_stack_builder.h +4 -15
  1032. data/src/core/lib/channel/channel_stack_builder_impl.cc +1 -19
  1033. data/src/core/lib/channel/channel_stack_trace.cc +19 -0
  1034. data/src/core/lib/channel/channel_stack_trace.h +24 -0
  1035. data/src/core/lib/channel/channel_trace.cc +1 -1
  1036. data/src/core/lib/channel/channelz_registry.h +4 -2
  1037. data/src/core/lib/channel/connected_channel.cc +144 -83
  1038. data/src/core/lib/channel/context.h +3 -0
  1039. data/src/core/lib/channel/promise_based_filter.cc +19 -7
  1040. data/src/core/lib/channel/promise_based_filter.h +1044 -3
  1041. data/src/core/lib/channel/server_call_tracer_filter.cc +43 -42
  1042. data/src/core/lib/channel/status_util.cc +0 -1
  1043. data/src/core/lib/channel/tcp_tracer.h +140 -0
  1044. data/src/core/lib/compression/compression_internal.cc +10 -7
  1045. data/src/core/lib/config/config_vars.cc +0 -1
  1046. data/src/core/lib/config/config_vars.h +1 -1
  1047. data/src/core/lib/config/config_vars_non_generated.cc +0 -2
  1048. data/src/core/lib/config/core_configuration.cc +2 -2
  1049. data/src/core/lib/config/core_configuration.h +5 -4
  1050. data/src/core/lib/debug/stats_data.cc +202 -35
  1051. data/src/core/lib/debug/stats_data.h +102 -0
  1052. data/src/core/lib/debug/trace.cc +1 -4
  1053. data/src/core/lib/event_engine/ares_resolver.cc +747 -0
  1054. data/src/core/lib/event_engine/ares_resolver.h +151 -0
  1055. data/src/core/lib/event_engine/cf_engine/cf_engine.cc +13 -3
  1056. data/src/core/lib/event_engine/cf_engine/cf_engine.h +4 -1
  1057. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.cc +5 -2
  1058. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.h +3 -0
  1059. data/src/core/lib/event_engine/cf_engine/cftype_unique_ref.h +3 -0
  1060. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.cc +249 -0
  1061. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.h +120 -0
  1062. data/src/core/lib/event_engine/channel_args_endpoint_config.cc +2 -0
  1063. data/src/core/lib/event_engine/event_engine.cc +0 -14
  1064. data/src/core/lib/event_engine/forkable.cc +65 -65
  1065. data/src/core/lib/event_engine/forkable.h +46 -25
  1066. data/src/core/lib/event_engine/grpc_polled_fd.h +92 -0
  1067. data/src/core/lib/event_engine/handle_containers.h +0 -4
  1068. data/src/core/lib/event_engine/nameser.h +102 -0
  1069. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +10 -14
  1070. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h +2 -3
  1071. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +39 -24
  1072. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.h +12 -10
  1073. data/src/core/lib/event_engine/posix_engine/event_poller.h +3 -1
  1074. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.cc +23 -4
  1075. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.h +3 -1
  1076. data/src/core/lib/event_engine/posix_engine/grpc_polled_fd_posix.h +205 -0
  1077. data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +0 -2
  1078. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.cc +132 -0
  1079. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.h +61 -0
  1080. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +29 -16
  1081. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +3 -2
  1082. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +113 -27
  1083. data/src/core/lib/event_engine/posix_engine/posix_engine.h +36 -29
  1084. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +66 -27
  1085. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +5 -0
  1086. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +15 -5
  1087. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +53 -7
  1088. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +13 -0
  1089. data/src/core/lib/event_engine/posix_engine/timer.h +10 -37
  1090. data/src/core/lib/event_engine/posix_engine/timer_manager.cc +17 -27
  1091. data/src/core/lib/event_engine/posix_engine/timer_manager.h +0 -3
  1092. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +2 -0
  1093. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.cc +0 -1
  1094. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.cc +0 -1
  1095. data/src/core/lib/event_engine/ref_counted_dns_resolver_interface.h +55 -0
  1096. data/src/core/lib/event_engine/shim.cc +4 -2
  1097. data/src/core/lib/event_engine/slice_buffer.cc +0 -1
  1098. data/src/core/lib/event_engine/tcp_socket_utils.cc +67 -8
  1099. data/src/core/lib/event_engine/tcp_socket_utils.h +3 -0
  1100. data/src/core/lib/event_engine/thread_pool/thread_count.cc +58 -0
  1101. data/src/core/lib/event_engine/thread_pool/thread_count.h +176 -0
  1102. data/src/core/lib/event_engine/thread_pool/thread_pool_factory.cc +19 -10
  1103. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +138 -100
  1104. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.h +22 -48
  1105. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc +12 -21
  1106. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.h +8 -12
  1107. data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.cc +823 -0
  1108. data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.h +75 -0
  1109. data/src/core/lib/event_engine/windows/native_windows_dns_resolver.cc +114 -0
  1110. data/src/core/lib/event_engine/windows/native_windows_dns_resolver.h +51 -0
  1111. data/src/core/lib/event_engine/windows/win_socket.cc +20 -13
  1112. data/src/core/lib/event_engine/windows/win_socket.h +19 -7
  1113. data/src/core/lib/event_engine/windows/windows_endpoint.cc +75 -76
  1114. data/src/core/lib/event_engine/windows/windows_endpoint.h +15 -12
  1115. data/src/core/lib/event_engine/windows/windows_engine.cc +85 -39
  1116. data/src/core/lib/event_engine/windows/windows_engine.h +24 -14
  1117. data/src/core/lib/event_engine/windows/windows_listener.cc +2 -3
  1118. data/src/core/lib/event_engine/work_queue/basic_work_queue.cc +2 -0
  1119. data/src/core/lib/event_engine/work_queue/basic_work_queue.h +4 -1
  1120. data/src/core/lib/event_engine/work_queue/work_queue.h +4 -0
  1121. data/src/core/lib/experiments/config.cc +96 -23
  1122. data/src/core/lib/experiments/config.h +23 -8
  1123. data/src/core/lib/experiments/experiments.cc +712 -60
  1124. data/src/core/lib/experiments/experiments.h +335 -46
  1125. data/src/core/lib/gpr/alloc.cc +1 -0
  1126. data/src/core/lib/gprpp/debug_location.h +13 -0
  1127. data/src/core/lib/gprpp/directory_reader.h +48 -0
  1128. data/src/core/lib/gprpp/dual_ref_counted.h +45 -16
  1129. data/src/core/lib/gprpp/fork.cc +8 -9
  1130. data/src/core/lib/gprpp/fork.h +7 -6
  1131. data/src/core/lib/gprpp/host_port.cc +0 -2
  1132. data/src/core/lib/gprpp/if_list.h +4530 -0
  1133. data/src/core/lib/gprpp/manual_constructor.h +1 -2
  1134. data/src/core/lib/gprpp/match.h +1 -1
  1135. data/src/core/lib/gprpp/no_destruct.h +1 -1
  1136. data/src/core/lib/gprpp/orphanable.h +30 -3
  1137. data/src/core/lib/gprpp/per_cpu.cc +2 -0
  1138. data/src/core/lib/gprpp/per_cpu.h +36 -7
  1139. data/src/core/lib/gprpp/posix/directory_reader.cc +82 -0
  1140. data/src/core/lib/gprpp/posix/stat.cc +0 -1
  1141. data/src/core/lib/gprpp/ref_counted.h +72 -29
  1142. data/src/core/lib/gprpp/ref_counted_ptr.h +133 -27
  1143. data/src/core/lib/gprpp/ref_counted_string.cc +44 -0
  1144. data/src/core/lib/gprpp/ref_counted_string.h +161 -0
  1145. data/src/core/lib/gprpp/sorted_pack.h +3 -12
  1146. data/src/core/lib/gprpp/status_helper.cc +1 -3
  1147. data/src/core/lib/gprpp/status_helper.h +16 -15
  1148. data/src/core/lib/gprpp/strerror.cc +0 -2
  1149. data/src/core/lib/gprpp/time.cc +0 -1
  1150. data/src/core/lib/gprpp/time.h +13 -1
  1151. data/src/core/lib/gprpp/type_list.h +32 -0
  1152. data/src/core/lib/gprpp/validation_errors.cc +0 -1
  1153. data/src/core/lib/gprpp/windows/directory_reader.cc +80 -0
  1154. data/src/core/lib/gprpp/work_serializer.cc +323 -12
  1155. data/src/core/lib/gprpp/work_serializer.h +30 -9
  1156. data/src/core/lib/gprpp/xxhash_inline.h +29 -0
  1157. data/src/core/lib/http/format_request.cc +0 -1
  1158. data/src/core/lib/http/httpcli.cc +0 -2
  1159. data/src/core/lib/http/httpcli.h +6 -9
  1160. data/src/core/lib/http/httpcli_security_connector.cc +1 -0
  1161. data/src/core/lib/iomgr/buffer_list.cc +2 -0
  1162. data/src/core/lib/iomgr/combiner.cc +24 -18
  1163. data/src/core/lib/iomgr/combiner.h +8 -3
  1164. data/src/core/lib/iomgr/error.cc +32 -2
  1165. data/src/core/lib/iomgr/error.h +9 -10
  1166. data/src/core/lib/iomgr/ev_epoll1_linux.cc +5 -7
  1167. data/src/core/lib/iomgr/ev_poll_posix.cc +6 -5
  1168. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +42 -26
  1169. data/src/core/lib/iomgr/event_engine_shims/endpoint.h +16 -0
  1170. data/src/core/lib/iomgr/event_engine_shims/tcp_client.cc +3 -2
  1171. data/src/core/lib/iomgr/exec_ctx.cc +12 -0
  1172. data/src/core/lib/iomgr/exec_ctx.h +66 -19
  1173. data/src/core/lib/iomgr/polling_entity.cc +10 -0
  1174. data/src/core/lib/iomgr/polling_entity.h +2 -0
  1175. data/src/core/lib/iomgr/pollset.h +4 -5
  1176. data/src/core/lib/iomgr/port.h +24 -0
  1177. data/src/core/lib/iomgr/resolve_address.cc +13 -1
  1178. data/src/core/lib/iomgr/resolve_address.h +17 -3
  1179. data/src/core/lib/iomgr/sockaddr_posix.h +7 -0
  1180. data/src/core/lib/iomgr/socket_utils_common_posix.cc +42 -0
  1181. data/src/core/lib/iomgr/socket_utils_posix.cc +2 -0
  1182. data/src/core/lib/iomgr/socket_utils_posix.h +6 -0
  1183. data/src/core/lib/iomgr/tcp_client_posix.cc +8 -4
  1184. data/src/core/lib/iomgr/tcp_posix.cc +48 -22
  1185. data/src/core/lib/iomgr/tcp_server_posix.cc +37 -14
  1186. data/src/core/lib/iomgr/tcp_server_utils_posix.h +12 -0
  1187. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +26 -2
  1188. data/src/core/lib/iomgr/tcp_windows.cc +1 -3
  1189. data/src/core/lib/iomgr/timer_manager.cc +7 -1
  1190. data/src/core/lib/iomgr/timer_manager.h +2 -0
  1191. data/src/core/lib/iomgr/vsock.cc +59 -0
  1192. data/src/core/lib/iomgr/vsock.h +38 -0
  1193. data/src/core/lib/iomgr/wakeup_fd_posix.h +3 -6
  1194. data/src/core/lib/json/json_object_loader.h +0 -1
  1195. data/src/core/lib/json/json_reader.cc +0 -1
  1196. data/src/core/lib/load_balancing/delegating_helper.h +116 -0
  1197. data/src/core/lib/load_balancing/lb_policy.h +38 -14
  1198. data/src/core/lib/load_balancing/lb_policy_registry.cc +0 -1
  1199. data/src/core/lib/load_balancing/subchannel_interface.h +6 -0
  1200. data/src/core/lib/matchers/matchers.cc +0 -1
  1201. data/src/core/lib/promise/activity.cc +17 -3
  1202. data/src/core/lib/promise/activity.h +5 -4
  1203. data/src/core/lib/promise/all_ok.h +80 -0
  1204. data/src/core/lib/promise/arena_promise.h +5 -1
  1205. data/src/core/lib/promise/cancel_callback.h +0 -2
  1206. data/src/core/lib/promise/context.h +0 -1
  1207. data/src/core/lib/promise/detail/basic_seq.h +1 -372
  1208. data/src/core/lib/promise/detail/join_state.h +2077 -0
  1209. data/src/core/lib/promise/detail/promise_like.h +8 -1
  1210. data/src/core/lib/promise/detail/seq_state.h +5801 -0
  1211. data/src/core/lib/promise/detail/status.h +42 -5
  1212. data/src/core/lib/promise/for_each.h +13 -3
  1213. data/src/core/lib/promise/if.h +4 -1
  1214. data/src/core/lib/promise/interceptor_list.h +0 -1
  1215. data/src/core/lib/promise/latch.h +7 -5
  1216. data/src/core/lib/promise/loop.h +9 -6
  1217. data/src/core/lib/promise/map.h +0 -1
  1218. data/src/core/lib/promise/party.cc +33 -33
  1219. data/src/core/lib/promise/party.h +143 -8
  1220. data/src/core/lib/promise/pipe.h +28 -27
  1221. data/src/core/lib/promise/poll.h +43 -19
  1222. data/src/core/lib/promise/prioritized_race.h +0 -1
  1223. data/src/core/lib/promise/promise.h +4 -1
  1224. data/src/core/lib/promise/race.h +0 -1
  1225. data/src/core/lib/promise/seq.h +124 -8
  1226. data/src/core/lib/promise/sleep.h +5 -10
  1227. data/src/core/lib/promise/status_flag.h +196 -0
  1228. data/src/core/lib/promise/try_join.h +71 -21
  1229. data/src/core/lib/promise/try_seq.h +161 -7
  1230. data/src/core/lib/resolver/endpoint_addresses.cc +147 -0
  1231. data/src/core/lib/resolver/endpoint_addresses.h +164 -0
  1232. data/src/core/lib/resolver/resolver.h +4 -3
  1233. data/src/core/lib/resolver/resolver_factory.h +3 -2
  1234. data/src/core/lib/resolver/resolver_registry.cc +0 -2
  1235. data/src/core/lib/resolver/server_address.h +5 -109
  1236. data/src/core/lib/resource_quota/api.cc +1 -0
  1237. data/src/core/lib/resource_quota/arena.cc +2 -0
  1238. data/src/core/lib/resource_quota/arena.h +44 -10
  1239. data/src/core/lib/resource_quota/memory_quota.cc +128 -21
  1240. data/src/core/lib/resource_quota/memory_quota.h +13 -13
  1241. data/src/core/lib/resource_quota/resource_quota.h +1 -0
  1242. data/src/core/lib/security/authorization/audit_logging.cc +0 -1
  1243. data/src/core/lib/security/authorization/authorization_policy_provider.h +1 -1
  1244. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +15 -12
  1245. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +14 -5
  1246. data/src/core/lib/security/authorization/matchers.cc +0 -1
  1247. data/src/core/lib/security/authorization/rbac_policy.cc +0 -2
  1248. data/src/core/lib/security/authorization/rbac_policy.h +1 -1
  1249. data/src/core/lib/security/authorization/stdout_logger.cc +0 -1
  1250. data/src/core/lib/security/credentials/alts/alts_credentials.cc +0 -2
  1251. data/src/core/lib/security/credentials/channel_creds_registry.h +51 -27
  1252. data/src/core/lib/security/credentials/channel_creds_registry_init.cc +169 -9
  1253. data/src/core/lib/security/credentials/composite/composite_credentials.cc +2 -2
  1254. data/src/core/lib/security/credentials/composite/composite_credentials.h +4 -2
  1255. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +4 -1
  1256. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +4 -0
  1257. data/src/core/lib/security/credentials/external/aws_request_signer.cc +8 -2
  1258. data/src/core/lib/security/credentials/external/external_account_credentials.cc +68 -23
  1259. data/src/core/lib/security/credentials/external/external_account_credentials.h +10 -0
  1260. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +4 -0
  1261. data/src/core/lib/security/credentials/external/file_external_account_credentials.h +4 -0
  1262. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +5 -3
  1263. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +4 -0
  1264. data/src/core/lib/security/credentials/fake/fake_credentials.cc +30 -38
  1265. data/src/core/lib/security/credentials/fake/fake_credentials.h +28 -0
  1266. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +1 -1
  1267. data/src/core/lib/security/credentials/iam/iam_credentials.cc +0 -1
  1268. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +0 -2
  1269. data/src/core/lib/security/credentials/jwt/json_token.cc +17 -0
  1270. data/src/core/lib/security/credentials/jwt/json_token.h +4 -0
  1271. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +0 -1
  1272. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +43 -2
  1273. data/src/core/lib/security/credentials/local/local_credentials.cc +0 -2
  1274. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +0 -1
  1275. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +2 -2
  1276. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +116 -10
  1277. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +14 -0
  1278. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +0 -2
  1279. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_match.cc +86 -0
  1280. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +0 -55
  1281. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +0 -3
  1282. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +2 -0
  1283. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +41 -0
  1284. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +28 -1
  1285. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.cc +255 -0
  1286. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.h +129 -0
  1287. data/src/core/lib/security/credentials/tls/tls_credentials.cc +27 -2
  1288. data/src/core/lib/security/credentials/tls/tls_credentials.h +3 -1
  1289. data/src/core/lib/security/credentials/tls/tls_utils.cc +2 -0
  1290. data/src/core/lib/security/credentials/xds/xds_credentials.cc +22 -29
  1291. data/src/core/lib/security/credentials/xds/xds_credentials.h +2 -4
  1292. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +1 -0
  1293. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +1 -1
  1294. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +7 -59
  1295. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +1 -1
  1296. data/src/core/lib/security/security_connector/ssl_utils.cc +11 -3
  1297. data/src/core/lib/security/security_connector/ssl_utils.h +5 -1
  1298. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +8 -19
  1299. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +2 -2
  1300. data/src/core/lib/security/transport/auth_filters.h +71 -4
  1301. data/src/core/lib/security/transport/client_auth_filter.cc +9 -9
  1302. data/src/core/lib/security/transport/legacy_server_auth_filter.cc +244 -0
  1303. data/src/core/lib/security/transport/secure_endpoint.cc +3 -6
  1304. data/src/core/lib/security/transport/security_handshaker.cc +2 -3
  1305. data/src/core/lib/security/transport/server_auth_filter.cc +70 -92
  1306. data/src/core/lib/service_config/service_config_call_data.h +5 -0
  1307. data/src/core/lib/slice/slice.h +27 -0
  1308. data/src/core/lib/slice/slice_buffer.cc +15 -0
  1309. data/src/core/lib/slice/slice_buffer.h +19 -4
  1310. data/src/core/lib/slice/slice_refcount.h +1 -1
  1311. data/src/core/lib/surface/builtins.cc +6 -25
  1312. data/src/core/lib/surface/call.cc +852 -247
  1313. data/src/core/lib/surface/call.h +30 -13
  1314. data/src/core/lib/surface/call_log_batch.cc +0 -2
  1315. data/src/core/lib/surface/call_trace.cc +42 -2
  1316. data/src/core/lib/surface/channel.cc +12 -10
  1317. data/src/core/lib/surface/channel.h +2 -8
  1318. data/src/core/lib/surface/channel_init.cc +367 -14
  1319. data/src/core/lib/surface/channel_init.h +177 -28
  1320. data/src/core/lib/surface/completion_queue.cc +4 -1
  1321. data/src/core/lib/surface/event_string.cc +0 -1
  1322. data/src/core/lib/surface/init.cc +21 -47
  1323. data/src/core/lib/surface/lame_client.cc +8 -1
  1324. data/src/core/lib/surface/server.cc +519 -300
  1325. data/src/core/lib/surface/server.h +68 -44
  1326. data/src/core/lib/surface/validate_metadata.cc +37 -22
  1327. data/src/core/lib/surface/validate_metadata.h +13 -3
  1328. data/src/core/lib/surface/version.cc +2 -2
  1329. data/src/core/lib/surface/wait_for_cq_end_op.h +94 -0
  1330. data/src/core/lib/transport/batch_builder.cc +7 -9
  1331. data/src/core/lib/transport/batch_builder.h +1 -3
  1332. data/src/core/lib/transport/bdp_estimator.cc +2 -2
  1333. data/src/core/lib/transport/bdp_estimator.h +2 -2
  1334. data/src/core/lib/transport/call_final_info.cc +38 -0
  1335. data/src/core/lib/transport/call_final_info.h +54 -0
  1336. data/src/core/lib/transport/connectivity_state.cc +3 -4
  1337. data/src/core/lib/transport/connectivity_state.h +4 -0
  1338. data/src/core/lib/transport/error_utils.cc +0 -2
  1339. data/src/core/lib/transport/handshaker.cc +0 -2
  1340. data/src/core/lib/transport/metadata_batch.cc +12 -7
  1341. data/src/core/lib/transport/metadata_batch.h +122 -50
  1342. data/src/core/lib/transport/parsed_metadata.h +32 -20
  1343. data/src/core/lib/transport/simple_slice_based_metadata.h +8 -2
  1344. data/src/core/lib/transport/tcp_connect_handshaker.cc +0 -1
  1345. data/src/core/lib/transport/timeout_encoding.h +2 -2
  1346. data/src/core/lib/transport/transport.cc +80 -67
  1347. data/src/core/lib/transport/transport.h +504 -91
  1348. data/src/core/lib/transport/transport_fwd.h +3 -1
  1349. data/src/core/lib/transport/transport_op_string.cc +0 -2
  1350. data/src/core/lib/uri/uri_parser.cc +0 -1
  1351. data/src/core/plugin_registry/grpc_plugin_registry.cc +5 -0
  1352. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +0 -3
  1353. data/src/core/tsi/alts/crypt/aes_gcm.cc +142 -89
  1354. data/src/core/tsi/alts/crypt/gsec.h +387 -319
  1355. data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +11 -7
  1356. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +1 -1
  1357. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +5 -7
  1358. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +1 -1
  1359. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +4 -6
  1360. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +12 -13
  1361. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h +26 -25
  1362. data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +9 -1
  1363. data/src/core/tsi/ssl_transport_security.cc +233 -69
  1364. data/src/core/tsi/ssl_transport_security.h +36 -2
  1365. data/src/ruby/bin/math_pb.rb +24 -18
  1366. data/src/ruby/ext/grpc/extconf.rb +73 -10
  1367. data/src/ruby/ext/grpc/rb_call.c +62 -39
  1368. data/src/ruby/ext/grpc/rb_call_credentials.c +0 -1
  1369. data/src/ruby/ext/grpc/rb_channel.c +109 -84
  1370. data/src/ruby/ext/grpc/rb_channel.h +1 -0
  1371. data/src/ruby/ext/grpc/rb_channel_args.c +21 -3
  1372. data/src/ruby/ext/grpc/rb_channel_args.h +4 -0
  1373. data/src/ruby/ext/grpc/rb_channel_credentials.c +0 -1
  1374. data/src/ruby/ext/grpc/rb_compression_options.c +0 -1
  1375. data/src/ruby/ext/grpc/rb_event_thread.c +22 -6
  1376. data/src/ruby/ext/grpc/rb_event_thread.h +1 -0
  1377. data/src/ruby/ext/grpc/rb_grpc.c +192 -31
  1378. data/src/ruby/ext/grpc/rb_grpc.h +8 -4
  1379. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +10 -0
  1380. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +15 -0
  1381. data/src/ruby/ext/grpc/rb_server.c +62 -45
  1382. data/src/ruby/ext/grpc/rb_server_credentials.c +0 -1
  1383. data/src/ruby/ext/grpc/rb_xds_channel_credentials.c +0 -1
  1384. data/src/ruby/ext/grpc/rb_xds_server_credentials.c +0 -1
  1385. data/src/ruby/lib/grpc/generic/active_call.rb +9 -14
  1386. data/src/ruby/lib/grpc/generic/bidi_call.rb +2 -0
  1387. data/src/ruby/lib/grpc/version.rb +1 -1
  1388. data/src/ruby/pb/grpc/health/v1/health_pb.rb +24 -13
  1389. data/src/ruby/pb/src/proto/grpc/testing/empty_pb.rb +24 -3
  1390. data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +33 -111
  1391. data/src/ruby/pb/src/proto/grpc/testing/test_pb.rb +25 -2
  1392. data/src/ruby/pb/src/proto/grpc/testing/test_services_pb.rb +22 -0
  1393. data/src/ruby/pb/test/client.rb +16 -0
  1394. data/src/ruby/spec/generic/rpc_server_spec.rb +3 -3
  1395. data/third_party/abseil-cpp/absl/algorithm/container.h +3 -2
  1396. data/third_party/abseil-cpp/absl/base/attributes.h +58 -5
  1397. data/third_party/abseil-cpp/absl/base/call_once.h +1 -1
  1398. data/third_party/abseil-cpp/absl/base/casts.h +8 -8
  1399. data/third_party/abseil-cpp/absl/base/config.h +89 -106
  1400. data/third_party/abseil-cpp/absl/base/dynamic_annotations.h +26 -1
  1401. data/third_party/abseil-cpp/absl/base/internal/direct_mmap.h +2 -2
  1402. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.cc +50 -39
  1403. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.h +2 -1
  1404. data/third_party/abseil-cpp/absl/base/internal/prefetch.h +17 -18
  1405. data/third_party/abseil-cpp/absl/base/internal/raw_logging.cc +32 -3
  1406. data/third_party/abseil-cpp/absl/base/internal/raw_logging.h +24 -4
  1407. data/third_party/abseil-cpp/absl/base/internal/sysinfo.cc +31 -73
  1408. data/third_party/abseil-cpp/absl/base/internal/thread_identity.cc +9 -8
  1409. data/third_party/abseil-cpp/absl/base/internal/thread_identity.h +11 -11
  1410. data/third_party/abseil-cpp/absl/base/internal/throw_delegate.cc +23 -32
  1411. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +2 -3
  1412. data/third_party/abseil-cpp/absl/base/options.h +1 -1
  1413. data/third_party/abseil-cpp/absl/base/policy_checks.h +3 -3
  1414. data/third_party/abseil-cpp/absl/base/prefetch.h +198 -0
  1415. data/third_party/abseil-cpp/absl/container/fixed_array.h +54 -29
  1416. data/third_party/abseil-cpp/absl/container/flat_hash_map.h +5 -1
  1417. data/third_party/abseil-cpp/absl/container/flat_hash_set.h +6 -2
  1418. data/third_party/abseil-cpp/absl/container/inlined_vector.h +167 -79
  1419. data/third_party/abseil-cpp/absl/container/internal/common_policy_traits.h +1 -1
  1420. data/third_party/abseil-cpp/absl/container/internal/compressed_tuple.h +3 -21
  1421. data/third_party/abseil-cpp/absl/container/internal/container_memory.h +1 -1
  1422. data/third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h +46 -0
  1423. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +2 -0
  1424. data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +85 -26
  1425. data/third_party/abseil-cpp/absl/container/internal/raw_hash_map.h +35 -18
  1426. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +70 -29
  1427. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +437 -236
  1428. data/third_party/abseil-cpp/absl/crc/crc32c.h +8 -1
  1429. data/third_party/abseil-cpp/absl/crc/internal/cpu_detect.cc +14 -8
  1430. data/third_party/abseil-cpp/absl/crc/internal/crc.cc +4 -35
  1431. data/third_party/abseil-cpp/absl/crc/internal/crc.h +2 -10
  1432. data/third_party/abseil-cpp/absl/crc/internal/crc32_x86_arm_combined_simd.h +1 -1
  1433. data/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.cc +1 -1
  1434. data/third_party/abseil-cpp/absl/crc/internal/crc_cord_state.h +4 -4
  1435. data/third_party/abseil-cpp/absl/crc/internal/crc_internal.h +8 -10
  1436. data/third_party/abseil-cpp/absl/crc/internal/crc_memcpy_x86_64.cc +17 -19
  1437. data/third_party/abseil-cpp/absl/crc/internal/crc_x86_arm_combined.cc +8 -8
  1438. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +2 -1
  1439. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +59 -23
  1440. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_powerpc-inl.inc +1 -1
  1441. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +1 -1
  1442. data/third_party/abseil-cpp/absl/debugging/internal/symbolize.h +1 -1
  1443. data/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +43 -19
  1444. data/third_party/abseil-cpp/absl/debugging/symbolize_emscripten.inc +3 -0
  1445. data/third_party/abseil-cpp/absl/flags/commandlineflag.h +1 -1
  1446. data/third_party/abseil-cpp/absl/flags/internal/commandlineflag.cc +1 -1
  1447. data/third_party/abseil-cpp/absl/flags/internal/flag.cc +2 -2
  1448. data/third_party/abseil-cpp/absl/flags/internal/flag.h +16 -15
  1449. data/third_party/abseil-cpp/absl/flags/internal/flag_msvc.inc +1 -1
  1450. data/third_party/abseil-cpp/absl/flags/marshalling.cc +43 -2
  1451. data/third_party/abseil-cpp/absl/flags/marshalling.h +5 -0
  1452. data/third_party/abseil-cpp/absl/functional/any_invocable.h +9 -1
  1453. data/third_party/abseil-cpp/absl/functional/bind_front.h +1 -1
  1454. data/third_party/abseil-cpp/absl/functional/function_ref.h +3 -3
  1455. data/third_party/abseil-cpp/absl/functional/internal/any_invocable.h +37 -24
  1456. data/third_party/abseil-cpp/absl/functional/internal/function_ref.h +19 -9
  1457. data/third_party/abseil-cpp/absl/hash/hash.h +7 -4
  1458. data/third_party/abseil-cpp/absl/hash/internal/hash.h +38 -15
  1459. data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.cc +6 -0
  1460. data/third_party/abseil-cpp/absl/meta/type_traits.h +48 -373
  1461. data/third_party/abseil-cpp/absl/numeric/bits.h +4 -4
  1462. data/third_party/abseil-cpp/absl/numeric/int128.cc +20 -8
  1463. data/third_party/abseil-cpp/absl/numeric/int128.h +36 -39
  1464. data/third_party/abseil-cpp/absl/numeric/int128_have_intrinsic.inc +0 -3
  1465. data/third_party/abseil-cpp/absl/numeric/int128_no_intrinsic.inc +47 -30
  1466. data/third_party/abseil-cpp/absl/random/bit_gen_ref.h +185 -0
  1467. data/third_party/abseil-cpp/absl/random/internal/fast_uniform_bits.h +4 -3
  1468. data/third_party/abseil-cpp/absl/random/internal/generate_real.h +1 -1
  1469. data/third_party/abseil-cpp/absl/random/internal/platform.h +1 -1
  1470. data/third_party/abseil-cpp/absl/random/internal/randen_detect.cc +4 -0
  1471. data/third_party/abseil-cpp/absl/random/internal/randen_engine.h +1 -1
  1472. data/third_party/abseil-cpp/absl/random/internal/randen_hwaes.cc +1 -1
  1473. data/third_party/abseil-cpp/absl/random/internal/uniform_helper.h +1 -1
  1474. data/third_party/abseil-cpp/absl/status/internal/status_internal.h +4 -0
  1475. data/third_party/abseil-cpp/absl/status/internal/statusor_internal.h +12 -24
  1476. data/third_party/abseil-cpp/absl/status/status.cc +11 -7
  1477. data/third_party/abseil-cpp/absl/status/status.h +11 -2
  1478. data/third_party/abseil-cpp/absl/status/statusor.h +22 -8
  1479. data/third_party/abseil-cpp/absl/strings/ascii.cc +54 -6
  1480. data/third_party/abseil-cpp/absl/strings/charconv.cc +21 -4
  1481. data/third_party/abseil-cpp/absl/strings/charconv.h +2 -2
  1482. data/third_party/abseil-cpp/absl/strings/cord.cc +1 -2
  1483. data/third_party/abseil-cpp/absl/strings/cord.h +32 -5
  1484. data/third_party/abseil-cpp/absl/strings/cord_analysis.cc +23 -1
  1485. data/third_party/abseil-cpp/absl/strings/cord_analysis.h +18 -0
  1486. data/third_party/abseil-cpp/absl/strings/cord_buffer.h +2 -5
  1487. data/third_party/abseil-cpp/absl/strings/escaping.cc +10 -32
  1488. data/third_party/abseil-cpp/absl/strings/escaping.h +1 -1
  1489. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.cc +2 -4
  1490. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.h +3 -3
  1491. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.cc +0 -1
  1492. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +15 -13
  1493. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.cc +13 -4
  1494. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h +8 -0
  1495. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_consume.cc +5 -3
  1496. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_consume.h +4 -7
  1497. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_flat.h +8 -0
  1498. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.h +2 -2
  1499. data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.cc +46 -20
  1500. data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.h +1 -34
  1501. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.cc +2 -1
  1502. data/third_party/abseil-cpp/absl/strings/internal/escaping.cc +23 -0
  1503. data/third_party/abseil-cpp/absl/strings/internal/escaping.h +1 -0
  1504. data/third_party/abseil-cpp/absl/strings/internal/memutil.cc +2 -77
  1505. data/third_party/abseil-cpp/absl/strings/internal/memutil.h +4 -112
  1506. data/third_party/abseil-cpp/absl/strings/internal/stl_type_traits.h +1 -1
  1507. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.cc +10 -31
  1508. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.h +8 -8
  1509. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h +5 -20
  1510. data/third_party/abseil-cpp/absl/strings/internal/str_format/constexpr_parser.h +1 -0
  1511. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h +1 -1
  1512. data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc +9 -9
  1513. data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +56 -6
  1514. data/third_party/abseil-cpp/absl/strings/match.cc +87 -0
  1515. data/third_party/abseil-cpp/absl/strings/match.h +19 -0
  1516. data/third_party/abseil-cpp/absl/strings/numbers.cc +154 -122
  1517. data/third_party/abseil-cpp/absl/strings/numbers.h +1 -6
  1518. data/third_party/abseil-cpp/absl/strings/str_cat.cc +7 -50
  1519. data/third_party/abseil-cpp/absl/strings/str_cat.h +83 -15
  1520. data/third_party/abseil-cpp/absl/strings/str_format.h +6 -3
  1521. data/third_party/abseil-cpp/absl/strings/str_split.cc +9 -6
  1522. data/third_party/abseil-cpp/absl/strings/string_view.cc +26 -4
  1523. data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.cc +5 -0
  1524. data/third_party/abseil-cpp/absl/synchronization/internal/futex.h +63 -43
  1525. data/third_party/abseil-cpp/absl/synchronization/internal/futex_waiter.cc +111 -0
  1526. data/third_party/abseil-cpp/absl/synchronization/internal/futex_waiter.h +63 -0
  1527. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +11 -7
  1528. data/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.cc +225 -0
  1529. data/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.h +122 -114
  1530. data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.cc +12 -8
  1531. data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.h +10 -1
  1532. data/third_party/abseil-cpp/absl/synchronization/internal/pthread_waiter.cc +167 -0
  1533. data/third_party/abseil-cpp/absl/synchronization/internal/pthread_waiter.h +60 -0
  1534. data/third_party/abseil-cpp/absl/synchronization/internal/sem_waiter.cc +122 -0
  1535. data/third_party/abseil-cpp/absl/synchronization/internal/sem_waiter.h +65 -0
  1536. data/third_party/abseil-cpp/absl/synchronization/internal/stdcpp_waiter.cc +91 -0
  1537. data/third_party/abseil-cpp/absl/synchronization/internal/stdcpp_waiter.h +56 -0
  1538. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.h +19 -113
  1539. data/third_party/abseil-cpp/absl/synchronization/internal/waiter_base.cc +42 -0
  1540. data/third_party/abseil-cpp/absl/synchronization/internal/waiter_base.h +90 -0
  1541. data/third_party/abseil-cpp/absl/synchronization/internal/win32_waiter.cc +151 -0
  1542. data/third_party/abseil-cpp/absl/synchronization/internal/win32_waiter.h +70 -0
  1543. data/third_party/abseil-cpp/absl/synchronization/mutex.cc +407 -411
  1544. data/third_party/abseil-cpp/absl/synchronization/mutex.h +152 -118
  1545. data/third_party/abseil-cpp/absl/time/clock.cc +6 -7
  1546. data/third_party/abseil-cpp/absl/time/duration.cc +24 -26
  1547. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/time_zone.h +1 -0
  1548. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.cc +1 -1
  1549. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc +3 -3
  1550. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.cc +8 -6
  1551. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.h +6 -3
  1552. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.cc +4 -2
  1553. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.h +4 -0
  1554. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.cc +322 -295
  1555. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.h +8 -17
  1556. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.cc +51 -33
  1557. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.h +7 -2
  1558. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +128 -2
  1559. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_posix.h +1 -1
  1560. data/third_party/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +5 -1
  1561. data/third_party/abseil-cpp/absl/time/internal/cctz/src/zone_info_source.cc +34 -34
  1562. data/third_party/abseil-cpp/absl/time/time.cc +9 -2
  1563. data/third_party/abseil-cpp/absl/time/time.h +115 -15
  1564. data/third_party/abseil-cpp/absl/types/internal/optional.h +0 -52
  1565. data/third_party/abseil-cpp/absl/types/internal/span.h +2 -2
  1566. data/third_party/abseil-cpp/absl/types/internal/variant.h +2 -2
  1567. data/third_party/abseil-cpp/absl/types/optional.h +15 -13
  1568. data/third_party/abseil-cpp/absl/types/span.h +1 -2
  1569. data/third_party/boringssl-with-bazel/err_data.c +554 -553
  1570. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_gentm.c +7 -3
  1571. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.c +7 -7
  1572. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c +5 -5
  1573. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c +34 -1
  1574. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utctm.c +11 -4
  1575. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +3 -3
  1576. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.c +7 -8
  1577. data/third_party/boringssl-with-bazel/src/crypto/bio/connect.c +7 -7
  1578. data/third_party/boringssl-with-bazel/src/crypto/bio/errno.c +92 -0
  1579. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.c +5 -49
  1580. data/third_party/boringssl-with-bazel/src/crypto/bio/file.c +18 -13
  1581. data/third_party/boringssl-with-bazel/src/crypto/bio/internal.h +16 -6
  1582. data/third_party/boringssl-with-bazel/src/crypto/bio/socket.c +4 -4
  1583. data/third_party/boringssl-with-bazel/src/crypto/bio/socket_helper.c +11 -2
  1584. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.c +1 -1
  1585. data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.c +19 -1
  1586. data/third_party/boringssl-with-bazel/src/crypto/chacha/internal.h +8 -1
  1587. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.c +31 -192
  1588. data/third_party/boringssl-with-bazel/src/crypto/conf/conf_def.h +3 -7
  1589. data/third_party/boringssl-with-bazel/src/crypto/conf/internal.h +8 -0
  1590. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_apple.c +3 -2
  1591. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_fuchsia.c +0 -1
  1592. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_linux.c +0 -2
  1593. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_openbsd.c +0 -1
  1594. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_sysreg.c +93 -0
  1595. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_win.c +1 -1
  1596. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_freebsd.c +0 -1
  1597. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_linux.c +0 -2
  1598. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.c +49 -46
  1599. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_64_adx.c +18 -0
  1600. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_tables.h +2809 -7417
  1601. data/third_party/boringssl-with-bazel/src/crypto/curve25519/internal.h +27 -5
  1602. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/dh_asn1.c +4 -0
  1603. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/params.c +5 -0
  1604. data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +20 -0
  1605. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_asn1.c +110 -72
  1606. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_derive.c +4 -3
  1607. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/hash_to_curve.c +24 -28
  1608. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/internal.h +4 -6
  1609. data/third_party/boringssl-with-bazel/src/crypto/err/err.c +23 -21
  1610. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.c +35 -12
  1611. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec.c +2 -4
  1612. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec_asn1.c +3 -7
  1613. data/third_party/boringssl-with-bazel/src/crypto/evp/pbkdf.c +3 -3
  1614. data/third_party/boringssl-with-bazel/src/crypto/evp/print.c +7 -6
  1615. data/third_party/boringssl-with-bazel/src/crypto/ex_data.c +34 -72
  1616. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +1 -1
  1617. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.c +12 -5
  1618. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd.c +5 -6
  1619. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +12 -6
  1620. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery.c +17 -18
  1621. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery_inv.c +51 -15
  1622. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.c +7 -7
  1623. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/delocate.h +5 -6
  1624. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/check.c +37 -8
  1625. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/dh.c +38 -19
  1626. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/internal.h +9 -0
  1627. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/builtin_curves.h +277 -0
  1628. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.c +180 -404
  1629. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.c +3 -3
  1630. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_montgomery.c +24 -57
  1631. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/felem.c +17 -13
  1632. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/internal.h +33 -71
  1633. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/oct.c +18 -17
  1634. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.c +5 -7
  1635. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.c +15 -18
  1636. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.c +9 -11
  1637. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/scalar.c +24 -24
  1638. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple.c +11 -27
  1639. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.c +8 -8
  1640. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/wnaf.c +4 -4
  1641. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.c +9 -3
  1642. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hkdf/hkdf.c +1 -1
  1643. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/fork_detect.c +40 -26
  1644. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/internal.h +21 -7
  1645. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/rand.c +38 -19
  1646. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/urandom.c +2 -29
  1647. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/internal.h +55 -0
  1648. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.c +33 -52
  1649. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c +42 -24
  1650. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/service_indicator.c +4 -7
  1651. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +7 -0
  1652. data/third_party/boringssl-with-bazel/src/crypto/internal.h +211 -100
  1653. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c +5 -4
  1654. data/third_party/boringssl-with-bazel/src/crypto/mem.c +7 -8
  1655. data/third_party/boringssl-with-bazel/src/crypto/obj/obj.c +25 -46
  1656. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/internal.h +3 -3
  1657. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/p5_pbev2.c +3 -3
  1658. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.c +7 -7
  1659. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.c +8 -5
  1660. data/third_party/boringssl-with-bazel/src/crypto/pool/internal.h +1 -0
  1661. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/deterministic.c +7 -6
  1662. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/forkunsafe.c +6 -12
  1663. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/getentropy.c +52 -0
  1664. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/ios.c +34 -0
  1665. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/trusty.c +38 -0
  1666. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/windows.c +41 -19
  1667. data/third_party/boringssl-with-bazel/src/crypto/refcount.c +59 -0
  1668. data/third_party/boringssl-with-bazel/src/crypto/stack/stack.c +152 -72
  1669. data/third_party/boringssl-with-bazel/src/crypto/thread_none.c +0 -8
  1670. data/third_party/boringssl-with-bazel/src/crypto/thread_pthread.c +6 -35
  1671. data/third_party/boringssl-with-bazel/src/crypto/thread_win.c +5 -26
  1672. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.c +14 -18
  1673. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c +54 -143
  1674. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +8 -19
  1675. data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.c +0 -3
  1676. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +1 -1
  1677. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c +1 -1
  1678. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_d2.c +1 -3
  1679. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +2 -4
  1680. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.c +2 -2
  1681. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +1 -1
  1682. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_v3.c +8 -12
  1683. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +19 -20
  1684. data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.c +11 -15
  1685. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +5 -5
  1686. data/third_party/boringssl-with-bazel/src/crypto/x509/x_name.c +1 -1
  1687. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c +7 -7
  1688. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_alt.c +2 -3
  1689. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c +2 -3
  1690. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c +4 -6
  1691. data/third_party/boringssl-with-bazel/src/include/openssl/arm_arch.h +4 -119
  1692. data/third_party/boringssl-with-bazel/src/include/openssl/asm_base.h +207 -0
  1693. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +5 -0
  1694. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +10 -116
  1695. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +11 -1
  1696. data/third_party/boringssl-with-bazel/src/include/openssl/bn.h +0 -2
  1697. data/third_party/boringssl-with-bazel/src/include/openssl/chacha.h +6 -0
  1698. data/third_party/boringssl-with-bazel/src/include/openssl/conf.h +5 -1
  1699. data/third_party/boringssl-with-bazel/src/include/openssl/dh.h +4 -1
  1700. data/third_party/boringssl-with-bazel/src/include/openssl/dsa.h +0 -21
  1701. data/third_party/boringssl-with-bazel/src/include/openssl/ec.h +28 -11
  1702. data/third_party/boringssl-with-bazel/src/include/openssl/ec_key.h +19 -6
  1703. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +11 -7
  1704. data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +6 -2
  1705. data/third_party/boringssl-with-bazel/src/include/openssl/rand.h +13 -14
  1706. data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +0 -61
  1707. data/third_party/boringssl-with-bazel/src/include/openssl/span.h +22 -20
  1708. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +131 -81
  1709. data/third_party/boringssl-with-bazel/src/include/openssl/stack.h +236 -213
  1710. data/third_party/boringssl-with-bazel/src/include/openssl/target.h +201 -0
  1711. data/third_party/boringssl-with-bazel/src/include/openssl/thread.h +1 -29
  1712. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +4 -8
  1713. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +3 -2
  1714. data/third_party/boringssl-with-bazel/src/ssl/extensions.cc +9 -65
  1715. data/third_party/boringssl-with-bazel/src/ssl/handoff.cc +20 -20
  1716. data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +1 -1
  1717. data/third_party/boringssl-with-bazel/src/ssl/internal.h +4 -11
  1718. data/third_party/boringssl-with-bazel/src/ssl/ssl_cipher.cc +26 -20
  1719. data/third_party/boringssl-with-bazel/src/ssl/ssl_file.cc +4 -4
  1720. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +37 -30
  1721. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +127 -26
  1722. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +2 -3
  1723. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_64_adx.h +691 -0
  1724. data/third_party/upb/upb/base/descriptor_constants.h +7 -27
  1725. data/third_party/upb/upb/base/internal/log2.h +38 -0
  1726. data/third_party/upb/upb/base/status.c +6 -26
  1727. data/third_party/upb/upb/base/status.h +6 -26
  1728. data/third_party/upb/upb/base/status.hpp +50 -0
  1729. data/third_party/upb/upb/base/string_view.h +11 -28
  1730. data/third_party/upb/upb/generated_code_support.h +33 -0
  1731. data/third_party/upb/upb/hash/common.c +12 -44
  1732. data/third_party/upb/upb/hash/common.h +16 -41
  1733. data/third_party/upb/upb/hash/int_table.h +6 -26
  1734. data/third_party/upb/upb/hash/str_table.h +7 -26
  1735. data/third_party/upb/upb/json/decode.c +31 -28
  1736. data/third_party/upb/upb/json/decode.h +32 -29
  1737. data/third_party/upb/upb/json/encode.c +31 -28
  1738. data/third_party/upb/upb/json/encode.h +35 -32
  1739. data/third_party/upb/upb/lex/atoi.c +6 -26
  1740. data/third_party/upb/upb/lex/atoi.h +8 -26
  1741. data/third_party/upb/upb/lex/round_trip.c +6 -26
  1742. data/third_party/upb/upb/lex/round_trip.h +6 -26
  1743. data/third_party/upb/upb/lex/strtod.c +6 -26
  1744. data/third_party/upb/upb/lex/strtod.h +6 -26
  1745. data/third_party/upb/upb/lex/unicode.c +6 -26
  1746. data/third_party/upb/upb/lex/unicode.h +8 -26
  1747. data/third_party/upb/upb/mem/alloc.c +6 -26
  1748. data/third_party/upb/upb/mem/alloc.h +6 -26
  1749. data/third_party/upb/upb/mem/arena.c +30 -29
  1750. data/third_party/upb/upb/mem/arena.h +16 -44
  1751. data/third_party/upb/upb/mem/arena.hpp +54 -0
  1752. data/third_party/upb/upb/mem/internal/arena.h +94 -0
  1753. data/third_party/upb/upb/message/accessors.c +34 -31
  1754. data/third_party/upb/upb/message/accessors.h +58 -57
  1755. data/third_party/upb/upb/message/array.c +154 -0
  1756. data/third_party/upb/upb/message/array.h +98 -0
  1757. data/third_party/upb/upb/message/internal/accessors.h +367 -0
  1758. data/third_party/upb/upb/message/internal/array.h +138 -0
  1759. data/third_party/upb/upb/message/internal/extension.h +63 -0
  1760. data/third_party/upb/upb/message/internal/map.h +173 -0
  1761. data/third_party/upb/upb/message/internal/map_entry.h +66 -0
  1762. data/third_party/upb/upb/message/internal/map_sorter.h +112 -0
  1763. data/third_party/upb/upb/message/internal/message.h +106 -0
  1764. data/third_party/upb/upb/message/internal/types.h +23 -0
  1765. data/third_party/upb/upb/message/map.c +145 -0
  1766. data/third_party/upb/upb/message/map.h +147 -0
  1767. data/third_party/upb/upb/message/map_gencode_util.h +81 -0
  1768. data/third_party/upb/upb/message/map_sorter.c +170 -0
  1769. data/third_party/upb/upb/message/message.c +8 -34
  1770. data/third_party/upb/upb/message/message.h +10 -27
  1771. data/third_party/upb/upb/message/tagged_ptr.h +69 -0
  1772. data/third_party/upb/upb/message/types.h +15 -0
  1773. data/third_party/upb/upb/message/value.h +46 -0
  1774. data/third_party/upb/upb/mini_descriptor/build_enum.c +130 -0
  1775. data/third_party/upb/upb/mini_descriptor/build_enum.h +42 -0
  1776. data/third_party/upb/upb/mini_descriptor/decode.c +870 -0
  1777. data/third_party/upb/upb/mini_descriptor/decode.h +120 -0
  1778. data/third_party/upb/upb/mini_descriptor/internal/base92.c +26 -0
  1779. data/third_party/upb/upb/mini_descriptor/internal/base92.h +63 -0
  1780. data/third_party/upb/upb/mini_descriptor/internal/decoder.h +53 -0
  1781. data/third_party/upb/upb/mini_descriptor/internal/encode.c +323 -0
  1782. data/third_party/upb/upb/mini_descriptor/internal/encode.h +92 -0
  1783. data/third_party/upb/upb/mini_descriptor/internal/encode.hpp +118 -0
  1784. data/third_party/upb/upb/mini_descriptor/internal/modifiers.h +32 -0
  1785. data/third_party/upb/upb/mini_descriptor/internal/wire_constants.h +72 -0
  1786. data/third_party/upb/upb/mini_descriptor/link.c +122 -0
  1787. data/third_party/upb/upb/mini_descriptor/link.h +84 -0
  1788. data/third_party/upb/upb/mini_table/enum.h +38 -0
  1789. data/third_party/upb/upb/mini_table/extension.h +15 -0
  1790. data/third_party/upb/upb/mini_table/extension_registry.c +7 -27
  1791. data/third_party/upb/upb/mini_table/extension_registry.h +9 -28
  1792. data/third_party/upb/upb/mini_table/field.h +98 -0
  1793. data/third_party/upb/upb/mini_table/file.h +15 -0
  1794. data/third_party/upb/upb/mini_table/internal/enum.h +58 -0
  1795. data/third_party/upb/upb/mini_table/internal/extension.h +27 -0
  1796. data/third_party/upb/upb/mini_table/internal/field.h +114 -0
  1797. data/third_party/upb/upb/mini_table/internal/file.h +29 -0
  1798. data/third_party/upb/upb/mini_table/internal/message.c +19 -0
  1799. data/third_party/upb/upb/mini_table/internal/message.h +88 -0
  1800. data/third_party/upb/upb/mini_table/internal/sub.h +18 -0
  1801. data/third_party/upb/upb/mini_table/message.c +77 -0
  1802. data/third_party/upb/upb/mini_table/message.h +85 -0
  1803. data/third_party/upb/upb/mini_table/sub.h +15 -0
  1804. data/third_party/upb/upb/port/atomic.h +8 -26
  1805. data/third_party/upb/upb/port/def.inc +28 -29
  1806. data/third_party/upb/upb/port/undef.inc +8 -26
  1807. data/third_party/upb/upb/port/vsnprintf_compat.h +6 -26
  1808. data/third_party/upb/upb/reflection/common.h +11 -27
  1809. data/third_party/upb/upb/reflection/def.h +8 -26
  1810. data/third_party/upb/upb/reflection/def.hpp +26 -31
  1811. data/third_party/upb/upb/reflection/def_pool.c +16 -35
  1812. data/third_party/upb/upb/reflection/def_pool.h +17 -38
  1813. data/third_party/upb/upb/reflection/def_type.c +6 -26
  1814. data/third_party/upb/upb/reflection/def_type.h +6 -27
  1815. data/third_party/upb/upb/reflection/desc_state.c +7 -27
  1816. data/third_party/upb/upb/reflection/enum_def.c +19 -37
  1817. data/third_party/upb/upb/reflection/enum_def.h +13 -33
  1818. data/third_party/upb/upb/reflection/enum_reserved_range.c +9 -30
  1819. data/third_party/upb/upb/reflection/enum_reserved_range.h +6 -26
  1820. data/third_party/upb/upb/reflection/enum_value_def.c +13 -32
  1821. data/third_party/upb/upb/reflection/enum_value_def.h +8 -28
  1822. data/third_party/upb/upb/reflection/extension_range.c +9 -28
  1823. data/third_party/upb/upb/reflection/extension_range.h +6 -26
  1824. data/third_party/upb/upb/reflection/field_def.c +70 -52
  1825. data/third_party/upb/upb/reflection/field_def.h +25 -42
  1826. data/third_party/upb/upb/reflection/file_def.c +23 -48
  1827. data/third_party/upb/upb/reflection/file_def.h +10 -30
  1828. data/third_party/upb/upb/reflection/internal/def_builder.c +339 -0
  1829. data/third_party/upb/upb/reflection/internal/def_builder.h +137 -0
  1830. data/third_party/upb/upb/reflection/internal/def_pool.h +57 -0
  1831. data/third_party/upb/upb/reflection/internal/desc_state.h +44 -0
  1832. data/third_party/upb/upb/reflection/internal/enum_def.h +36 -0
  1833. data/third_party/upb/upb/reflection/internal/enum_reserved_range.h +35 -0
  1834. data/third_party/upb/upb/reflection/internal/enum_value_def.h +37 -0
  1835. data/third_party/upb/upb/reflection/internal/extension_range.h +34 -0
  1836. data/third_party/upb/upb/reflection/internal/field_def.h +56 -0
  1837. data/third_party/upb/upb/reflection/internal/file_def.h +37 -0
  1838. data/third_party/upb/upb/reflection/internal/message_def.h +43 -0
  1839. data/third_party/upb/upb/reflection/internal/message_reserved_range.h +35 -0
  1840. data/third_party/upb/upb/reflection/internal/method_def.h +33 -0
  1841. data/third_party/upb/upb/reflection/internal/oneof_def.h +37 -0
  1842. data/third_party/upb/upb/reflection/internal/service_def.h +33 -0
  1843. data/third_party/upb/upb/reflection/internal/strdup2.c +33 -0
  1844. data/third_party/upb/upb/reflection/internal/strdup2.h +32 -0
  1845. data/third_party/upb/upb/reflection/message.c +10 -30
  1846. data/third_party/upb/upb/reflection/message.h +27 -40
  1847. data/third_party/upb/upb/reflection/message.hpp +5 -23
  1848. data/third_party/upb/upb/reflection/message_def.c +73 -55
  1849. data/third_party/upb/upb/reflection/message_def.h +25 -43
  1850. data/third_party/upb/upb/reflection/message_reserved_range.c +8 -28
  1851. data/third_party/upb/upb/reflection/message_reserved_range.h +6 -26
  1852. data/third_party/upb/upb/reflection/method_def.c +10 -29
  1853. data/third_party/upb/upb/reflection/method_def.h +6 -26
  1854. data/third_party/upb/upb/reflection/oneof_def.c +15 -33
  1855. data/third_party/upb/upb/reflection/oneof_def.h +11 -30
  1856. data/third_party/upb/upb/reflection/service_def.c +12 -31
  1857. data/third_party/upb/upb/reflection/service_def.h +6 -26
  1858. data/third_party/upb/upb/text/encode.c +8 -28
  1859. data/third_party/upb/upb/text/encode.h +6 -26
  1860. data/third_party/upb/upb/wire/decode.c +106 -68
  1861. data/third_party/upb/upb/wire/decode.h +50 -26
  1862. data/third_party/upb/upb/wire/decode_fast.c +10 -28
  1863. data/third_party/upb/upb/wire/decode_fast.h +6 -26
  1864. data/third_party/upb/upb/wire/encode.c +52 -46
  1865. data/third_party/upb/upb/wire/encode.h +14 -30
  1866. data/third_party/upb/upb/wire/eps_copy_input_stream.c +6 -26
  1867. data/third_party/upb/upb/wire/eps_copy_input_stream.h +6 -26
  1868. data/third_party/upb/upb/wire/internal/constants.h +27 -0
  1869. data/third_party/upb/upb/wire/internal/decode.h +143 -0
  1870. data/third_party/upb/upb/wire/internal/swap.h +45 -0
  1871. data/third_party/upb/upb/wire/reader.c +6 -26
  1872. data/third_party/upb/upb/wire/reader.h +8 -28
  1873. data/third_party/upb/upb/wire/types.h +6 -26
  1874. data/third_party/zlib/adler32.c +5 -27
  1875. data/third_party/zlib/compress.c +5 -16
  1876. data/third_party/zlib/crc32.c +86 -162
  1877. data/third_party/zlib/deflate.c +233 -336
  1878. data/third_party/zlib/deflate.h +8 -8
  1879. data/third_party/zlib/gzguts.h +11 -12
  1880. data/third_party/zlib/infback.c +7 -23
  1881. data/third_party/zlib/inffast.c +1 -4
  1882. data/third_party/zlib/inffast.h +1 -1
  1883. data/third_party/zlib/inflate.c +30 -99
  1884. data/third_party/zlib/inftrees.c +6 -11
  1885. data/third_party/zlib/inftrees.h +3 -3
  1886. data/third_party/zlib/trees.c +224 -302
  1887. data/third_party/zlib/uncompr.c +4 -12
  1888. data/third_party/zlib/zconf.h +6 -2
  1889. data/third_party/zlib/zlib.h +191 -188
  1890. data/third_party/zlib/zutil.c +16 -44
  1891. data/third_party/zlib/zutil.h +10 -10
  1892. metadata +979 -741
  1893. data/src/core/ext/filters/client_channel/http_proxy.cc +0 -233
  1894. data/src/core/ext/filters/client_channel/http_proxy.h +0 -52
  1895. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_attributes.cc +0 -42
  1896. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_attributes.h +0 -64
  1897. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +0 -1226
  1898. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h +0 -45
  1899. data/src/core/ext/transport/chttp2/transport/stream_map.cc +0 -177
  1900. data/src/core/ext/transport/chttp2/transport/stream_map.h +0 -68
  1901. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c +0 -152
  1902. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.h +0 -735
  1903. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +0 -183
  1904. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +0 -835
  1905. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +0 -160
  1906. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +0 -743
  1907. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.c +0 -535
  1908. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.h +0 -2796
  1909. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c +0 -69
  1910. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.h +0 -256
  1911. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c +0 -77
  1912. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.h +0 -287
  1913. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c +0 -59
  1914. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.h +0 -168
  1915. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.c +0 -52
  1916. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.h +0 -128
  1917. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.c +0 -52
  1918. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.h +0 -123
  1919. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.c +0 -153
  1920. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.h +0 -935
  1921. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.c +0 -57
  1922. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.h +0 -122
  1923. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +0 -63
  1924. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +0 -134
  1925. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +0 -60
  1926. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +0 -118
  1927. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +0 -357
  1928. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +0 -1629
  1929. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +0 -572
  1930. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +0 -3257
  1931. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +0 -128
  1932. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +0 -532
  1933. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +0 -732
  1934. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +0 -3926
  1935. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +0 -57
  1936. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +0 -122
  1937. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +0 -126
  1938. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +0 -664
  1939. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.c +0 -398
  1940. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.h +0 -1849
  1941. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +0 -227
  1942. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +0 -1054
  1943. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +0 -58
  1944. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +0 -134
  1945. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +0 -580
  1946. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +0 -2448
  1947. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +0 -235
  1948. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +0 -1180
  1949. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +0 -54
  1950. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +0 -115
  1951. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +0 -56
  1952. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +0 -122
  1953. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.c +0 -71
  1954. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.h +0 -256
  1955. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +0 -376
  1956. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +0 -1678
  1957. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +0 -314
  1958. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +0 -1886
  1959. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +0 -58
  1960. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +0 -149
  1961. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +0 -465
  1962. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +0 -2222
  1963. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +0 -73
  1964. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +0 -245
  1965. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +0 -75
  1966. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +0 -239
  1967. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +0 -79
  1968. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +0 -293
  1969. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +0 -69
  1970. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +0 -260
  1971. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +0 -57
  1972. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +0 -136
  1973. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +0 -141
  1974. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +0 -498
  1975. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +0 -207
  1976. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +0 -875
  1977. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +0 -182
  1978. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +0 -920
  1979. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +0 -53
  1980. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +0 -107
  1981. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +0 -269
  1982. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +0 -1600
  1983. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +0 -263
  1984. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +0 -1459
  1985. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +0 -89
  1986. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +0 -331
  1987. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +0 -80
  1988. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +0 -204
  1989. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.c +0 -66
  1990. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.h +0 -166
  1991. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +0 -222
  1992. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +0 -988
  1993. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +0 -229
  1994. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +0 -1017
  1995. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +0 -351
  1996. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +0 -1717
  1997. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +0 -136
  1998. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +0 -867
  1999. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +0 -1646
  2000. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +0 -9598
  2001. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +0 -100
  2002. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +0 -347
  2003. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.c +0 -328
  2004. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.h +0 -1530
  2005. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +0 -54
  2006. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +0 -123
  2007. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.c +0 -58
  2008. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.h +0 -122
  2009. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +0 -76
  2010. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +0 -196
  2011. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c +0 -65
  2012. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.h +0 -205
  2013. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c +0 -84
  2014. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.h +0 -413
  2015. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.c +0 -55
  2016. data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.h +0 -122
  2017. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c +0 -54
  2018. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.h +0 -107
  2019. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c +0 -88
  2020. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.h +0 -259
  2021. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.c +0 -36
  2022. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.h +0 -48
  2023. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.c +0 -90
  2024. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.h +0 -261
  2025. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +0 -68
  2026. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +0 -204
  2027. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +0 -49
  2028. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +0 -139
  2029. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +0 -119
  2030. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +0 -437
  2031. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +0 -125
  2032. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +0 -635
  2033. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.c +0 -90
  2034. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +0 -271
  2035. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +0 -79
  2036. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +0 -358
  2037. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.c +0 -75
  2038. data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +0 -201
  2039. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +0 -656
  2040. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +0 -3850
  2041. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.c +0 -53
  2042. data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +0 -107
  2043. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.c +0 -69
  2044. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +0 -246
  2045. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.c +0 -138
  2046. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +0 -499
  2047. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.c +0 -71
  2048. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +0 -257
  2049. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.c +0 -53
  2050. data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +0 -107
  2051. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c +0 -31
  2052. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +0 -43
  2053. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +0 -265
  2054. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +0 -1479
  2055. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +0 -111
  2056. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +0 -369
  2057. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +0 -270
  2058. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +0 -1482
  2059. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.c +0 -75
  2060. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +0 -224
  2061. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +0 -41
  2062. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +0 -78
  2063. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +0 -405
  2064. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +0 -2161
  2065. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +0 -87
  2066. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +0 -331
  2067. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +0 -185
  2068. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +0 -923
  2069. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.c +0 -57
  2070. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.h +0 -137
  2071. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +0 -89
  2072. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +0 -321
  2073. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.c +0 -56
  2074. data/src/core/ext/upb-generated/envoy/type/matcher/v3/filter_state.upb.h +0 -130
  2075. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.c +0 -108
  2076. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.h +0 -309
  2077. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +0 -79
  2078. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +0 -266
  2079. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +0 -58
  2080. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +0 -172
  2081. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +0 -57
  2082. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +0 -135
  2083. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +0 -54
  2084. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +0 -115
  2085. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +0 -99
  2086. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +0 -277
  2087. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.c +0 -46
  2088. data/src/core/ext/upb-generated/envoy/type/matcher/v3/status_code_input.upb.h +0 -117
  2089. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +0 -84
  2090. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +0 -312
  2091. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +0 -73
  2092. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +0 -236
  2093. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +0 -95
  2094. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +0 -354
  2095. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +0 -130
  2096. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +0 -536
  2097. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +0 -142
  2098. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +0 -516
  2099. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.c +0 -79
  2100. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.h +0 -234
  2101. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.c +0 -29
  2102. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.h +0 -44
  2103. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c +0 -49
  2104. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.h +0 -153
  2105. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +0 -67
  2106. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +0 -168
  2107. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +0 -87
  2108. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +0 -246
  2109. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.c +0 -78
  2110. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.h +0 -237
  2111. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.c +0 -29
  2112. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.h +0 -48
  2113. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +0 -52
  2114. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +0 -123
  2115. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.c +0 -60
  2116. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.h +0 -151
  2117. data/src/core/ext/upb-generated/google/api/annotations.upb.c +0 -43
  2118. data/src/core/ext/upb-generated/google/api/annotations.upb.h +0 -63
  2119. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +0 -372
  2120. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +0 -1764
  2121. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +0 -402
  2122. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +0 -1849
  2123. data/src/core/ext/upb-generated/google/api/http.upb.c +0 -114
  2124. data/src/core/ext/upb-generated/google/api/http.upb.h +0 -507
  2125. data/src/core/ext/upb-generated/google/api/httpbody.upb.c +0 -55
  2126. data/src/core/ext/upb-generated/google/api/httpbody.upb.h +0 -173
  2127. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +0 -49
  2128. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +0 -108
  2129. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +0 -1172
  2130. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +0 -5656
  2131. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +0 -49
  2132. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +0 -108
  2133. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +0 -38
  2134. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +0 -78
  2135. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +0 -118
  2136. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +0 -434
  2137. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +0 -49
  2138. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +0 -108
  2139. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +0 -166
  2140. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +0 -525
  2141. data/src/core/ext/upb-generated/google/rpc/status.upb.c +0 -55
  2142. data/src/core/ext/upb-generated/google/rpc/status.upb.h +0 -173
  2143. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.c +0 -109
  2144. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.h +0 -397
  2145. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +0 -82
  2146. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +0 -246
  2147. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +0 -345
  2148. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +0 -1677
  2149. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +0 -72
  2150. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +0 -207
  2151. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +0 -61
  2152. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +0 -154
  2153. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +0 -224
  2154. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +0 -893
  2155. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +0 -95
  2156. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +0 -308
  2157. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.c +0 -246
  2158. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.h +0 -1349
  2159. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +0 -129
  2160. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +0 -341
  2161. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +0 -64
  2162. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +0 -133
  2163. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +0 -41
  2164. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +0 -63
  2165. data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +0 -63
  2166. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +0 -140
  2167. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +0 -60
  2168. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +0 -118
  2169. data/src/core/ext/upb-generated/validate/validate.upb.c +0 -950
  2170. data/src/core/ext/upb-generated/validate/validate.upb.h +0 -6544
  2171. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.c +0 -129
  2172. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.h +0 -341
  2173. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.c +0 -64
  2174. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.h +0 -133
  2175. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.c +0 -41
  2176. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.h +0 -63
  2177. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +0 -126
  2178. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +0 -352
  2179. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.c +0 -60
  2180. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.h +0 -118
  2181. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +0 -48
  2182. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +0 -93
  2183. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.c +0 -56
  2184. data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.h +0 -122
  2185. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +0 -81
  2186. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +0 -241
  2187. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +0 -65
  2188. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +0 -142
  2189. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.c +0 -55
  2190. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.h +0 -122
  2191. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +0 -58
  2192. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +0 -151
  2193. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +0 -87
  2194. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +0 -338
  2195. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +0 -62
  2196. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +0 -152
  2197. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +0 -129
  2198. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +0 -360
  2199. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.c +0 -55
  2200. data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.h +0 -168
  2201. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.c +0 -53
  2202. data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.h +0 -107
  2203. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.c +0 -75
  2204. data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.h +0 -270
  2205. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.c +0 -39
  2206. data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.h +0 -78
  2207. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.c +0 -78
  2208. data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.h +0 -289
  2209. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.c +0 -268
  2210. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.h +0 -1122
  2211. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.c +0 -160
  2212. data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.h +0 -740
  2213. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.c +0 -61
  2214. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.h +0 -167
  2215. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.c +0 -82
  2216. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.h +0 -312
  2217. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.c +0 -82
  2218. data/src/core/ext/upb-generated/xds/type/v3/cel.upb.h +0 -240
  2219. data/src/core/ext/upb-generated/xds/type/v3/range.upb.c +0 -85
  2220. data/src/core/ext/upb-generated/xds/type/v3/range.upb.h +0 -246
  2221. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +0 -54
  2222. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +0 -122
  2223. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.c +0 -84
  2224. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.h +0 -56
  2225. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c +0 -128
  2226. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.h +0 -51
  2227. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +0 -102
  2228. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h +0 -56
  2229. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.c +0 -277
  2230. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.h +0 -126
  2231. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.c +0 -43
  2232. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.h +0 -41
  2233. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.c +0 -56
  2234. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.h +0 -41
  2235. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.c +0 -49
  2236. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.h +0 -36
  2237. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.c +0 -46
  2238. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.h +0 -36
  2239. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.c +0 -46
  2240. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.h +0 -36
  2241. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.c +0 -142
  2242. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.h +0 -41
  2243. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.c +0 -51
  2244. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.h +0 -36
  2245. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c +0 -48
  2246. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h +0 -31
  2247. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c +0 -38
  2248. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h +0 -36
  2249. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +0 -222
  2250. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h +0 -106
  2251. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +0 -408
  2252. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +0 -121
  2253. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +0 -98
  2254. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +0 -46
  2255. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +0 -567
  2256. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +0 -151
  2257. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c +0 -51
  2258. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h +0 -36
  2259. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +0 -138
  2260. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.h +0 -36
  2261. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.c +0 -206
  2262. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.h +0 -106
  2263. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +0 -132
  2264. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +0 -71
  2265. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c +0 -54
  2266. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.h +0 -36
  2267. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +0 -271
  2268. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.h +0 -151
  2269. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +0 -169
  2270. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +0 -71
  2271. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c +0 -53
  2272. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.h +0 -36
  2273. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +0 -47
  2274. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +0 -36
  2275. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.c +0 -53
  2276. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.h +0 -41
  2277. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c +0 -235
  2278. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.h +0 -101
  2279. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +0 -234
  2280. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +0 -76
  2281. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c +0 -53
  2282. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.h +0 -36
  2283. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +0 -305
  2284. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.h +0 -111
  2285. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c +0 -57
  2286. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.h +0 -41
  2287. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c +0 -55
  2288. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.h +0 -41
  2289. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +0 -61
  2290. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +0 -41
  2291. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +0 -70
  2292. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.h +0 -36
  2293. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c +0 -49
  2294. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.h +0 -36
  2295. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c +0 -99
  2296. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.h +0 -51
  2297. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +0 -133
  2298. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +0 -61
  2299. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c +0 -136
  2300. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.h +0 -56
  2301. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c +0 -48
  2302. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.h +0 -36
  2303. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +0 -227
  2304. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +0 -81
  2305. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +0 -190
  2306. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h +0 -66
  2307. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +0 -101
  2308. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.h +0 -36
  2309. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +0 -71
  2310. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h +0 -41
  2311. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.c +0 -69
  2312. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.h +0 -36
  2313. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c +0 -125
  2314. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h +0 -71
  2315. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c +0 -134
  2316. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h +0 -76
  2317. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.c +0 -223
  2318. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.h +0 -86
  2319. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +0 -123
  2320. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +0 -46
  2321. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +0 -972
  2322. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +0 -316
  2323. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c +0 -77
  2324. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h +0 -46
  2325. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.c +0 -199
  2326. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.h +0 -91
  2327. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.c +0 -56
  2328. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.h +0 -36
  2329. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.c +0 -57
  2330. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.h +0 -36
  2331. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c +0 -57
  2332. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.h +0 -41
  2333. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.c +0 -72
  2334. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.h +0 -36
  2335. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.c +0 -99
  2336. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.h +0 -36
  2337. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.c +0 -45
  2338. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.h +0 -36
  2339. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.c +0 -52
  2340. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.h +0 -36
  2341. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.c +0 -71
  2342. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.h +0 -41
  2343. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.c +0 -61
  2344. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.h +0 -31
  2345. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.c +0 -75
  2346. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.h +0 -41
  2347. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.c +0 -79
  2348. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.h +0 -36
  2349. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +0 -50
  2350. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +0 -36
  2351. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +0 -92
  2352. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +0 -56
  2353. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +0 -117
  2354. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +0 -46
  2355. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +0 -80
  2356. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +0 -41
  2357. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +0 -89
  2358. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.h +0 -36
  2359. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +0 -60
  2360. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +0 -41
  2361. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +0 -580
  2362. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +0 -131
  2363. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +0 -50
  2364. data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +0 -36
  2365. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +0 -48
  2366. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +0 -31
  2367. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +0 -215
  2368. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +0 -66
  2369. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +0 -91
  2370. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +0 -46
  2371. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +0 -258
  2372. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +0 -66
  2373. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +0 -58
  2374. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +0 -41
  2375. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c +0 -58
  2376. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.h +0 -36
  2377. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +0 -200
  2378. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +0 -101
  2379. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c +0 -76
  2380. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h +0 -41
  2381. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +0 -152
  2382. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h +0 -56
  2383. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.c +0 -46
  2384. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.h +0 -36
  2385. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c +0 -56
  2386. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.h +0 -51
  2387. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.c +0 -48
  2388. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/filter_state.upbdefs.h +0 -36
  2389. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.c +0 -55
  2390. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.h +0 -56
  2391. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c +0 -61
  2392. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h +0 -41
  2393. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c +0 -54
  2394. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h +0 -36
  2395. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c +0 -52
  2396. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h +0 -36
  2397. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c +0 -51
  2398. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h +0 -36
  2399. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +0 -71
  2400. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h +0 -46
  2401. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.c +0 -40
  2402. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/status_code_input.upbdefs.h +0 -41
  2403. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c +0 -65
  2404. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h +0 -41
  2405. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c +0 -58
  2406. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h +0 -41
  2407. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c +0 -75
  2408. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h +0 -46
  2409. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c +0 -78
  2410. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h +0 -66
  2411. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c +0 -85
  2412. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h +0 -56
  2413. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.c +0 -53
  2414. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.h +0 -46
  2415. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c +0 -36
  2416. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.h +0 -31
  2417. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.c +0 -94
  2418. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.h +0 -36
  2419. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c +0 -54
  2420. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.h +0 -41
  2421. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c +0 -48
  2422. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.h +0 -46
  2423. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.c +0 -69
  2424. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.h +0 -41
  2425. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c +0 -39
  2426. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.h +0 -31
  2427. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c +0 -44
  2428. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.h +0 -36
  2429. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.c +0 -57
  2430. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.h +0 -36
  2431. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c +0 -40
  2432. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.h +0 -31
  2433. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.c +0 -154
  2434. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.h +0 -96
  2435. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.c +0 -153
  2436. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.h +0 -101
  2437. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.c +0 -52
  2438. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.h +0 -46
  2439. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.c +0 -39
  2440. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.h +0 -36
  2441. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c +0 -34
  2442. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.h +0 -36
  2443. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +0 -387
  2444. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.h +0 -171
  2445. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c +0 -35
  2446. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.h +0 -36
  2447. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c +0 -32
  2448. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.h +0 -36
  2449. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c +0 -54
  2450. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.h +0 -51
  2451. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c +0 -35
  2452. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.h +0 -36
  2453. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c +0 -45
  2454. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.h +0 -76
  2455. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c +0 -37
  2456. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.h +0 -36
  2457. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.c +0 -67
  2458. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.h +0 -51
  2459. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +0 -99
  2460. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +0 -76
  2461. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c +0 -62
  2462. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.h +0 -46
  2463. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c +0 -47
  2464. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.h +0 -36
  2465. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c +0 -34
  2466. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.h +0 -31
  2467. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c +0 -46
  2468. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.h +0 -36
  2469. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c +0 -39
  2470. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.h +0 -36
  2471. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c +0 -283
  2472. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.h +0 -146
  2473. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.c +0 -63
  2474. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.h +0 -46
  2475. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.c +0 -47
  2476. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.h +0 -36
  2477. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.c +0 -35
  2478. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.h +0 -31
  2479. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.c +0 -64
  2480. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.h +0 -51
  2481. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.c +0 -40
  2482. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.h +0 -36
  2483. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.c +0 -38
  2484. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.h +0 -36
  2485. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.c +0 -45
  2486. data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.h +0 -36
  2487. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.c +0 -56
  2488. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.h +0 -41
  2489. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.c +0 -39
  2490. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.h +0 -41
  2491. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.c +0 -41
  2492. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.h +0 -36
  2493. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.c +0 -45
  2494. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.h +0 -36
  2495. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.c +0 -61
  2496. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.h +0 -41
  2497. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.c +0 -46
  2498. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.h +0 -36
  2499. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.c +0 -43
  2500. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.h +0 -36
  2501. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.c +0 -51
  2502. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.h +0 -41
  2503. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.c +0 -36
  2504. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.h +0 -36
  2505. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.c +0 -55
  2506. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.h +0 -41
  2507. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.c +0 -126
  2508. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.h +0 -81
  2509. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.c +0 -71
  2510. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.h +0 -61
  2511. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.c +0 -40
  2512. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.h +0 -41
  2513. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.c +0 -52
  2514. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.h +0 -41
  2515. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.c +0 -60
  2516. data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.h +0 -41
  2517. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.c +0 -36
  2518. data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.h +0 -46
  2519. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +0 -37
  2520. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.h +0 -36
  2521. data/src/core/lib/event_engine/memory_allocator.cc +0 -74
  2522. data/src/core/lib/event_engine/thread_pool/original_thread_pool.cc +0 -256
  2523. data/src/core/lib/event_engine/thread_pool/original_thread_pool.h +0 -137
  2524. data/src/core/lib/promise/detail/basic_join.h +0 -197
  2525. data/src/core/lib/promise/detail/switch.h +0 -1455
  2526. data/src/core/lib/resolver/server_address.cc +0 -174
  2527. data/src/core/lib/transport/pid_controller.cc +0 -51
  2528. data/src/core/lib/transport/pid_controller.h +0 -116
  2529. data/src/core/lib/transport/transport_impl.h +0 -102
  2530. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.cc +0 -403
  2531. data/third_party/boringssl-with-bazel/src/crypto/cpu_aarch64_freebsd.c +0 -62
  2532. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm.c +0 -38
  2533. data/third_party/boringssl-with-bazel/src/crypto/cpu_arm_openbsd.c +0 -31
  2534. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/fuchsia.c +0 -34
  2535. data/third_party/boringssl-with-bazel/src/crypto/refcount_c11.c +0 -65
  2536. data/third_party/boringssl-with-bazel/src/crypto/refcount_no_threads.c +0 -42
  2537. data/third_party/boringssl-with-bazel/src/crypto/refcount_win.c +0 -89
  2538. data/third_party/re2/util/benchmark.h +0 -156
  2539. data/third_party/re2/util/flags.h +0 -26
  2540. data/third_party/re2/util/malloc_counter.h +0 -19
  2541. data/third_party/re2/util/pcre.cc +0 -1025
  2542. data/third_party/re2/util/pcre.h +0 -681
  2543. data/third_party/re2/util/test.h +0 -50
  2544. data/third_party/upb/upb/alloc.h +0 -36
  2545. data/third_party/upb/upb/arena.h +0 -36
  2546. data/third_party/upb/upb/array.h +0 -36
  2547. data/third_party/upb/upb/base/log2.h +0 -57
  2548. data/third_party/upb/upb/collections/array.c +0 -145
  2549. data/third_party/upb/upb/collections/array.h +0 -85
  2550. data/third_party/upb/upb/collections/array_internal.h +0 -135
  2551. data/third_party/upb/upb/collections/map.c +0 -135
  2552. data/third_party/upb/upb/collections/map.h +0 -135
  2553. data/third_party/upb/upb/collections/map_gencode_util.h +0 -78
  2554. data/third_party/upb/upb/collections/map_internal.h +0 -170
  2555. data/third_party/upb/upb/collections/map_sorter.c +0 -166
  2556. data/third_party/upb/upb/collections/map_sorter_internal.h +0 -109
  2557. data/third_party/upb/upb/collections/message_value.h +0 -65
  2558. data/third_party/upb/upb/decode.h +0 -36
  2559. data/third_party/upb/upb/def.h +0 -36
  2560. data/third_party/upb/upb/def.hpp +0 -33
  2561. data/third_party/upb/upb/encode.h +0 -36
  2562. data/third_party/upb/upb/extension_registry.h +0 -35
  2563. data/third_party/upb/upb/json_decode.h +0 -36
  2564. data/third_party/upb/upb/json_encode.h +0 -36
  2565. data/third_party/upb/upb/map.h +0 -36
  2566. data/third_party/upb/upb/mem/arena_internal.h +0 -114
  2567. data/third_party/upb/upb/message/accessors_internal.h +0 -325
  2568. data/third_party/upb/upb/message/extension_internal.h +0 -83
  2569. data/third_party/upb/upb/message/internal.h +0 -135
  2570. data/third_party/upb/upb/mini_table/common.c +0 -128
  2571. data/third_party/upb/upb/mini_table/common.h +0 -170
  2572. data/third_party/upb/upb/mini_table/common_internal.h +0 -111
  2573. data/third_party/upb/upb/mini_table/decode.c +0 -1127
  2574. data/third_party/upb/upb/mini_table/decode.h +0 -179
  2575. data/third_party/upb/upb/mini_table/encode.c +0 -300
  2576. data/third_party/upb/upb/mini_table/encode_internal.h +0 -111
  2577. data/third_party/upb/upb/mini_table/encode_internal.hpp +0 -136
  2578. data/third_party/upb/upb/mini_table/enum_internal.h +0 -88
  2579. data/third_party/upb/upb/mini_table/extension_internal.h +0 -47
  2580. data/third_party/upb/upb/mini_table/field_internal.h +0 -192
  2581. data/third_party/upb/upb/mini_table/file_internal.h +0 -47
  2582. data/third_party/upb/upb/mini_table/message_internal.h +0 -136
  2583. data/third_party/upb/upb/mini_table/sub_internal.h +0 -38
  2584. data/third_party/upb/upb/mini_table/types.h +0 -40
  2585. data/third_party/upb/upb/mini_table.h +0 -36
  2586. data/third_party/upb/upb/msg.h +0 -36
  2587. data/third_party/upb/upb/reflection/def_builder.c +0 -357
  2588. data/third_party/upb/upb/reflection/def_builder_internal.h +0 -157
  2589. data/third_party/upb/upb/reflection/def_pool_internal.h +0 -77
  2590. data/third_party/upb/upb/reflection/desc_state_internal.h +0 -64
  2591. data/third_party/upb/upb/reflection/enum_def_internal.h +0 -56
  2592. data/third_party/upb/upb/reflection/enum_reserved_range_internal.h +0 -55
  2593. data/third_party/upb/upb/reflection/enum_value_def_internal.h +0 -57
  2594. data/third_party/upb/upb/reflection/extension_range_internal.h +0 -54
  2595. data/third_party/upb/upb/reflection/field_def_internal.h +0 -76
  2596. data/third_party/upb/upb/reflection/file_def_internal.h +0 -57
  2597. data/third_party/upb/upb/reflection/message_def_internal.h +0 -63
  2598. data/third_party/upb/upb/reflection/message_reserved_range_internal.h +0 -55
  2599. data/third_party/upb/upb/reflection/method_def_internal.h +0 -53
  2600. data/third_party/upb/upb/reflection/oneof_def_internal.h +0 -57
  2601. data/third_party/upb/upb/reflection/service_def_internal.h +0 -53
  2602. data/third_party/upb/upb/reflection.h +0 -36
  2603. data/third_party/upb/upb/reflection.hpp +0 -33
  2604. data/third_party/upb/upb/status.h +0 -36
  2605. data/third_party/upb/upb/string_view.h +0 -36
  2606. data/third_party/upb/upb/text_encode.h +0 -36
  2607. data/third_party/upb/upb/upb.h +0 -39
  2608. data/third_party/upb/upb/upb.hpp +0 -107
  2609. data/third_party/upb/upb/wire/common.h +0 -44
  2610. data/third_party/upb/upb/wire/common_internal.h +0 -50
  2611. data/third_party/upb/upb/wire/decode_internal.h +0 -163
  2612. data/third_party/upb/upb/wire/swap_internal.h +0 -63
  2613. data/third_party/zlib/gzclose.c +0 -25
  2614. data/third_party/zlib/gzlib.c +0 -639
  2615. data/third_party/zlib/gzread.c +0 -650
  2616. data/third_party/zlib/gzwrite.c +0 -677
@@ -62,6 +62,8 @@
62
62
  // pseudo-struct:
63
63
  //
64
64
  // struct BackingArray {
65
+ // // The number of elements we can insert before growing the capacity.
66
+ // size_t growth_left;
65
67
  // // Control bytes for the "real" slots.
66
68
  // ctrl_t ctrl[capacity];
67
69
  // // Always `ctrl_t::kSentinel`. This is used by iterators to find when to
@@ -115,7 +117,7 @@
115
117
  // starting with that index and extract potential candidates: occupied slots
116
118
  // with a control byte equal to `H2(hash(x))`. If we find an empty slot in the
117
119
  // group, we stop and return an error. Each candidate slot `y` is compared with
118
- // `x`; if `x == y`, we are done and return `&y`; otherwise we contine to the
120
+ // `x`; if `x == y`, we are done and return `&y`; otherwise we continue to the
119
121
  // next probe index. Tombstones effectively behave like full slots that never
120
122
  // match the value we're looking for.
121
123
  //
@@ -174,21 +176,23 @@
174
176
 
175
177
  #include <algorithm>
176
178
  #include <cmath>
179
+ #include <cstddef>
177
180
  #include <cstdint>
178
181
  #include <cstring>
179
182
  #include <iterator>
180
183
  #include <limits>
181
184
  #include <memory>
185
+ #include <string>
182
186
  #include <tuple>
183
187
  #include <type_traits>
184
188
  #include <utility>
185
189
 
186
190
  #include "absl/base/config.h"
187
191
  #include "absl/base/internal/endian.h"
188
- #include "absl/base/internal/prefetch.h"
189
192
  #include "absl/base/internal/raw_logging.h"
190
193
  #include "absl/base/optimization.h"
191
194
  #include "absl/base/port.h"
195
+ #include "absl/base/prefetch.h"
192
196
  #include "absl/container/internal/common.h"
193
197
  #include "absl/container/internal/compressed_tuple.h"
194
198
  #include "absl/container/internal/container_memory.h"
@@ -235,6 +239,14 @@ namespace container_internal {
235
239
  // We use uint8_t so we don't need to worry about padding.
236
240
  using GenerationType = uint8_t;
237
241
 
242
+ // A sentinel value for empty generations. Using 0 makes it easy to constexpr
243
+ // initialize an array of this value.
244
+ constexpr GenerationType SentinelEmptyGeneration() { return 0; }
245
+
246
+ constexpr GenerationType NextGeneration(GenerationType generation) {
247
+ return ++generation == SentinelEmptyGeneration() ? ++generation : generation;
248
+ }
249
+
238
250
  #ifdef ABSL_SWISSTABLE_ENABLE_GENERATIONS
239
251
  constexpr bool SwisstableGenerationsEnabled() { return true; }
240
252
  constexpr size_t NumGenerationBytes() { return sizeof(GenerationType); }
@@ -367,12 +379,12 @@ class NonIterableBitMask {
367
379
  return static_cast<uint32_t>((bit_width(mask_) - 1) >> Shift);
368
380
  }
369
381
 
370
- // Return the number of trailing zero *abstract* bits.
382
+ // Returns the number of trailing zero *abstract* bits.
371
383
  uint32_t TrailingZeros() const {
372
384
  return container_internal::TrailingZeros(mask_) >> Shift;
373
385
  }
374
386
 
375
- // Return the number of leading zero *abstract* bits.
387
+ // Returns the number of leading zero *abstract* bits.
376
388
  uint32_t LeadingZeros() const {
377
389
  constexpr int total_significant_bits = SignificantBits << Shift;
378
390
  constexpr int extra_bits = sizeof(T) * 8 - total_significant_bits;
@@ -475,19 +487,23 @@ static_assert(ctrl_t::kDeleted == static_cast<ctrl_t>(-2),
475
487
  "ctrl_t::kDeleted must be -2 to make the implementation of "
476
488
  "ConvertSpecialToEmptyAndFullToDeleted efficient");
477
489
 
478
- ABSL_DLL extern const ctrl_t kEmptyGroup[17];
490
+ // See definition comment for why this is size 32.
491
+ ABSL_DLL extern const ctrl_t kEmptyGroup[32];
479
492
 
480
493
  // Returns a pointer to a control byte group that can be used by empty tables.
481
494
  inline ctrl_t* EmptyGroup() {
482
495
  // Const must be cast away here; no uses of this function will actually write
483
496
  // to it, because it is only used for empty tables.
484
- return const_cast<ctrl_t*>(kEmptyGroup);
497
+ return const_cast<ctrl_t*>(kEmptyGroup + 16);
485
498
  }
486
499
 
487
- // Returns a pointer to the generation byte at the end of the empty group, if it
488
- // exists.
489
- inline GenerationType* EmptyGeneration() {
490
- return reinterpret_cast<GenerationType*>(EmptyGroup() + 16);
500
+ // Returns a pointer to a generation to use for an empty hashtable.
501
+ GenerationType* EmptyGeneration();
502
+
503
+ // Returns whether `generation` is a generation for an empty hashtable that
504
+ // could be returned by EmptyGeneration().
505
+ inline bool IsEmptyGeneration(const GenerationType* generation) {
506
+ return *generation == SentinelEmptyGeneration();
491
507
  }
492
508
 
493
509
  // Mixes a randomly generated per-process seed with `hash` and `ctrl` to
@@ -674,9 +690,10 @@ struct GroupAArch64Impl {
674
690
  void ConvertSpecialToEmptyAndFullToDeleted(ctrl_t* dst) const {
675
691
  uint64_t mask = vget_lane_u64(vreinterpret_u64_u8(ctrl), 0);
676
692
  constexpr uint64_t msbs = 0x8080808080808080ULL;
677
- constexpr uint64_t lsbs = 0x0101010101010101ULL;
678
- auto x = mask & msbs;
679
- auto res = (~x + (x >> 7)) & ~lsbs;
693
+ constexpr uint64_t slsbs = 0x0202020202020202ULL;
694
+ constexpr uint64_t midbs = 0x7e7e7e7e7e7e7e7eULL;
695
+ auto x = slsbs & (mask >> 6);
696
+ auto res = (x + midbs) | msbs;
680
697
  little_endian::Store64(dst, res);
681
698
  }
682
699
 
@@ -749,6 +766,15 @@ using Group = GroupAArch64Impl;
749
766
  using Group = GroupPortableImpl;
750
767
  #endif
751
768
 
769
+ // When there is an insertion with no reserved growth, we rehash with
770
+ // probability `min(1, RehashProbabilityConstant() / capacity())`. Using a
771
+ // constant divided by capacity ensures that inserting N elements is still O(N)
772
+ // in the average case. Using the constant 16 means that we expect to rehash ~8
773
+ // times more often than when generations are disabled. We are adding expected
774
+ // rehash_probability * #insertions/capacity_growth = 16/capacity * ((7/8 -
775
+ // 7/16) * capacity)/capacity_growth = ~7 extra rehashes per capacity growth.
776
+ inline size_t RehashProbabilityConstant() { return 16; }
777
+
752
778
  class CommonFieldsGenerationInfoEnabled {
753
779
  // A sentinel value for reserved_growth_ indicating that we just ran out of
754
780
  // reserved growth on the last insertion. When reserve is called and then
@@ -760,8 +786,11 @@ class CommonFieldsGenerationInfoEnabled {
760
786
  public:
761
787
  CommonFieldsGenerationInfoEnabled() = default;
762
788
  CommonFieldsGenerationInfoEnabled(CommonFieldsGenerationInfoEnabled&& that)
763
- : reserved_growth_(that.reserved_growth_), generation_(that.generation_) {
789
+ : reserved_growth_(that.reserved_growth_),
790
+ reservation_size_(that.reservation_size_),
791
+ generation_(that.generation_) {
764
792
  that.reserved_growth_ = 0;
793
+ that.reservation_size_ = 0;
765
794
  that.generation_ = EmptyGeneration();
766
795
  }
767
796
  CommonFieldsGenerationInfoEnabled& operator=(
@@ -769,19 +798,17 @@ class CommonFieldsGenerationInfoEnabled {
769
798
 
770
799
  // Whether we should rehash on insert in order to detect bugs of using invalid
771
800
  // references. We rehash on the first insertion after reserved_growth_ reaches
772
- // 0 after a call to reserve.
773
- // TODO(b/254649633): we could potentially do a rehash with low probability
801
+ // 0 after a call to reserve. We also do a rehash with low probability
774
802
  // whenever reserved_growth_ is zero.
775
- bool should_rehash_for_bug_detection_on_insert() const {
776
- return reserved_growth_ == kReservedGrowthJustRanOut;
777
- }
803
+ bool should_rehash_for_bug_detection_on_insert(const ctrl_t* ctrl,
804
+ size_t capacity) const;
778
805
  void maybe_increment_generation_on_insert() {
779
806
  if (reserved_growth_ == kReservedGrowthJustRanOut) reserved_growth_ = 0;
780
807
 
781
808
  if (reserved_growth_ > 0) {
782
809
  if (--reserved_growth_ == 0) reserved_growth_ = kReservedGrowthJustRanOut;
783
810
  } else {
784
- ++*generation_;
811
+ *generation_ = NextGeneration(*generation_);
785
812
  }
786
813
  }
787
814
  void reset_reserved_growth(size_t reservation, size_t size) {
@@ -789,6 +816,8 @@ class CommonFieldsGenerationInfoEnabled {
789
816
  }
790
817
  size_t reserved_growth() const { return reserved_growth_; }
791
818
  void set_reserved_growth(size_t r) { reserved_growth_ = r; }
819
+ size_t reservation_size() const { return reservation_size_; }
820
+ void set_reservation_size(size_t r) { reservation_size_ = r; }
792
821
  GenerationType generation() const { return *generation_; }
793
822
  void set_generation(GenerationType g) { *generation_ = g; }
794
823
  GenerationType* generation_ptr() const { return generation_; }
@@ -796,10 +825,14 @@ class CommonFieldsGenerationInfoEnabled {
796
825
 
797
826
  private:
798
827
  // The number of insertions remaining that are guaranteed to not rehash due to
799
- // a prior call to reserve. Note: we store reserved growth rather than
828
+ // a prior call to reserve. Note: we store reserved growth in addition to
800
829
  // reservation size because calls to erase() decrease size_ but don't decrease
801
830
  // reserved growth.
802
831
  size_t reserved_growth_ = 0;
832
+ // The maximum argument to reserve() since the container was cleared. We need
833
+ // to keep track of this, in addition to reserved growth, because we reset
834
+ // reserved growth to this when erase(begin(), end()) is called.
835
+ size_t reservation_size_ = 0;
803
836
  // Pointer to the generation counter, which is used to validate iterators and
804
837
  // is stored in the backing array between the control bytes and the slots.
805
838
  // Note that we can't store the generation inside the container itself and
@@ -820,11 +853,15 @@ class CommonFieldsGenerationInfoDisabled {
820
853
  CommonFieldsGenerationInfoDisabled& operator=(
821
854
  CommonFieldsGenerationInfoDisabled&&) = default;
822
855
 
823
- bool should_rehash_for_bug_detection_on_insert() const { return false; }
856
+ bool should_rehash_for_bug_detection_on_insert(const ctrl_t*, size_t) const {
857
+ return false;
858
+ }
824
859
  void maybe_increment_generation_on_insert() {}
825
860
  void reset_reserved_growth(size_t, size_t) {}
826
861
  size_t reserved_growth() const { return 0; }
827
862
  void set_reserved_growth(size_t) {}
863
+ size_t reservation_size() const { return 0; }
864
+ void set_reservation_size(size_t) {}
828
865
  GenerationType generation() const { return 0; }
829
866
  void set_generation(GenerationType) {}
830
867
  GenerationType* generation_ptr() const { return nullptr; }
@@ -867,6 +904,44 @@ using CommonFieldsGenerationInfo = CommonFieldsGenerationInfoDisabled;
867
904
  using HashSetIteratorGenerationInfo = HashSetIteratorGenerationInfoDisabled;
868
905
  #endif
869
906
 
907
+ // Returns whether `n` is a valid capacity (i.e., number of slots).
908
+ //
909
+ // A valid capacity is a non-zero integer `2^m - 1`.
910
+ inline bool IsValidCapacity(size_t n) { return ((n + 1) & n) == 0 && n > 0; }
911
+
912
+ // Computes the offset from the start of the backing allocation of the control
913
+ // bytes. growth_left is stored at the beginning of the backing array.
914
+ inline size_t ControlOffset() { return sizeof(size_t); }
915
+
916
+ // Returns the number of "cloned control bytes".
917
+ //
918
+ // This is the number of control bytes that are present both at the beginning
919
+ // of the control byte array and at the end, such that we can create a
920
+ // `Group::kWidth`-width probe window starting from any control byte.
921
+ constexpr size_t NumClonedBytes() { return Group::kWidth - 1; }
922
+
923
+ // Given the capacity of a table, computes the offset (from the start of the
924
+ // backing allocation) of the generation counter (if it exists).
925
+ inline size_t GenerationOffset(size_t capacity) {
926
+ assert(IsValidCapacity(capacity));
927
+ const size_t num_control_bytes = capacity + 1 + NumClonedBytes();
928
+ return ControlOffset() + num_control_bytes;
929
+ }
930
+
931
+ // Given the capacity of a table, computes the offset (from the start of the
932
+ // backing allocation) at which the slots begin.
933
+ inline size_t SlotOffset(size_t capacity, size_t slot_align) {
934
+ assert(IsValidCapacity(capacity));
935
+ return (GenerationOffset(capacity) + NumGenerationBytes() + slot_align - 1) &
936
+ (~slot_align + 1);
937
+ }
938
+
939
+ // Given the capacity of a table, computes the total size of the backing
940
+ // array.
941
+ inline size_t AllocSize(size_t capacity, size_t slot_size, size_t slot_align) {
942
+ return SlotOffset(capacity, slot_align) + capacity * slot_size;
943
+ }
944
+
870
945
  // CommonFields hold the fields in raw_hash_set that do not depend
871
946
  // on template parameters. This allows us to conveniently pass all
872
947
  // of this state to helper functions as a single argument.
@@ -884,72 +959,102 @@ class CommonFields : public CommonFieldsGenerationInfo {
884
959
  std::move(static_cast<CommonFieldsGenerationInfo&&>(that))),
885
960
  // Explicitly copying fields into "this" and then resetting "that"
886
961
  // fields generates less code then calling absl::exchange per field.
887
- control_(that.control_),
888
- slots_(that.slots_),
889
- size_(that.size_),
890
- capacity_(that.capacity_),
891
- compressed_tuple_(that.growth_left(), std::move(that.infoz())) {
892
- that.control_ = EmptyGroup();
893
- that.slots_ = nullptr;
894
- that.size_ = 0;
895
- that.capacity_ = 0;
896
- that.growth_left() = 0;
962
+ control_(that.control()),
963
+ slots_(that.slot_array()),
964
+ capacity_(that.capacity()),
965
+ compressed_tuple_(that.size(), std::move(that.infoz())) {
966
+ that.set_control(EmptyGroup());
967
+ that.set_slots(nullptr);
968
+ that.set_capacity(0);
969
+ that.set_size(0);
897
970
  }
898
971
  CommonFields& operator=(CommonFields&&) = default;
899
972
 
973
+ ctrl_t* control() const { return control_; }
974
+ void set_control(ctrl_t* c) { control_ = c; }
975
+ void* backing_array_start() const {
976
+ // growth_left is stored before control bytes.
977
+ assert(reinterpret_cast<uintptr_t>(control()) % alignof(size_t) == 0);
978
+ return control() - sizeof(size_t);
979
+ }
980
+
981
+ // Note: we can't use slots() because Qt defines "slots" as a macro.
982
+ void* slot_array() const { return slots_; }
983
+ void set_slots(void* s) { slots_ = s; }
984
+
985
+ // The number of filled slots.
986
+ size_t size() const { return compressed_tuple_.template get<0>(); }
987
+ void set_size(size_t s) { compressed_tuple_.template get<0>() = s; }
988
+
989
+ // The total number of available slots.
990
+ size_t capacity() const { return capacity_; }
991
+ void set_capacity(size_t c) {
992
+ assert(c == 0 || IsValidCapacity(c));
993
+ capacity_ = c;
994
+ }
995
+
900
996
  // The number of slots we can still fill without needing to rehash.
901
- size_t& growth_left() { return compressed_tuple_.template get<0>(); }
997
+ // This is stored in the heap allocation before the control bytes.
998
+ size_t growth_left() const {
999
+ return *reinterpret_cast<size_t*>(backing_array_start());
1000
+ }
1001
+ void set_growth_left(size_t gl) {
1002
+ *reinterpret_cast<size_t*>(backing_array_start()) = gl;
1003
+ }
902
1004
 
903
1005
  HashtablezInfoHandle& infoz() { return compressed_tuple_.template get<1>(); }
904
1006
  const HashtablezInfoHandle& infoz() const {
905
1007
  return compressed_tuple_.template get<1>();
906
1008
  }
907
1009
 
1010
+ bool should_rehash_for_bug_detection_on_insert() const {
1011
+ return CommonFieldsGenerationInfo::
1012
+ should_rehash_for_bug_detection_on_insert(control(), capacity());
1013
+ }
908
1014
  void reset_reserved_growth(size_t reservation) {
909
- CommonFieldsGenerationInfo::reset_reserved_growth(reservation, size_);
1015
+ CommonFieldsGenerationInfo::reset_reserved_growth(reservation, size());
1016
+ }
1017
+
1018
+ // The size of the backing array allocation.
1019
+ size_t alloc_size(size_t slot_size, size_t slot_align) const {
1020
+ return AllocSize(capacity(), slot_size, slot_align);
910
1021
  }
911
1022
 
1023
+ // Returns the number of control bytes set to kDeleted. For testing only.
1024
+ size_t TombstonesCount() const {
1025
+ return static_cast<size_t>(
1026
+ std::count(control(), control() + capacity(), ctrl_t::kDeleted));
1027
+ }
1028
+
1029
+ private:
912
1030
  // TODO(b/259599413): Investigate removing some of these fields:
913
1031
  // - control/slots can be derived from each other
914
- // - size can be moved into the slot array
1032
+ // - we can use 6 bits for capacity since it's always a power of two minus 1
915
1033
 
916
- // The control bytes (and, also, a pointer to the base of the backing array).
1034
+ // The control bytes (and, also, a pointer near to the base of the backing
1035
+ // array).
917
1036
  //
918
1037
  // This contains `capacity + 1 + NumClonedBytes()` entries, even
919
1038
  // when the table is empty (hence EmptyGroup).
1039
+ //
1040
+ // Note that growth_left is stored immediately before this pointer.
920
1041
  ctrl_t* control_ = EmptyGroup();
921
1042
 
922
1043
  // The beginning of the slots, located at `SlotOffset()` bytes after
923
1044
  // `control`. May be null for empty tables.
924
1045
  void* slots_ = nullptr;
925
1046
 
926
- // The number of filled slots.
927
- size_t size_ = 0;
928
-
929
- // The total number of available slots.
930
1047
  size_t capacity_ = 0;
931
1048
 
932
- // Bundle together growth_left and HashtablezInfoHandle to ensure EBO for
1049
+ // Bundle together size and HashtablezInfoHandle to ensure EBO for
933
1050
  // HashtablezInfoHandle when sampling is turned off.
934
1051
  absl::container_internal::CompressedTuple<size_t, HashtablezInfoHandle>
935
1052
  compressed_tuple_{0u, HashtablezInfoHandle{}};
936
1053
  };
937
1054
 
938
- // Returns he number of "cloned control bytes".
939
- //
940
- // This is the number of control bytes that are present both at the beginning
941
- // of the control byte array and at the end, such that we can create a
942
- // `Group::kWidth`-width probe window starting from any control byte.
943
- constexpr size_t NumClonedBytes() { return Group::kWidth - 1; }
944
-
945
1055
  template <class Policy, class Hash, class Eq, class Alloc>
946
1056
  class raw_hash_set;
947
1057
 
948
- // Returns whether `n` is a valid capacity (i.e., number of slots).
949
- //
950
- // A valid capacity is a non-zero integer `2^m - 1`.
951
- inline bool IsValidCapacity(size_t n) { return ((n + 1) & n) == 0 && n > 0; }
952
-
953
1058
  // Returns the next valid capacity after `n`.
954
1059
  inline size_t NextCapacity(size_t n) {
955
1060
  assert(IsValidCapacity(n) || n == 0);
@@ -1021,34 +1126,75 @@ size_t SelectBucketCountForIterRange(InputIter first, InputIter last,
1021
1126
  return 0;
1022
1127
  }
1023
1128
 
1024
- #define ABSL_INTERNAL_ASSERT_IS_FULL(ctrl, generation, generation_ptr, \
1025
- operation) \
1026
- do { \
1027
- ABSL_HARDENING_ASSERT( \
1028
- (ctrl != nullptr) && operation \
1029
- " called on invalid iterator. The iterator might be an end() " \
1030
- "iterator or may have been default constructed."); \
1031
- if (SwisstableGenerationsEnabled() && generation != *generation_ptr) \
1032
- ABSL_INTERNAL_LOG(FATAL, operation \
1033
- " called on invalidated iterator. The table could " \
1034
- "have rehashed since this iterator was initialized."); \
1035
- ABSL_HARDENING_ASSERT( \
1036
- (IsFull(*ctrl)) && operation \
1037
- " called on invalid iterator. The element might have been erased or " \
1038
- "the table might have rehashed."); \
1039
- } while (0)
1129
+ constexpr bool SwisstableDebugEnabled() {
1130
+ #if defined(ABSL_SWISSTABLE_ENABLE_GENERATIONS) || \
1131
+ ABSL_OPTION_HARDENED == 1 || !defined(NDEBUG)
1132
+ return true;
1133
+ #else
1134
+ return false;
1135
+ #endif
1136
+ }
1137
+
1138
+ inline void AssertIsFull(const ctrl_t* ctrl, GenerationType generation,
1139
+ const GenerationType* generation_ptr,
1140
+ const char* operation) {
1141
+ if (!SwisstableDebugEnabled()) return;
1142
+ if (ctrl == nullptr) {
1143
+ ABSL_INTERNAL_LOG(FATAL,
1144
+ std::string(operation) + " called on end() iterator.");
1145
+ }
1146
+ if (ctrl == EmptyGroup()) {
1147
+ ABSL_INTERNAL_LOG(FATAL, std::string(operation) +
1148
+ " called on default-constructed iterator.");
1149
+ }
1150
+ if (SwisstableGenerationsEnabled()) {
1151
+ if (generation != *generation_ptr) {
1152
+ ABSL_INTERNAL_LOG(FATAL,
1153
+ std::string(operation) +
1154
+ " called on invalid iterator. The table could have "
1155
+ "rehashed since this iterator was initialized.");
1156
+ }
1157
+ if (!IsFull(*ctrl)) {
1158
+ ABSL_INTERNAL_LOG(
1159
+ FATAL,
1160
+ std::string(operation) +
1161
+ " called on invalid iterator. The element was likely erased.");
1162
+ }
1163
+ } else {
1164
+ if (!IsFull(*ctrl)) {
1165
+ ABSL_INTERNAL_LOG(
1166
+ FATAL,
1167
+ std::string(operation) +
1168
+ " called on invalid iterator. The element might have been erased "
1169
+ "or the table might have rehashed. Consider running with "
1170
+ "--config=asan to diagnose rehashing issues.");
1171
+ }
1172
+ }
1173
+ }
1040
1174
 
1041
1175
  // Note that for comparisons, null/end iterators are valid.
1042
1176
  inline void AssertIsValidForComparison(const ctrl_t* ctrl,
1043
1177
  GenerationType generation,
1044
1178
  const GenerationType* generation_ptr) {
1045
- ABSL_HARDENING_ASSERT((ctrl == nullptr || IsFull(*ctrl)) &&
1046
- "Invalid iterator comparison. The element might have "
1047
- "been erased or the table might have rehashed.");
1048
- if (SwisstableGenerationsEnabled() && generation != *generation_ptr) {
1049
- ABSL_INTERNAL_LOG(FATAL,
1050
- "Invalid iterator comparison. The table could have "
1051
- "rehashed since this iterator was initialized.");
1179
+ if (!SwisstableDebugEnabled()) return;
1180
+ const bool ctrl_is_valid_for_comparison =
1181
+ ctrl == nullptr || ctrl == EmptyGroup() || IsFull(*ctrl);
1182
+ if (SwisstableGenerationsEnabled()) {
1183
+ if (generation != *generation_ptr) {
1184
+ ABSL_INTERNAL_LOG(FATAL,
1185
+ "Invalid iterator comparison. The table could have "
1186
+ "rehashed since this iterator was initialized.");
1187
+ }
1188
+ if (!ctrl_is_valid_for_comparison) {
1189
+ ABSL_INTERNAL_LOG(
1190
+ FATAL, "Invalid iterator comparison. The element was likely erased.");
1191
+ }
1192
+ } else {
1193
+ ABSL_HARDENING_ASSERT(
1194
+ ctrl_is_valid_for_comparison &&
1195
+ "Invalid iterator comparison. The element might have been erased or "
1196
+ "the table might have rehashed. Consider running with --config=asan to "
1197
+ "diagnose rehashing issues.");
1052
1198
  }
1053
1199
  }
1054
1200
 
@@ -1074,16 +1220,54 @@ inline bool AreItersFromSameContainer(const ctrl_t* ctrl_a,
1074
1220
  // Asserts that two iterators come from the same container.
1075
1221
  // Note: we take slots by reference so that it's not UB if they're uninitialized
1076
1222
  // as long as we don't read them (when ctrl is null).
1077
- // TODO(b/254649633): when generations are enabled, we can detect more cases of
1078
- // different containers by comparing the pointers to the generations - this
1079
- // can cover cases of end iterators that we would otherwise miss.
1080
1223
  inline void AssertSameContainer(const ctrl_t* ctrl_a, const ctrl_t* ctrl_b,
1081
1224
  const void* const& slot_a,
1082
- const void* const& slot_b) {
1083
- ABSL_HARDENING_ASSERT(
1084
- AreItersFromSameContainer(ctrl_a, ctrl_b, slot_a, slot_b) &&
1085
- "Invalid iterator comparison. The iterators may be from different "
1086
- "containers or the container might have rehashed.");
1225
+ const void* const& slot_b,
1226
+ const GenerationType* generation_ptr_a,
1227
+ const GenerationType* generation_ptr_b) {
1228
+ if (!SwisstableDebugEnabled()) return;
1229
+ const bool a_is_default = ctrl_a == EmptyGroup();
1230
+ const bool b_is_default = ctrl_b == EmptyGroup();
1231
+ if (a_is_default != b_is_default) {
1232
+ ABSL_INTERNAL_LOG(
1233
+ FATAL,
1234
+ "Invalid iterator comparison. Comparing default-constructed iterator "
1235
+ "with non-default-constructed iterator.");
1236
+ }
1237
+ if (a_is_default && b_is_default) return;
1238
+
1239
+ if (SwisstableGenerationsEnabled()) {
1240
+ if (generation_ptr_a == generation_ptr_b) return;
1241
+ const bool a_is_empty = IsEmptyGeneration(generation_ptr_a);
1242
+ const bool b_is_empty = IsEmptyGeneration(generation_ptr_b);
1243
+ if (a_is_empty != b_is_empty) {
1244
+ ABSL_INTERNAL_LOG(FATAL,
1245
+ "Invalid iterator comparison. Comparing iterator from "
1246
+ "a non-empty hashtable with an iterator from an empty "
1247
+ "hashtable.");
1248
+ }
1249
+ if (a_is_empty && b_is_empty) {
1250
+ ABSL_INTERNAL_LOG(FATAL,
1251
+ "Invalid iterator comparison. Comparing iterators from "
1252
+ "different empty hashtables.");
1253
+ }
1254
+ const bool a_is_end = ctrl_a == nullptr;
1255
+ const bool b_is_end = ctrl_b == nullptr;
1256
+ if (a_is_end || b_is_end) {
1257
+ ABSL_INTERNAL_LOG(FATAL,
1258
+ "Invalid iterator comparison. Comparing iterator with "
1259
+ "an end() iterator from a different hashtable.");
1260
+ }
1261
+ ABSL_INTERNAL_LOG(FATAL,
1262
+ "Invalid iterator comparison. Comparing non-end() "
1263
+ "iterators from different hashtables.");
1264
+ } else {
1265
+ ABSL_HARDENING_ASSERT(
1266
+ AreItersFromSameContainer(ctrl_a, ctrl_b, slot_a, slot_b) &&
1267
+ "Invalid iterator comparison. The iterators may be from different "
1268
+ "containers or the container might have rehashed. Consider running "
1269
+ "with --config=asan to diagnose rehashing issues.");
1270
+ }
1087
1271
  }
1088
1272
 
1089
1273
  struct FindInfo {
@@ -1106,11 +1290,13 @@ struct FindInfo {
1106
1290
  inline bool is_small(size_t capacity) { return capacity < Group::kWidth - 1; }
1107
1291
 
1108
1292
  // Begins a probing operation on `common.control`, using `hash`.
1109
- inline probe_seq<Group::kWidth> probe(const CommonFields& common, size_t hash) {
1110
- const ctrl_t* ctrl = common.control_;
1111
- const size_t capacity = common.capacity_;
1293
+ inline probe_seq<Group::kWidth> probe(const ctrl_t* ctrl, const size_t capacity,
1294
+ size_t hash) {
1112
1295
  return probe_seq<Group::kWidth>(H1(hash, ctrl), capacity);
1113
1296
  }
1297
+ inline probe_seq<Group::kWidth> probe(const CommonFields& common, size_t hash) {
1298
+ return probe(common.control(), common.capacity(), hash);
1299
+ }
1114
1300
 
1115
1301
  // Probes an array of control bits using a probe sequence derived from `hash`,
1116
1302
  // and returns the offset corresponding to the first deleted or empty slot.
@@ -1122,7 +1308,7 @@ inline probe_seq<Group::kWidth> probe(const CommonFields& common, size_t hash) {
1122
1308
  template <typename = void>
1123
1309
  inline FindInfo find_first_non_full(const CommonFields& common, size_t hash) {
1124
1310
  auto seq = probe(common, hash);
1125
- const ctrl_t* ctrl = common.control_;
1311
+ const ctrl_t* ctrl = common.control();
1126
1312
  while (true) {
1127
1313
  Group g{ctrl + seq.offset()};
1128
1314
  auto mask = g.MaskEmptyOrDeleted();
@@ -1132,14 +1318,14 @@ inline FindInfo find_first_non_full(const CommonFields& common, size_t hash) {
1132
1318
  // In debug build we will randomly insert in either the front or back of
1133
1319
  // the group.
1134
1320
  // TODO(kfm,sbenza): revisit after we do unconditional mixing
1135
- if (!is_small(common.capacity_) && ShouldInsertBackwards(hash, ctrl)) {
1321
+ if (!is_small(common.capacity()) && ShouldInsertBackwards(hash, ctrl)) {
1136
1322
  return {seq.offset(mask.HighestBitSet()), seq.index()};
1137
1323
  }
1138
1324
  #endif
1139
1325
  return {seq.offset(mask.LowestBitSet()), seq.index()};
1140
1326
  }
1141
1327
  seq.next();
1142
- assert(seq.index() <= common.capacity_ && "full table!");
1328
+ assert(seq.index() <= common.capacity() && "full table!");
1143
1329
  }
1144
1330
  }
1145
1331
 
@@ -1153,18 +1339,18 @@ extern template FindInfo find_first_non_full(const CommonFields&, size_t);
1153
1339
  FindInfo find_first_non_full_outofline(const CommonFields&, size_t);
1154
1340
 
1155
1341
  inline void ResetGrowthLeft(CommonFields& common) {
1156
- common.growth_left() = CapacityToGrowth(common.capacity_) - common.size_;
1342
+ common.set_growth_left(CapacityToGrowth(common.capacity()) - common.size());
1157
1343
  }
1158
1344
 
1159
1345
  // Sets `ctrl` to `{kEmpty, kSentinel, ..., kEmpty}`, marking the entire
1160
1346
  // array as marked as empty.
1161
1347
  inline void ResetCtrl(CommonFields& common, size_t slot_size) {
1162
- const size_t capacity = common.capacity_;
1163
- ctrl_t* ctrl = common.control_;
1348
+ const size_t capacity = common.capacity();
1349
+ ctrl_t* ctrl = common.control();
1164
1350
  std::memset(ctrl, static_cast<int8_t>(ctrl_t::kEmpty),
1165
1351
  capacity + 1 + NumClonedBytes());
1166
1352
  ctrl[capacity] = ctrl_t::kSentinel;
1167
- SanitizerPoisonMemoryRegion(common.slots_, slot_size * capacity);
1353
+ SanitizerPoisonMemoryRegion(common.slot_array(), slot_size * capacity);
1168
1354
  ResetGrowthLeft(common);
1169
1355
  }
1170
1356
 
@@ -1174,17 +1360,17 @@ inline void ResetCtrl(CommonFields& common, size_t slot_size) {
1174
1360
  // mirror the value to the cloned tail if necessary.
1175
1361
  inline void SetCtrl(const CommonFields& common, size_t i, ctrl_t h,
1176
1362
  size_t slot_size) {
1177
- const size_t capacity = common.capacity_;
1363
+ const size_t capacity = common.capacity();
1178
1364
  assert(i < capacity);
1179
1365
 
1180
- auto* slot_i = static_cast<const char*>(common.slots_) + i * slot_size;
1366
+ auto* slot_i = static_cast<const char*>(common.slot_array()) + i * slot_size;
1181
1367
  if (IsFull(h)) {
1182
1368
  SanitizerUnpoisonMemoryRegion(slot_i, slot_size);
1183
1369
  } else {
1184
1370
  SanitizerPoisonMemoryRegion(slot_i, slot_size);
1185
1371
  }
1186
1372
 
1187
- ctrl_t* ctrl = common.control_;
1373
+ ctrl_t* ctrl = common.control();
1188
1374
  ctrl[i] = h;
1189
1375
  ctrl[((i - NumClonedBytes()) & capacity) + (NumClonedBytes() & capacity)] = h;
1190
1376
  }
@@ -1195,56 +1381,41 @@ inline void SetCtrl(const CommonFields& common, size_t i, h2_t h,
1195
1381
  SetCtrl(common, i, static_cast<ctrl_t>(h), slot_size);
1196
1382
  }
1197
1383
 
1198
- // Given the capacity of a table, computes the offset (from the start of the
1199
- // backing allocation) of the generation counter (if it exists).
1200
- inline size_t GenerationOffset(size_t capacity) {
1201
- assert(IsValidCapacity(capacity));
1202
- const size_t num_control_bytes = capacity + 1 + NumClonedBytes();
1203
- return num_control_bytes;
1204
- }
1205
-
1206
- // Given the capacity of a table, computes the offset (from the start of the
1207
- // backing allocation) at which the slots begin.
1208
- inline size_t SlotOffset(size_t capacity, size_t slot_align) {
1209
- assert(IsValidCapacity(capacity));
1210
- const size_t num_control_bytes = capacity + 1 + NumClonedBytes();
1211
- return (num_control_bytes + NumGenerationBytes() + slot_align - 1) &
1212
- (~slot_align + 1);
1213
- }
1214
-
1215
- // Given the capacity of a table, computes the total size of the backing
1216
- // array.
1217
- inline size_t AllocSize(size_t capacity, size_t slot_size, size_t slot_align) {
1218
- return SlotOffset(capacity, slot_align) + capacity * slot_size;
1384
+ // growth_left (which is a size_t) is stored with the backing array.
1385
+ constexpr size_t BackingArrayAlignment(size_t align_of_slot) {
1386
+ return (std::max)(align_of_slot, alignof(size_t));
1219
1387
  }
1220
1388
 
1221
1389
  template <typename Alloc, size_t SizeOfSlot, size_t AlignOfSlot>
1222
1390
  ABSL_ATTRIBUTE_NOINLINE void InitializeSlots(CommonFields& c, Alloc alloc) {
1223
- assert(c.capacity_);
1391
+ assert(c.capacity());
1224
1392
  // Folks with custom allocators often make unwarranted assumptions about the
1225
1393
  // behavior of their classes vis-a-vis trivial destructability and what
1226
1394
  // calls they will or won't make. Avoid sampling for people with custom
1227
1395
  // allocators to get us out of this mess. This is not a hard guarantee but
1228
1396
  // a workaround while we plan the exact guarantee we want to provide.
1229
1397
  const size_t sample_size =
1230
- (std::is_same<Alloc, std::allocator<char>>::value && c.slots_ == nullptr)
1398
+ (std::is_same<Alloc, std::allocator<char>>::value &&
1399
+ c.slot_array() == nullptr)
1231
1400
  ? SizeOfSlot
1232
1401
  : 0;
1233
1402
 
1234
- const size_t cap = c.capacity_;
1403
+ const size_t cap = c.capacity();
1404
+ const size_t alloc_size = AllocSize(cap, SizeOfSlot, AlignOfSlot);
1405
+ // growth_left (which is a size_t) is stored with the backing array.
1235
1406
  char* mem = static_cast<char*>(
1236
- Allocate<AlignOfSlot>(&alloc, AllocSize(cap, SizeOfSlot, AlignOfSlot)));
1407
+ Allocate<BackingArrayAlignment(AlignOfSlot)>(&alloc, alloc_size));
1237
1408
  const GenerationType old_generation = c.generation();
1238
1409
  c.set_generation_ptr(
1239
1410
  reinterpret_cast<GenerationType*>(mem + GenerationOffset(cap)));
1240
- c.set_generation(old_generation + 1);
1241
- c.control_ = reinterpret_cast<ctrl_t*>(mem);
1242
- c.slots_ = mem + SlotOffset(cap, AlignOfSlot);
1411
+ c.set_generation(NextGeneration(old_generation));
1412
+ c.set_control(reinterpret_cast<ctrl_t*>(mem + ControlOffset()));
1413
+ c.set_slots(mem + SlotOffset(cap, AlignOfSlot));
1243
1414
  ResetCtrl(c, SizeOfSlot);
1244
1415
  if (sample_size) {
1245
1416
  c.infoz() = Sample(sample_size);
1246
1417
  }
1247
- c.infoz().RecordStorageChanged(c.size_, cap);
1418
+ c.infoz().RecordStorageChanged(c.size(), cap);
1248
1419
  }
1249
1420
 
1250
1421
  // PolicyFunctions bundles together some information for a particular
@@ -1254,15 +1425,14 @@ ABSL_ATTRIBUTE_NOINLINE void InitializeSlots(CommonFields& c, Alloc alloc) {
1254
1425
  struct PolicyFunctions {
1255
1426
  size_t slot_size;
1256
1427
 
1257
- // Return the hash of the pointed-to slot.
1428
+ // Returns the hash of the pointed-to slot.
1258
1429
  size_t (*hash_slot)(void* set, void* slot);
1259
1430
 
1260
1431
  // Transfer the contents of src_slot to dst_slot.
1261
1432
  void (*transfer)(void* set, void* dst_slot, void* src_slot);
1262
1433
 
1263
- // Deallocate the specified backing store which is sized for n slots.
1264
- void (*dealloc)(void* set, const PolicyFunctions& policy, ctrl_t* ctrl,
1265
- void* slot_array, size_t n);
1434
+ // Deallocate the backing store from common.
1435
+ void (*dealloc)(CommonFields& common, const PolicyFunctions& policy);
1266
1436
  };
1267
1437
 
1268
1438
  // ClearBackingArray clears the backing array, either modifying it in place,
@@ -1279,16 +1449,16 @@ void EraseMetaOnly(CommonFields& c, ctrl_t* it, size_t slot_size);
1279
1449
  // function body for raw_hash_set instantiations that have the
1280
1450
  // same slot alignment.
1281
1451
  template <size_t AlignOfSlot>
1282
- ABSL_ATTRIBUTE_NOINLINE void DeallocateStandard(void*,
1283
- const PolicyFunctions& policy,
1284
- ctrl_t* ctrl, void* slot_array,
1285
- size_t n) {
1452
+ ABSL_ATTRIBUTE_NOINLINE void DeallocateStandard(CommonFields& common,
1453
+ const PolicyFunctions& policy) {
1286
1454
  // Unpoison before returning the memory to the allocator.
1287
- SanitizerUnpoisonMemoryRegion(slot_array, policy.slot_size * n);
1455
+ SanitizerUnpoisonMemoryRegion(common.slot_array(),
1456
+ policy.slot_size * common.capacity());
1288
1457
 
1289
1458
  std::allocator<char> alloc;
1290
- Deallocate<AlignOfSlot>(&alloc, ctrl,
1291
- AllocSize(n, policy.slot_size, AlignOfSlot));
1459
+ Deallocate<BackingArrayAlignment(AlignOfSlot)>(
1460
+ &alloc, common.backing_array_start(),
1461
+ common.alloc_size(policy.slot_size, AlignOfSlot));
1292
1462
  }
1293
1463
 
1294
1464
  // For trivially relocatable types we use memcpy directly. This allows us to
@@ -1419,22 +1589,19 @@ class raw_hash_set {
1419
1589
 
1420
1590
  // PRECONDITION: not an end() iterator.
1421
1591
  reference operator*() const {
1422
- ABSL_INTERNAL_ASSERT_IS_FULL(ctrl_, generation(), generation_ptr(),
1423
- "operator*()");
1592
+ AssertIsFull(ctrl_, generation(), generation_ptr(), "operator*()");
1424
1593
  return PolicyTraits::element(slot_);
1425
1594
  }
1426
1595
 
1427
1596
  // PRECONDITION: not an end() iterator.
1428
1597
  pointer operator->() const {
1429
- ABSL_INTERNAL_ASSERT_IS_FULL(ctrl_, generation(), generation_ptr(),
1430
- "operator->");
1598
+ AssertIsFull(ctrl_, generation(), generation_ptr(), "operator->");
1431
1599
  return &operator*();
1432
1600
  }
1433
1601
 
1434
1602
  // PRECONDITION: not an end() iterator.
1435
1603
  iterator& operator++() {
1436
- ABSL_INTERNAL_ASSERT_IS_FULL(ctrl_, generation(), generation_ptr(),
1437
- "operator++");
1604
+ AssertIsFull(ctrl_, generation(), generation_ptr(), "operator++");
1438
1605
  ++ctrl_;
1439
1606
  ++slot_;
1440
1607
  skip_empty_or_deleted();
@@ -1448,9 +1615,10 @@ class raw_hash_set {
1448
1615
  }
1449
1616
 
1450
1617
  friend bool operator==(const iterator& a, const iterator& b) {
1451
- AssertSameContainer(a.ctrl_, b.ctrl_, a.slot_, b.slot_);
1452
1618
  AssertIsValidForComparison(a.ctrl_, a.generation(), a.generation_ptr());
1453
1619
  AssertIsValidForComparison(b.ctrl_, b.generation(), b.generation_ptr());
1620
+ AssertSameContainer(a.ctrl_, b.ctrl_, a.slot_, b.slot_,
1621
+ a.generation_ptr(), b.generation_ptr());
1454
1622
  return a.ctrl_ == b.ctrl_;
1455
1623
  }
1456
1624
  friend bool operator!=(const iterator& a, const iterator& b) {
@@ -1469,7 +1637,7 @@ class raw_hash_set {
1469
1637
  }
1470
1638
  // For end() iterators.
1471
1639
  explicit iterator(const GenerationType* generation_ptr)
1472
- : HashSetIteratorGenerationInfo(generation_ptr) {}
1640
+ : HashSetIteratorGenerationInfo(generation_ptr), ctrl_(nullptr) {}
1473
1641
 
1474
1642
  // Fixes up `ctrl_` to point to a full by advancing it and `slot_` until
1475
1643
  // they reach one.
@@ -1484,7 +1652,9 @@ class raw_hash_set {
1484
1652
  if (ABSL_PREDICT_FALSE(*ctrl_ == ctrl_t::kSentinel)) ctrl_ = nullptr;
1485
1653
  }
1486
1654
 
1487
- ctrl_t* ctrl_ = nullptr;
1655
+ // We use EmptyGroup() for default-constructed iterators so that they can
1656
+ // be distinguished from end iterators, which have nullptr ctrl_.
1657
+ ctrl_t* ctrl_ = EmptyGroup();
1488
1658
  // To avoid uninitialized member warnings, put slot_ in an anonymous union.
1489
1659
  // The member is not initialized on singleton and end iterators.
1490
1660
  union {
@@ -1537,9 +1707,9 @@ class raw_hash_set {
1537
1707
  // Note: can't use `= default` due to non-default noexcept (causes
1538
1708
  // problems for some compilers). NOLINTNEXTLINE
1539
1709
  raw_hash_set() noexcept(
1540
- std::is_nothrow_default_constructible<hasher>::value&&
1541
- std::is_nothrow_default_constructible<key_equal>::value&&
1542
- std::is_nothrow_default_constructible<allocator_type>::value) {}
1710
+ std::is_nothrow_default_constructible<hasher>::value &&
1711
+ std::is_nothrow_default_constructible<key_equal>::value &&
1712
+ std::is_nothrow_default_constructible<allocator_type>::value) {}
1543
1713
 
1544
1714
  ABSL_ATTRIBUTE_NOINLINE explicit raw_hash_set(
1545
1715
  size_t bucket_count, const hasher& hash = hasher(),
@@ -1547,7 +1717,7 @@ class raw_hash_set {
1547
1717
  const allocator_type& alloc = allocator_type())
1548
1718
  : settings_(CommonFields{}, hash, eq, alloc) {
1549
1719
  if (bucket_count) {
1550
- common().capacity_ = NormalizeCapacity(bucket_count);
1720
+ common().set_capacity(NormalizeCapacity(bucket_count));
1551
1721
  initialize_slots();
1552
1722
  }
1553
1723
  }
@@ -1649,7 +1819,9 @@ class raw_hash_set {
1649
1819
 
1650
1820
  raw_hash_set(const raw_hash_set& that, const allocator_type& a)
1651
1821
  : raw_hash_set(0, that.hash_ref(), that.eq_ref(), a) {
1652
- reserve(that.size());
1822
+ const size_t size = that.size();
1823
+ if (size == 0) return;
1824
+ reserve(size);
1653
1825
  // Because the table is guaranteed to be empty, we can do something faster
1654
1826
  // than a full `insert`.
1655
1827
  for (const auto& v : that) {
@@ -1660,14 +1832,14 @@ class raw_hash_set {
1660
1832
  common().maybe_increment_generation_on_insert();
1661
1833
  infoz().RecordInsert(hash, target.probe_length);
1662
1834
  }
1663
- common().size_ = that.size();
1664
- growth_left() -= that.size();
1835
+ common().set_size(size);
1836
+ set_growth_left(growth_left() - size);
1665
1837
  }
1666
1838
 
1667
1839
  ABSL_ATTRIBUTE_NOINLINE raw_hash_set(raw_hash_set&& that) noexcept(
1668
- std::is_nothrow_copy_constructible<hasher>::value&&
1669
- std::is_nothrow_copy_constructible<key_equal>::value&&
1670
- std::is_nothrow_copy_constructible<allocator_type>::value)
1840
+ std::is_nothrow_copy_constructible<hasher>::value &&
1841
+ std::is_nothrow_copy_constructible<key_equal>::value &&
1842
+ std::is_nothrow_copy_constructible<allocator_type>::value)
1671
1843
  : // Hash, equality and allocator are copied instead of moved because
1672
1844
  // `that` must be left valid. If Hash is std::function<Key>, moving it
1673
1845
  // would create a nullptr functor that cannot be called.
@@ -1696,9 +1868,9 @@ class raw_hash_set {
1696
1868
  }
1697
1869
 
1698
1870
  raw_hash_set& operator=(raw_hash_set&& that) noexcept(
1699
- absl::allocator_traits<allocator_type>::is_always_equal::value&&
1700
- std::is_nothrow_move_assignable<hasher>::value&&
1701
- std::is_nothrow_move_assignable<key_equal>::value) {
1871
+ absl::allocator_traits<allocator_type>::is_always_equal::value &&
1872
+ std::is_nothrow_move_assignable<hasher>::value &&
1873
+ std::is_nothrow_move_assignable<key_equal>::value) {
1702
1874
  // TODO(sbenza): We should only use the operations from the noexcept clause
1703
1875
  // to make sure we actually adhere to that contract.
1704
1876
  // NOLINTNEXTLINE: not returning *this for performance.
@@ -1714,30 +1886,36 @@ class raw_hash_set {
1714
1886
 
1715
1887
  // Unpoison before returning the memory to the allocator.
1716
1888
  SanitizerUnpoisonMemoryRegion(slot_array(), sizeof(slot_type) * cap);
1717
- Deallocate<alignof(slot_type)>(
1718
- &alloc_ref(), control(),
1889
+ Deallocate<BackingArrayAlignment(alignof(slot_type))>(
1890
+ &alloc_ref(), common().backing_array_start(),
1719
1891
  AllocSize(cap, sizeof(slot_type), alignof(slot_type)));
1720
1892
 
1721
1893
  infoz().Unregister();
1722
1894
  }
1723
1895
 
1724
- iterator begin() {
1896
+ iterator begin() ABSL_ATTRIBUTE_LIFETIME_BOUND {
1725
1897
  auto it = iterator_at(0);
1726
1898
  it.skip_empty_or_deleted();
1727
1899
  return it;
1728
1900
  }
1729
- iterator end() { return iterator(common().generation_ptr()); }
1901
+ iterator end() ABSL_ATTRIBUTE_LIFETIME_BOUND {
1902
+ return iterator(common().generation_ptr());
1903
+ }
1730
1904
 
1731
- const_iterator begin() const {
1905
+ const_iterator begin() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
1732
1906
  return const_cast<raw_hash_set*>(this)->begin();
1733
1907
  }
1734
- const_iterator end() const { return iterator(common().generation_ptr()); }
1735
- const_iterator cbegin() const { return begin(); }
1736
- const_iterator cend() const { return end(); }
1908
+ const_iterator end() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
1909
+ return iterator(common().generation_ptr());
1910
+ }
1911
+ const_iterator cbegin() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
1912
+ return begin();
1913
+ }
1914
+ const_iterator cend() const ABSL_ATTRIBUTE_LIFETIME_BOUND { return end(); }
1737
1915
 
1738
1916
  bool empty() const { return !size(); }
1739
- size_t size() const { return common().size_; }
1740
- size_t capacity() const { return common().capacity_; }
1917
+ size_t size() const { return common().size(); }
1918
+ size_t capacity() const { return common().capacity(); }
1741
1919
  size_t max_size() const { return (std::numeric_limits<size_t>::max)(); }
1742
1920
 
1743
1921
  ABSL_ATTRIBUTE_REINITIALIZES void clear() {
@@ -1753,10 +1931,10 @@ class raw_hash_set {
1753
1931
  // Already guaranteed to be empty; so nothing to do.
1754
1932
  } else {
1755
1933
  destroy_slots();
1756
- ClearBackingArray(common(), GetPolicyFunctions(),
1757
- /*reuse=*/cap < 128);
1934
+ ClearBackingArray(common(), GetPolicyFunctions(), /*reuse=*/cap < 128);
1758
1935
  }
1759
1936
  common().set_reserved_growth(0);
1937
+ common().set_reservation_size(0);
1760
1938
  }
1761
1939
 
1762
1940
  inline void destroy_slots() {
@@ -1780,7 +1958,7 @@ class raw_hash_set {
1780
1958
  template <class T, RequiresInsertable<T> = 0, class T2 = T,
1781
1959
  typename std::enable_if<IsDecomposable<T2>::value, int>::type = 0,
1782
1960
  T* = nullptr>
1783
- std::pair<iterator, bool> insert(T&& value) {
1961
+ std::pair<iterator, bool> insert(T&& value) ABSL_ATTRIBUTE_LIFETIME_BOUND {
1784
1962
  return emplace(std::forward<T>(value));
1785
1963
  }
1786
1964
 
@@ -1795,13 +1973,11 @@ class raw_hash_set {
1795
1973
  // const char* p = "hello";
1796
1974
  // s.insert(p);
1797
1975
  //
1798
- // TODO(romanp): Once we stop supporting gcc 5.1 and below, replace
1799
- // RequiresInsertable<T> with RequiresInsertable<const T&>.
1800
- // We are hitting this bug: https://godbolt.org/g/1Vht4f.
1801
1976
  template <
1802
- class T, RequiresInsertable<T> = 0,
1977
+ class T, RequiresInsertable<const T&> = 0,
1803
1978
  typename std::enable_if<IsDecomposable<const T&>::value, int>::type = 0>
1804
- std::pair<iterator, bool> insert(const T& value) {
1979
+ std::pair<iterator, bool> insert(const T& value)
1980
+ ABSL_ATTRIBUTE_LIFETIME_BOUND {
1805
1981
  return emplace(value);
1806
1982
  }
1807
1983
 
@@ -1810,7 +1986,8 @@ class raw_hash_set {
1810
1986
  //
1811
1987
  // flat_hash_map<std::string, int> s;
1812
1988
  // s.insert({"abc", 42});
1813
- std::pair<iterator, bool> insert(init_type&& value) {
1989
+ std::pair<iterator, bool> insert(init_type&& value)
1990
+ ABSL_ATTRIBUTE_LIFETIME_BOUND {
1814
1991
  return emplace(std::move(value));
1815
1992
  }
1816
1993
 
@@ -1819,21 +1996,20 @@ class raw_hash_set {
1819
1996
  template <class T, RequiresInsertable<T> = 0, class T2 = T,
1820
1997
  typename std::enable_if<IsDecomposable<T2>::value, int>::type = 0,
1821
1998
  T* = nullptr>
1822
- iterator insert(const_iterator, T&& value) {
1999
+ iterator insert(const_iterator, T&& value) ABSL_ATTRIBUTE_LIFETIME_BOUND {
1823
2000
  return insert(std::forward<T>(value)).first;
1824
2001
  }
1825
2002
 
1826
- // TODO(romanp): Once we stop supporting gcc 5.1 and below, replace
1827
- // RequiresInsertable<T> with RequiresInsertable<const T&>.
1828
- // We are hitting this bug: https://godbolt.org/g/1Vht4f.
1829
2003
  template <
1830
- class T, RequiresInsertable<T> = 0,
2004
+ class T, RequiresInsertable<const T&> = 0,
1831
2005
  typename std::enable_if<IsDecomposable<const T&>::value, int>::type = 0>
1832
- iterator insert(const_iterator, const T& value) {
2006
+ iterator insert(const_iterator,
2007
+ const T& value) ABSL_ATTRIBUTE_LIFETIME_BOUND {
1833
2008
  return insert(value).first;
1834
2009
  }
1835
2010
 
1836
- iterator insert(const_iterator, init_type&& value) {
2011
+ iterator insert(const_iterator,
2012
+ init_type&& value) ABSL_ATTRIBUTE_LIFETIME_BOUND {
1837
2013
  return insert(std::move(value)).first;
1838
2014
  }
1839
2015
 
@@ -1851,7 +2027,7 @@ class raw_hash_set {
1851
2027
  insert(ilist.begin(), ilist.end());
1852
2028
  }
1853
2029
 
1854
- insert_return_type insert(node_type&& node) {
2030
+ insert_return_type insert(node_type&& node) ABSL_ATTRIBUTE_LIFETIME_BOUND {
1855
2031
  if (!node) return {end(), false, node_type()};
1856
2032
  const auto& elem = PolicyTraits::element(CommonAccess::GetSlot(node));
1857
2033
  auto res = PolicyTraits::apply(
@@ -1865,7 +2041,8 @@ class raw_hash_set {
1865
2041
  }
1866
2042
  }
1867
2043
 
1868
- iterator insert(const_iterator, node_type&& node) {
2044
+ iterator insert(const_iterator,
2045
+ node_type&& node) ABSL_ATTRIBUTE_LIFETIME_BOUND {
1869
2046
  auto res = insert(std::move(node));
1870
2047
  node = std::move(res.node);
1871
2048
  return res.position;
@@ -1882,7 +2059,8 @@ class raw_hash_set {
1882
2059
  // m.emplace("abc", "xyz");
1883
2060
  template <class... Args, typename std::enable_if<
1884
2061
  IsDecomposable<Args...>::value, int>::type = 0>
1885
- std::pair<iterator, bool> emplace(Args&&... args) {
2062
+ std::pair<iterator, bool> emplace(Args&&... args)
2063
+ ABSL_ATTRIBUTE_LIFETIME_BOUND {
1886
2064
  return PolicyTraits::apply(EmplaceDecomposable{*this},
1887
2065
  std::forward<Args>(args)...);
1888
2066
  }
@@ -1892,7 +2070,8 @@ class raw_hash_set {
1892
2070
  // destroys.
1893
2071
  template <class... Args, typename std::enable_if<
1894
2072
  !IsDecomposable<Args...>::value, int>::type = 0>
1895
- std::pair<iterator, bool> emplace(Args&&... args) {
2073
+ std::pair<iterator, bool> emplace(Args&&... args)
2074
+ ABSL_ATTRIBUTE_LIFETIME_BOUND {
1896
2075
  alignas(slot_type) unsigned char raw[sizeof(slot_type)];
1897
2076
  slot_type* slot = reinterpret_cast<slot_type*>(&raw);
1898
2077
 
@@ -1902,14 +2081,16 @@ class raw_hash_set {
1902
2081
  }
1903
2082
 
1904
2083
  template <class... Args>
1905
- iterator emplace_hint(const_iterator, Args&&... args) {
2084
+ iterator emplace_hint(const_iterator,
2085
+ Args&&... args) ABSL_ATTRIBUTE_LIFETIME_BOUND {
1906
2086
  return emplace(std::forward<Args>(args)...).first;
1907
2087
  }
1908
2088
 
1909
2089
  // Extension API: support for lazy emplace.
1910
2090
  //
1911
2091
  // Looks up key in the table. If found, returns the iterator to the element.
1912
- // Otherwise calls `f` with one argument of type `raw_hash_set::constructor`.
2092
+ // Otherwise calls `f` with one argument of type `raw_hash_set::constructor`,
2093
+ // and returns an iterator to the new element.
1913
2094
  //
1914
2095
  // `f` must abide by several restrictions:
1915
2096
  // - it MUST call `raw_hash_set::constructor` with arguments as if a
@@ -1952,7 +2133,8 @@ class raw_hash_set {
1952
2133
  };
1953
2134
 
1954
2135
  template <class K = key_type, class F>
1955
- iterator lazy_emplace(const key_arg<K>& key, F&& f) {
2136
+ iterator lazy_emplace(const key_arg<K>& key,
2137
+ F&& f) ABSL_ATTRIBUTE_LIFETIME_BOUND {
1956
2138
  auto res = find_or_prepare_insert(key);
1957
2139
  if (res.second) {
1958
2140
  slot_type* slot = slot_array() + res.first;
@@ -1997,13 +2179,25 @@ class raw_hash_set {
1997
2179
  // This overload is necessary because otherwise erase<K>(const K&) would be
1998
2180
  // a better match if non-const iterator is passed as an argument.
1999
2181
  void erase(iterator it) {
2000
- ABSL_INTERNAL_ASSERT_IS_FULL(it.ctrl_, it.generation(), it.generation_ptr(),
2001
- "erase()");
2182
+ AssertIsFull(it.ctrl_, it.generation(), it.generation_ptr(), "erase()");
2002
2183
  PolicyTraits::destroy(&alloc_ref(), it.slot_);
2003
2184
  erase_meta_only(it);
2004
2185
  }
2005
2186
 
2006
- iterator erase(const_iterator first, const_iterator last) {
2187
+ iterator erase(const_iterator first,
2188
+ const_iterator last) ABSL_ATTRIBUTE_LIFETIME_BOUND {
2189
+ // We check for empty first because ClearBackingArray requires that
2190
+ // capacity() > 0 as a precondition.
2191
+ if (empty()) return end();
2192
+ if (first == begin() && last == end()) {
2193
+ // TODO(ezb): we access control bytes in destroy_slots so it could make
2194
+ // sense to combine destroy_slots and ClearBackingArray to avoid cache
2195
+ // misses when the table is large. Note that we also do this in clear().
2196
+ destroy_slots();
2197
+ ClearBackingArray(common(), GetPolicyFunctions(), /*reuse=*/true);
2198
+ common().set_reserved_growth(common().reservation_size());
2199
+ return end();
2200
+ }
2007
2201
  while (first != last) {
2008
2202
  erase(first++);
2009
2203
  }
@@ -2032,9 +2226,8 @@ class raw_hash_set {
2032
2226
  }
2033
2227
 
2034
2228
  node_type extract(const_iterator position) {
2035
- ABSL_INTERNAL_ASSERT_IS_FULL(position.inner_.ctrl_,
2036
- position.inner_.generation(),
2037
- position.inner_.generation_ptr(), "extract()");
2229
+ AssertIsFull(position.inner_.ctrl_, position.inner_.generation(),
2230
+ position.inner_.generation_ptr(), "extract()");
2038
2231
  auto node =
2039
2232
  CommonAccess::Transfer<node_type>(alloc_ref(), position.inner_.slot_);
2040
2233
  erase_meta_only(position);
@@ -2064,8 +2257,7 @@ class raw_hash_set {
2064
2257
  void rehash(size_t n) {
2065
2258
  if (n == 0 && capacity() == 0) return;
2066
2259
  if (n == 0 && size() == 0) {
2067
- ClearBackingArray(common(), GetPolicyFunctions(),
2068
- /*reuse=*/false);
2260
+ ClearBackingArray(common(), GetPolicyFunctions(), /*reuse=*/false);
2069
2261
  return;
2070
2262
  }
2071
2263
 
@@ -2092,6 +2284,7 @@ class raw_hash_set {
2092
2284
  infoz().RecordReservation(n);
2093
2285
  }
2094
2286
  common().reset_reserved_growth(n);
2287
+ common().set_reservation_size(n);
2095
2288
  }
2096
2289
 
2097
2290
  // Extension API: support for heterogeneous keys.
@@ -2117,12 +2310,12 @@ class raw_hash_set {
2117
2310
  void prefetch(const key_arg<K>& key) const {
2118
2311
  (void)key;
2119
2312
  // Avoid probing if we won't be able to prefetch the addresses received.
2120
- #ifdef ABSL_INTERNAL_HAVE_PREFETCH
2313
+ #ifdef ABSL_HAVE_PREFETCH
2121
2314
  prefetch_heap_block();
2122
2315
  auto seq = probe(common(), hash_ref()(key));
2123
- base_internal::PrefetchT0(control() + seq.offset());
2124
- base_internal::PrefetchT0(slot_array() + seq.offset());
2125
- #endif // ABSL_INTERNAL_HAVE_PREFETCH
2316
+ PrefetchToLocalCache(control() + seq.offset());
2317
+ PrefetchToLocalCache(slot_array() + seq.offset());
2318
+ #endif // ABSL_HAVE_PREFETCH
2126
2319
  }
2127
2320
 
2128
2321
  // The API of find() has two extensions.
@@ -2133,7 +2326,8 @@ class raw_hash_set {
2133
2326
  // 2. The type of the key argument doesn't have to be key_type. This is so
2134
2327
  // called heterogeneous key support.
2135
2328
  template <class K = key_type>
2136
- iterator find(const key_arg<K>& key, size_t hash) {
2329
+ iterator find(const key_arg<K>& key,
2330
+ size_t hash) ABSL_ATTRIBUTE_LIFETIME_BOUND {
2137
2331
  auto seq = probe(common(), hash);
2138
2332
  slot_type* slot_ptr = slot_array();
2139
2333
  const ctrl_t* ctrl = control();
@@ -2151,17 +2345,19 @@ class raw_hash_set {
2151
2345
  }
2152
2346
  }
2153
2347
  template <class K = key_type>
2154
- iterator find(const key_arg<K>& key) {
2348
+ iterator find(const key_arg<K>& key) ABSL_ATTRIBUTE_LIFETIME_BOUND {
2155
2349
  prefetch_heap_block();
2156
2350
  return find(key, hash_ref()(key));
2157
2351
  }
2158
2352
 
2159
2353
  template <class K = key_type>
2160
- const_iterator find(const key_arg<K>& key, size_t hash) const {
2354
+ const_iterator find(const key_arg<K>& key,
2355
+ size_t hash) const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2161
2356
  return const_cast<raw_hash_set*>(this)->find(key, hash);
2162
2357
  }
2163
2358
  template <class K = key_type>
2164
- const_iterator find(const key_arg<K>& key) const {
2359
+ const_iterator find(const key_arg<K>& key) const
2360
+ ABSL_ATTRIBUTE_LIFETIME_BOUND {
2165
2361
  prefetch_heap_block();
2166
2362
  return find(key, hash_ref()(key));
2167
2363
  }
@@ -2172,14 +2368,15 @@ class raw_hash_set {
2172
2368
  }
2173
2369
 
2174
2370
  template <class K = key_type>
2175
- std::pair<iterator, iterator> equal_range(const key_arg<K>& key) {
2371
+ std::pair<iterator, iterator> equal_range(const key_arg<K>& key)
2372
+ ABSL_ATTRIBUTE_LIFETIME_BOUND {
2176
2373
  auto it = find(key);
2177
2374
  if (it != end()) return {it, std::next(it)};
2178
2375
  return {it, it};
2179
2376
  }
2180
2377
  template <class K = key_type>
2181
2378
  std::pair<const_iterator, const_iterator> equal_range(
2182
- const key_arg<K>& key) const {
2379
+ const key_arg<K>& key) const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2183
2380
  auto it = find(key);
2184
2381
  if (it != end()) return {it, std::next(it)};
2185
2382
  return {it, it};
@@ -2313,8 +2510,8 @@ class raw_hash_set {
2313
2510
  assert(IsValidCapacity(new_capacity));
2314
2511
  auto* old_ctrl = control();
2315
2512
  auto* old_slots = slot_array();
2316
- const size_t old_capacity = common().capacity_;
2317
- common().capacity_ = new_capacity;
2513
+ const size_t old_capacity = common().capacity();
2514
+ common().set_capacity(new_capacity);
2318
2515
  initialize_slots();
2319
2516
 
2320
2517
  auto* new_slots = slot_array();
@@ -2333,8 +2530,8 @@ class raw_hash_set {
2333
2530
  if (old_capacity) {
2334
2531
  SanitizerUnpoisonMemoryRegion(old_slots,
2335
2532
  sizeof(slot_type) * old_capacity);
2336
- Deallocate<alignof(slot_type)>(
2337
- &alloc_ref(), old_ctrl,
2533
+ Deallocate<BackingArrayAlignment(alignof(slot_type))>(
2534
+ &alloc_ref(), old_ctrl - ControlOffset(),
2338
2535
  AllocSize(old_capacity, sizeof(slot_type), alignof(slot_type)));
2339
2536
  }
2340
2537
  infoz().RecordRehash(total_probe_length);
@@ -2357,8 +2554,8 @@ class raw_hash_set {
2357
2554
  void rehash_and_grow_if_necessary() {
2358
2555
  const size_t cap = capacity();
2359
2556
  if (cap > Group::kWidth &&
2360
- // Do these calcuations in 64-bit to avoid overflow.
2361
- size() * uint64_t{32} <= cap* uint64_t{25}) {
2557
+ // Do these calculations in 64-bit to avoid overflow.
2558
+ size() * uint64_t{32} <= cap * uint64_t{25}) {
2362
2559
  // Squash DELETED without growing if there is enough capacity.
2363
2560
  //
2364
2561
  // Rehash in place if the current size is <= 25/32 of capacity.
@@ -2481,8 +2678,8 @@ class raw_hash_set {
2481
2678
  rehash_and_grow_if_necessary();
2482
2679
  target = find_first_non_full(common(), hash);
2483
2680
  }
2484
- ++common().size_;
2485
- growth_left() -= IsEmpty(control()[target.offset]);
2681
+ common().set_size(common().size() + 1);
2682
+ set_growth_left(growth_left() - IsEmpty(control()[target.offset]));
2486
2683
  SetCtrl(common(), target.offset, H2(hash), sizeof(slot_type));
2487
2684
  common().maybe_increment_generation_on_insert();
2488
2685
  infoz().RecordInsert(hash, target.probe_length);
@@ -2507,10 +2704,10 @@ class raw_hash_set {
2507
2704
  "constructed value does not match the lookup key");
2508
2705
  }
2509
2706
 
2510
- iterator iterator_at(size_t i) {
2707
+ iterator iterator_at(size_t i) ABSL_ATTRIBUTE_LIFETIME_BOUND {
2511
2708
  return {control() + i, slot_array() + i, common().generation_ptr()};
2512
2709
  }
2513
- const_iterator iterator_at(size_t i) const {
2710
+ const_iterator iterator_at(size_t i) const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2514
2711
  return {control() + i, slot_array() + i, common().generation_ptr()};
2515
2712
  }
2516
2713
 
@@ -2527,19 +2724,24 @@ class raw_hash_set {
2527
2724
  // side-effect.
2528
2725
  //
2529
2726
  // See `CapacityToGrowth()`.
2530
- size_t& growth_left() { return common().growth_left(); }
2531
-
2532
- // Prefetch the heap-allocated memory region to resolve potential TLB misses.
2533
- // This is intended to overlap with execution of calculating the hash for a
2534
- // key.
2535
- void prefetch_heap_block() const { base_internal::PrefetchT2(control()); }
2727
+ size_t growth_left() const { return common().growth_left(); }
2728
+ void set_growth_left(size_t gl) { return common().set_growth_left(gl); }
2729
+
2730
+ // Prefetch the heap-allocated memory region to resolve potential TLB and
2731
+ // cache misses. This is intended to overlap with execution of calculating the
2732
+ // hash for a key.
2733
+ void prefetch_heap_block() const {
2734
+ #if ABSL_HAVE_BUILTIN(__builtin_prefetch) || defined(__GNUC__)
2735
+ __builtin_prefetch(control(), 0, 1);
2736
+ #endif
2737
+ }
2536
2738
 
2537
2739
  CommonFields& common() { return settings_.template get<0>(); }
2538
2740
  const CommonFields& common() const { return settings_.template get<0>(); }
2539
2741
 
2540
- ctrl_t* control() const { return common().control_; }
2742
+ ctrl_t* control() const { return common().control(); }
2541
2743
  slot_type* slot_array() const {
2542
- return static_cast<slot_type*>(common().slots_);
2744
+ return static_cast<slot_type*>(common().slot_array());
2543
2745
  }
2544
2746
  HashtablezInfoHandle& infoz() { return common().infoz(); }
2545
2747
 
@@ -2565,16 +2767,16 @@ class raw_hash_set {
2565
2767
  static_cast<slot_type*>(src));
2566
2768
  }
2567
2769
  // Note: dealloc_fn will only be used if we have a non-standard allocator.
2568
- static void dealloc_fn(void* set, const PolicyFunctions&, ctrl_t* ctrl,
2569
- void* slot_mem, size_t n) {
2570
- auto* h = static_cast<raw_hash_set*>(set);
2770
+ static void dealloc_fn(CommonFields& common, const PolicyFunctions&) {
2771
+ auto* set = reinterpret_cast<raw_hash_set*>(&common);
2571
2772
 
2572
2773
  // Unpoison before returning the memory to the allocator.
2573
- SanitizerUnpoisonMemoryRegion(slot_mem, sizeof(slot_type) * n);
2774
+ SanitizerUnpoisonMemoryRegion(common.slot_array(),
2775
+ sizeof(slot_type) * common.capacity());
2574
2776
 
2575
- Deallocate<alignof(slot_type)>(
2576
- &h->alloc_ref(), ctrl,
2577
- AllocSize(n, sizeof(slot_type), alignof(slot_type)));
2777
+ Deallocate<BackingArrayAlignment(alignof(slot_type))>(
2778
+ &set->alloc_ref(), common.backing_array_start(),
2779
+ common.alloc_size(sizeof(slot_type), alignof(slot_type)));
2578
2780
  }
2579
2781
 
2580
2782
  static const PolicyFunctions& GetPolicyFunctions() {
@@ -2680,6 +2882,5 @@ ABSL_NAMESPACE_END
2680
2882
  } // namespace absl
2681
2883
 
2682
2884
  #undef ABSL_SWISSTABLE_ENABLE_GENERATIONS
2683
- #undef ABSL_INTERNAL_ASSERT_IS_FULL
2684
2885
 
2685
2886
  #endif // ABSL_CONTAINER_INTERNAL_RAW_HASH_SET_H_