grpc 1.42.0 → 1.43.1

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

Potentially problematic release.


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

Files changed (739) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +85 -34
  3. data/include/grpc/event_engine/event_engine.h +37 -13
  4. data/include/grpc/event_engine/internal/memory_allocator_impl.h +1 -31
  5. data/include/grpc/event_engine/memory_allocator.h +27 -11
  6. data/include/grpc/event_engine/memory_request.h +57 -0
  7. data/include/grpc/grpc_security.h +276 -145
  8. data/include/grpc/grpc_security_constants.h +1 -14
  9. data/include/grpc/impl/codegen/port_platform.h +7 -3
  10. data/src/core/ext/filters/client_channel/backend_metric.cc +6 -7
  11. data/src/core/ext/filters/client_channel/backend_metric.h +3 -2
  12. data/src/core/ext/filters/client_channel/client_channel.cc +81 -40
  13. data/src/core/ext/filters/client_channel/client_channel.h +5 -4
  14. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +1 -2
  15. data/src/core/ext/filters/client_channel/dynamic_filters.cc +4 -4
  16. data/src/core/ext/filters/client_channel/health/health_check_client.h +1 -1
  17. data/src/core/ext/filters/client_channel/http_connect_handshaker.cc +12 -14
  18. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +1 -2
  19. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc +1 -2
  20. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +2 -2
  21. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +2 -3
  22. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +27 -80
  23. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +82 -34
  24. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +47 -91
  25. data/src/core/ext/filters/client_channel/lb_policy.h +75 -59
  26. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +3 -3
  27. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +2 -2
  28. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +8 -12
  29. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +3 -3
  30. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +6 -12
  31. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +222 -294
  32. data/src/core/ext/filters/client_channel/resolver_registry.cc +6 -7
  33. data/src/core/ext/filters/client_channel/resolver_registry.h +1 -2
  34. data/src/core/ext/filters/client_channel/subchannel.cc +4 -4
  35. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +1 -1
  36. data/src/core/ext/filters/http/client/http_client_filter.cc +14 -30
  37. data/src/core/ext/filters/http/http_filters_plugin.cc +3 -5
  38. data/src/core/ext/filters/http/server/http_server_filter.cc +11 -28
  39. data/src/core/ext/filters/server_config_selector/server_config_selector.cc +67 -0
  40. data/src/core/ext/filters/server_config_selector/server_config_selector.h +70 -0
  41. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc +265 -0
  42. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.h +32 -0
  43. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +4 -20
  44. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +0 -2
  45. data/src/core/ext/transport/chttp2/client/insecure/channel_create.cc +8 -5
  46. data/src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc +11 -14
  47. data/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc +6 -3
  48. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +54 -79
  49. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc +2 -3
  50. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc +9 -13
  51. data/src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc +6 -6
  52. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +53 -62
  53. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +1 -2
  54. data/src/core/ext/transport/chttp2/transport/context_list.cc +2 -3
  55. data/src/core/ext/transport/chttp2/transport/context_list.h +2 -3
  56. data/src/core/ext/transport/chttp2/transport/flow_control.cc +8 -8
  57. data/src/core/ext/transport/chttp2/transport/flow_control.h +2 -2
  58. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +83 -19
  59. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +33 -1
  60. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +66 -92
  61. data/src/core/ext/transport/chttp2/transport/internal.h +8 -4
  62. data/src/core/ext/transport/inproc/inproc_transport.cc +16 -7
  63. data/src/core/ext/transport/inproc/inproc_transport.h +1 -1
  64. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +197 -165
  65. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +2 -0
  66. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +41 -0
  67. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +18 -0
  68. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +26 -2
  69. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +7 -0
  70. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +107 -82
  71. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +2 -0
  72. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +188 -160
  73. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +2 -0
  74. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +35 -22
  75. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +2 -0
  76. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +253 -218
  77. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +2 -0
  78. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +16 -5
  79. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +2 -0
  80. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +36 -25
  81. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +2 -0
  82. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +56 -39
  83. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +2 -0
  84. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +16 -5
  85. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +2 -0
  86. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +162 -128
  87. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +2 -0
  88. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +51 -36
  89. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +2 -0
  90. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +15 -4
  91. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +2 -0
  92. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +25 -13
  93. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +2 -0
  94. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +114 -90
  95. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +2 -0
  96. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +89 -71
  97. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +2 -0
  98. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +17 -6
  99. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +2 -0
  100. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +117 -93
  101. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +2 -0
  102. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +13 -2
  103. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +2 -0
  104. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +21 -9
  105. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +2 -0
  106. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +18 -7
  107. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +2 -0
  108. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +22 -11
  109. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +2 -0
  110. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +17 -6
  111. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +2 -0
  112. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +41 -27
  113. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +2 -0
  114. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +59 -43
  115. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +2 -0
  116. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +58 -43
  117. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +2 -0
  118. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +15 -4
  119. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +2 -0
  120. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +73 -57
  121. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +2 -0
  122. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +81 -64
  123. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +2 -0
  124. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +25 -14
  125. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +2 -0
  126. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +19 -7
  127. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +2 -0
  128. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +63 -45
  129. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +2 -0
  130. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +66 -47
  131. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +2 -0
  132. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +93 -75
  133. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +2 -0
  134. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +41 -28
  135. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +2 -0
  136. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +503 -440
  137. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +2 -0
  138. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +26 -13
  139. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +2 -0
  140. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +21 -9
  141. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +2 -0
  142. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +13 -2
  143. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +2 -0
  144. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +35 -20
  145. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +2 -0
  146. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +44 -31
  147. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +2 -0
  148. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +22 -11
  149. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +2 -0
  150. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +210 -181
  151. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +2 -0
  152. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c +7 -0
  153. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +5 -3
  154. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +64 -48
  155. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +2 -0
  156. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +33 -20
  157. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +2 -0
  158. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +81 -65
  159. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +2 -0
  160. data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.c +12 -1
  161. data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.h +2 -0
  162. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +12 -1
  163. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +2 -0
  164. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +75 -58
  165. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +2 -0
  166. data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.c +12 -1
  167. data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.h +2 -0
  168. data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.c +12 -1
  169. data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.h +2 -0
  170. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +25 -13
  171. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +2 -0
  172. data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c +12 -1
  173. data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h +2 -0
  174. data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c +12 -1
  175. data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h +2 -0
  176. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +61 -46
  177. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +2 -0
  178. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +26 -12
  179. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +2 -0
  180. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +22 -10
  181. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +2 -0
  182. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +17 -6
  183. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +2 -0
  184. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +16 -5
  185. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +2 -0
  186. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +15 -4
  187. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +2 -0
  188. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +27 -14
  189. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +2 -0
  190. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +25 -13
  191. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +2 -0
  192. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +20 -8
  193. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +2 -0
  194. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +30 -17
  195. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +2 -0
  196. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +38 -21
  197. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +2 -0
  198. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +41 -26
  199. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +2 -0
  200. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.c +7 -0
  201. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.h +2 -0
  202. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +17 -5
  203. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +2 -0
  204. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +22 -9
  205. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +2 -0
  206. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +15 -4
  207. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +2 -0
  208. data/src/core/ext/upb-generated/google/api/annotations.upb.c +20 -0
  209. data/src/core/ext/upb-generated/google/api/annotations.upb.h +7 -0
  210. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +116 -93
  211. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +2 -0
  212. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/eval.upb.c +102 -0
  213. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/eval.upb.h +306 -0
  214. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/explain.upb.c +56 -0
  215. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/explain.upb.h +135 -0
  216. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +122 -98
  217. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +2 -0
  218. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/value.upb.c +115 -0
  219. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/value.upb.h +371 -0
  220. data/src/core/ext/upb-generated/google/api/http.upb.c +35 -22
  221. data/src/core/ext/upb-generated/google/api/http.upb.h +2 -0
  222. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +14 -3
  223. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +2 -0
  224. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +247 -210
  225. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +2 -0
  226. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +14 -3
  227. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +2 -0
  228. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +12 -1
  229. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +2 -0
  230. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +37 -23
  231. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +2 -0
  232. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +14 -3
  233. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +2 -0
  234. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +37 -18
  235. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +2 -0
  236. data/src/core/ext/upb-generated/google/rpc/status.upb.c +17 -6
  237. data/src/core/ext/upb-generated/google/rpc/status.upb.h +2 -0
  238. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +26 -14
  239. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +2 -0
  240. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +105 -83
  241. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +2 -0
  242. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +20 -8
  243. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +2 -0
  244. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +16 -4
  245. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +2 -0
  246. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +65 -47
  247. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +34 -36
  248. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +26 -13
  249. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +2 -0
  250. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +67 -7
  251. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +27 -0
  252. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +27 -3
  253. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +7 -0
  254. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +19 -0
  255. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +7 -0
  256. data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +27 -3
  257. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +7 -0
  258. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +26 -2
  259. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +7 -0
  260. data/src/core/ext/upb-generated/validate/validate.upb.c +320 -251
  261. data/src/core/ext/upb-generated/validate/validate.upb.h +20 -0
  262. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +54 -9
  263. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +17 -0
  264. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +13 -2
  265. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +2 -0
  266. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +24 -12
  267. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +2 -0
  268. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +19 -7
  269. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +2 -0
  270. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +18 -7
  271. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +2 -0
  272. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +27 -15
  273. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +2 -0
  274. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +18 -7
  275. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +2 -0
  276. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +28 -15
  277. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +2 -0
  278. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +16 -5
  279. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +2 -0
  280. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +2 -49
  281. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c +2 -2
  282. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c +2 -7
  283. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +2 -35
  284. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +2 -41
  285. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +2 -11
  286. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +2 -55
  287. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c +2 -7
  288. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +2 -7
  289. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +2 -19
  290. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c +2 -7
  291. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +2 -53
  292. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +2 -15
  293. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c +2 -7
  294. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +2 -9
  295. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c +2 -33
  296. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +2 -21
  297. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c +2 -7
  298. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +2 -33
  299. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c +2 -7
  300. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c +2 -9
  301. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +2 -7
  302. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +2 -7
  303. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c +2 -7
  304. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c +2 -13
  305. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +2 -17
  306. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c +2 -15
  307. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c +2 -7
  308. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +2 -17
  309. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +2 -19
  310. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +2 -7
  311. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +2 -9
  312. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c +2 -21
  313. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c +2 -23
  314. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +2 -11
  315. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +2 -111
  316. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c +2 -11
  317. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c +2 -9
  318. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +2 -7
  319. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +2 -15
  320. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +2 -11
  321. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +2 -7
  322. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +2 -43
  323. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +2 -2
  324. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +2 -17
  325. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +2 -11
  326. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +2 -17
  327. data/src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.c +2 -7
  328. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c +2 -7
  329. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +2 -19
  330. data/src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.c +2 -7
  331. data/src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.c +2 -7
  332. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c +2 -9
  333. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c +2 -7
  334. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c +2 -7
  335. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +2 -15
  336. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c +2 -13
  337. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c +2 -9
  338. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c +2 -7
  339. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c +2 -7
  340. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c +2 -7
  341. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +2 -11
  342. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c +2 -9
  343. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c +2 -9
  344. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c +2 -11
  345. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c +2 -19
  346. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c +2 -15
  347. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c +2 -2
  348. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c +2 -9
  349. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c +2 -11
  350. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c +2 -7
  351. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c +2 -2
  352. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.c +2 -11
  353. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c +2 -7
  354. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +2 -59
  355. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c +2 -7
  356. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c +2 -7
  357. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c +2 -13
  358. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c +2 -7
  359. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c +2 -23
  360. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c +2 -7
  361. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c +2 -11
  362. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c +2 -7
  363. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c +2 -2
  364. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c +2 -7
  365. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c +2 -7
  366. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c +2 -51
  367. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.c +2 -13
  368. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.c +2 -7
  369. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.c +2 -9
  370. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.c +2 -9
  371. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.c +2 -7
  372. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.c +2 -9
  373. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.c +2 -7
  374. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +2 -7
  375. data/src/core/ext/xds/certificate_provider_registry.cc +1 -1
  376. data/src/core/ext/xds/certificate_provider_store.h +1 -1
  377. data/src/core/ext/xds/xds_api.cc +409 -304
  378. data/src/core/ext/xds/xds_api.h +3 -1
  379. data/src/core/ext/xds/xds_bootstrap.cc +6 -3
  380. data/src/core/ext/xds/xds_certificate_provider.h +1 -2
  381. data/src/core/ext/xds/xds_channel_stack_modifier.cc +3 -4
  382. data/src/core/ext/xds/xds_client.cc +395 -291
  383. data/src/core/ext/xds/xds_client.h +47 -38
  384. data/src/core/ext/xds/xds_routing.cc +247 -0
  385. data/src/core/ext/xds/xds_routing.h +98 -0
  386. data/src/core/ext/xds/xds_server_config_fetcher.cc +975 -261
  387. data/src/core/lib/avl/avl.h +389 -88
  388. data/src/core/lib/backoff/backoff.cc +2 -2
  389. data/src/core/lib/channel/channel_args.cc +17 -17
  390. data/src/core/lib/channel/channel_args.h +11 -10
  391. data/src/core/lib/channel/channel_args_preconditioning.cc +47 -0
  392. data/src/core/lib/channel/channel_args_preconditioning.h +62 -0
  393. data/src/core/lib/channel/channel_stack_builder.cc +0 -2
  394. data/src/core/lib/channel/channel_trace.cc +6 -6
  395. data/src/core/lib/channel/channelz.cc +1 -1
  396. data/src/core/lib/compression/compression_args.cc +7 -5
  397. data/src/core/lib/compression/compression_args.h +6 -4
  398. data/src/core/lib/config/core_configuration.cc +3 -1
  399. data/src/core/lib/config/core_configuration.h +11 -0
  400. data/src/core/lib/debug/trace.h +2 -2
  401. data/src/core/lib/event_engine/{endpoint_config.cc → channel_args_endpoint_config.cc} +2 -1
  402. data/src/core/lib/event_engine/{endpoint_config_internal.h → channel_args_endpoint_config.h} +3 -3
  403. data/src/core/lib/event_engine/event_engine.cc +0 -13
  404. data/src/core/lib/event_engine/event_engine_factory.cc +49 -0
  405. data/src/core/lib/event_engine/event_engine_factory.h +33 -0
  406. data/src/core/lib/event_engine/memory_allocator.cc +70 -0
  407. data/src/core/lib/gpr/tls.h +6 -0
  408. data/src/core/lib/gprpp/cpp_impl_of.h +45 -0
  409. data/src/core/lib/gprpp/global_config_env.cc +7 -7
  410. data/src/core/lib/gprpp/global_config_env.h +2 -2
  411. data/src/core/lib/gprpp/manual_constructor.h +2 -3
  412. data/src/core/lib/gprpp/orphanable.h +1 -1
  413. data/src/core/lib/gprpp/ref_counted.h +1 -1
  414. data/src/core/lib/gprpp/ref_counted_ptr.h +2 -4
  415. data/src/core/lib/gprpp/status_helper.h +1 -1
  416. data/src/core/lib/gprpp/table.h +13 -1
  417. data/src/core/lib/http/httpcli.cc +30 -26
  418. data/src/core/lib/http/httpcli.h +14 -12
  419. data/src/core/lib/iomgr/buffer_list.cc +9 -9
  420. data/src/core/lib/iomgr/buffer_list.h +13 -13
  421. data/src/core/lib/iomgr/call_combiner.cc +2 -3
  422. data/src/core/lib/iomgr/endpoint.h +0 -1
  423. data/src/core/lib/iomgr/endpoint_cfstream.cc +7 -24
  424. data/src/core/lib/iomgr/endpoint_cfstream.h +4 -4
  425. data/src/core/lib/iomgr/endpoint_pair_posix.cc +9 -11
  426. data/src/core/lib/iomgr/endpoint_pair_windows.cc +5 -14
  427. data/src/core/lib/iomgr/event_engine/endpoint.cc +2 -3
  428. data/src/core/lib/iomgr/event_engine/iomgr.cc +5 -25
  429. data/src/core/lib/iomgr/event_engine/resolver.cc +3 -2
  430. data/src/core/lib/iomgr/event_engine/tcp.cc +7 -5
  431. data/src/core/lib/iomgr/event_engine/timer.cc +4 -3
  432. data/src/core/lib/iomgr/exec_ctx.h +11 -11
  433. data/src/core/lib/iomgr/executor.cc +12 -15
  434. data/src/core/lib/iomgr/executor.h +1 -1
  435. data/src/core/lib/iomgr/tcp_client.cc +2 -4
  436. data/src/core/lib/iomgr/tcp_client.h +1 -3
  437. data/src/core/lib/iomgr/tcp_client_cfstream.cc +1 -9
  438. data/src/core/lib/iomgr/tcp_client_custom.cc +4 -10
  439. data/src/core/lib/iomgr/tcp_client_posix.cc +7 -23
  440. data/src/core/lib/iomgr/tcp_client_posix.h +3 -4
  441. data/src/core/lib/iomgr/tcp_client_windows.cc +1 -10
  442. data/src/core/lib/iomgr/tcp_custom.cc +9 -36
  443. data/src/core/lib/iomgr/tcp_custom.h +0 -1
  444. data/src/core/lib/iomgr/tcp_posix.cc +28 -33
  445. data/src/core/lib/iomgr/tcp_posix.h +1 -3
  446. data/src/core/lib/iomgr/tcp_server.cc +4 -6
  447. data/src/core/lib/iomgr/tcp_server.h +6 -8
  448. data/src/core/lib/iomgr/tcp_server_custom.cc +5 -15
  449. data/src/core/lib/iomgr/tcp_server_posix.cc +18 -22
  450. data/src/core/lib/iomgr/tcp_server_utils_posix.h +19 -18
  451. data/src/core/lib/iomgr/tcp_server_windows.cc +5 -12
  452. data/src/core/lib/iomgr/tcp_windows.cc +2 -7
  453. data/src/core/lib/iomgr/tcp_windows.h +1 -2
  454. data/src/core/lib/iomgr/unix_sockets_posix.cc +1 -1
  455. data/src/core/lib/iomgr/unix_sockets_posix.h +1 -1
  456. data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +1 -1
  457. data/src/core/lib/iomgr/work_serializer.cc +115 -44
  458. data/src/core/lib/iomgr/work_serializer.h +16 -4
  459. data/src/core/lib/json/json_reader.cc +83 -35
  460. data/src/core/lib/json/json_util.cc +1 -1
  461. data/src/core/lib/promise/activity.cc +115 -0
  462. data/src/core/lib/promise/activity.h +499 -0
  463. data/src/core/lib/promise/context.h +86 -0
  464. data/src/core/lib/promise/detail/basic_seq.h +407 -0
  465. data/src/core/lib/promise/detail/promise_factory.h +189 -0
  466. data/src/core/lib/promise/detail/promise_like.h +85 -0
  467. data/src/core/lib/promise/detail/status.h +44 -0
  468. data/src/core/lib/promise/detail/switch.h +1455 -0
  469. data/src/core/lib/promise/exec_ctx_wakeup_scheduler.h +48 -0
  470. data/src/core/lib/promise/loop.h +108 -0
  471. data/src/core/lib/promise/map.h +88 -0
  472. data/src/core/lib/promise/poll.h +60 -0
  473. data/src/core/lib/promise/race.h +84 -0
  474. data/src/core/lib/promise/seq.h +71 -0
  475. data/src/core/lib/resource_quota/api.cc +108 -0
  476. data/src/core/lib/resource_quota/api.h +41 -0
  477. data/src/core/lib/resource_quota/memory_quota.cc +454 -0
  478. data/src/core/lib/resource_quota/memory_quota.h +421 -0
  479. data/src/core/lib/resource_quota/resource_quota.cc +33 -0
  480. data/src/core/lib/resource_quota/resource_quota.h +58 -0
  481. data/src/core/lib/resource_quota/thread_quota.cc +43 -0
  482. data/src/core/lib/resource_quota/thread_quota.h +57 -0
  483. data/src/core/lib/resource_quota/trace.cc +19 -0
  484. data/src/core/lib/resource_quota/trace.h +24 -0
  485. data/src/core/lib/security/authorization/evaluate_args.cc +13 -19
  486. data/src/core/lib/security/authorization/evaluate_args.h +2 -1
  487. data/src/core/lib/security/authorization/sdk_server_authz_filter.cc +3 -1
  488. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +11 -12
  489. data/src/core/lib/security/credentials/external/external_account_credentials.cc +9 -10
  490. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +3 -4
  491. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +4 -6
  492. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +1 -1
  493. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +4 -6
  494. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +18 -22
  495. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +11 -12
  496. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +7 -8
  497. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.cc +201 -0
  498. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +106 -0
  499. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +11 -90
  500. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +19 -82
  501. data/src/core/lib/security/credentials/tls/tls_credentials.cc +21 -10
  502. data/src/core/lib/security/credentials/xds/xds_credentials.cc +28 -33
  503. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +3 -3
  504. data/src/core/lib/security/security_connector/alts/alts_security_connector.h +2 -2
  505. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +3 -4
  506. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +2 -2
  507. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +7 -7
  508. data/src/core/lib/security/security_connector/load_system_roots_linux.cc +1 -2
  509. data/src/core/lib/security/security_connector/local/local_security_connector.cc +4 -1
  510. data/src/core/lib/security/security_connector/ssl_utils.cc +10 -2
  511. data/src/core/lib/security/security_connector/ssl_utils.h +1 -1
  512. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +344 -195
  513. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +64 -41
  514. data/src/core/lib/security/transport/security_handshaker.cc +2 -2
  515. data/src/core/lib/slice/percent_encoding.cc +30 -86
  516. data/src/core/lib/slice/percent_encoding.h +5 -11
  517. data/src/core/lib/slice/slice.cc +7 -7
  518. data/src/core/lib/slice/slice.h +341 -0
  519. data/src/core/lib/slice/slice_buffer.cc +4 -0
  520. data/src/core/lib/slice/slice_intern.cc +1 -1
  521. data/src/core/lib/slice/slice_refcount.h +5 -1
  522. data/src/core/lib/slice/slice_refcount_base.h +19 -11
  523. data/src/core/lib/slice/static_slice.cc +331 -483
  524. data/src/core/lib/slice/static_slice.h +101 -132
  525. data/src/core/lib/surface/builtins.cc +1 -1
  526. data/src/core/lib/surface/call.cc +85 -59
  527. data/src/core/lib/surface/channel.cc +4 -29
  528. data/src/core/lib/surface/channel.h +2 -12
  529. data/src/core/lib/surface/completion_queue.cc +2 -2
  530. data/src/core/lib/surface/init.cc +0 -1
  531. data/src/core/lib/surface/lame_client.cc +24 -17
  532. data/src/core/lib/surface/server.cc +22 -22
  533. data/src/core/lib/surface/server.h +8 -9
  534. data/src/core/lib/surface/validate_metadata.cc +2 -2
  535. data/src/core/lib/surface/version.cc +2 -2
  536. data/src/core/lib/transport/bdp_estimator.cc +1 -1
  537. data/src/core/lib/transport/byte_stream.cc +4 -0
  538. data/src/core/lib/transport/metadata.h +4 -4
  539. data/src/core/lib/transport/metadata_batch.cc +5 -0
  540. data/src/core/lib/transport/metadata_batch.h +174 -99
  541. data/src/core/lib/transport/parsed_metadata.cc +35 -0
  542. data/src/core/lib/transport/parsed_metadata.h +180 -61
  543. data/src/core/lib/transport/pid_controller.cc +4 -4
  544. data/src/core/lib/transport/static_metadata.cc +529 -614
  545. data/src/core/lib/transport/static_metadata.h +0 -18
  546. data/src/core/lib/transport/transport.cc +4 -26
  547. data/src/core/lib/transport/transport.h +0 -1
  548. data/src/core/lib/transport/transport_op_string.cc +1 -1
  549. data/src/core/lib/uri/uri_parser.cc +19 -19
  550. data/src/core/lib/uri/uri_parser.h +2 -0
  551. data/src/core/plugin_registry/grpc_plugin_registry.cc +4 -2
  552. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +1 -1
  553. data/src/core/tsi/local_transport_security.cc +15 -15
  554. data/src/core/tsi/ssl_transport_security.cc +30 -1
  555. data/src/core/tsi/ssl_transport_security.h +1 -0
  556. data/src/ruby/ext/grpc/extconf.rb +1 -1
  557. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +6 -10
  558. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +9 -15
  559. data/src/ruby/lib/grpc/version.rb +1 -1
  560. data/third_party/abseil-cpp/absl/algorithm/container.h +101 -91
  561. data/third_party/abseil-cpp/absl/base/attributes.h +64 -31
  562. data/third_party/abseil-cpp/absl/base/config.h +67 -37
  563. data/third_party/abseil-cpp/absl/base/dynamic_annotations.h +1 -26
  564. data/third_party/abseil-cpp/absl/base/internal/spinlock.h +3 -1
  565. data/third_party/abseil-cpp/absl/base/internal/spinlock_wait.h +2 -0
  566. data/third_party/abseil-cpp/absl/base/internal/sysinfo.cc +69 -0
  567. data/third_party/abseil-cpp/absl/base/internal/thread_identity.h +4 -4
  568. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +16 -0
  569. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h +4 -4
  570. data/third_party/abseil-cpp/absl/base/options.h +1 -1
  571. data/third_party/abseil-cpp/absl/container/fixed_array.h +0 -5
  572. data/third_party/abseil-cpp/absl/container/inlined_vector.h +105 -97
  573. data/third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h +17 -15
  574. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +18 -102
  575. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +37 -78
  576. data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +388 -423
  577. data/third_party/abseil-cpp/absl/container/internal/raw_hash_map.h +3 -2
  578. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +14 -8
  579. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +251 -120
  580. data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +11 -1
  581. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.cc +12 -11
  582. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +6 -2
  583. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_config.h +12 -5
  584. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_emscripten-inl.inc +110 -0
  585. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_riscv-inl.inc +234 -0
  586. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +25 -7
  587. data/third_party/abseil-cpp/absl/debugging/internal/symbolize.h +8 -2
  588. data/third_party/abseil-cpp/absl/debugging/internal/vdso_support.cc +21 -3
  589. data/third_party/abseil-cpp/absl/debugging/stacktrace.cc +2 -0
  590. data/third_party/abseil-cpp/absl/debugging/symbolize.cc +2 -0
  591. data/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +14 -0
  592. data/third_party/abseil-cpp/absl/debugging/symbolize_emscripten.inc +72 -0
  593. data/third_party/abseil-cpp/absl/functional/function_ref.h +4 -1
  594. data/third_party/abseil-cpp/absl/hash/hash.h +22 -0
  595. data/third_party/abseil-cpp/absl/hash/internal/hash.cc +15 -16
  596. data/third_party/abseil-cpp/absl/hash/internal/hash.h +88 -37
  597. data/third_party/abseil-cpp/absl/hash/internal/{wyhash.cc → low_level_hash.cc} +23 -11
  598. data/third_party/abseil-cpp/absl/hash/internal/{wyhash.h → low_level_hash.h} +14 -12
  599. data/third_party/abseil-cpp/absl/memory/memory.h +1 -1
  600. data/third_party/abseil-cpp/absl/meta/type_traits.h +32 -2
  601. data/third_party/abseil-cpp/absl/numeric/int128.cc +3 -10
  602. data/third_party/abseil-cpp/absl/numeric/int128.h +146 -73
  603. data/third_party/abseil-cpp/absl/numeric/int128_have_intrinsic.inc +19 -25
  604. data/third_party/abseil-cpp/absl/numeric/int128_no_intrinsic.inc +73 -70
  605. data/third_party/abseil-cpp/absl/{base → profiling}/internal/exponential_biased.cc +4 -4
  606. data/third_party/abseil-cpp/absl/{base → profiling}/internal/exponential_biased.h +6 -6
  607. data/third_party/abseil-cpp/absl/profiling/internal/sample_recorder.h +230 -0
  608. data/third_party/abseil-cpp/absl/status/internal/status_internal.h +5 -5
  609. data/third_party/abseil-cpp/absl/status/status.cc +9 -17
  610. data/third_party/abseil-cpp/absl/status/status.h +19 -15
  611. data/third_party/abseil-cpp/absl/status/statusor.cc +34 -2
  612. data/third_party/abseil-cpp/absl/status/statusor.h +31 -21
  613. data/third_party/abseil-cpp/absl/strings/charconv.cc +3 -3
  614. data/third_party/abseil-cpp/absl/strings/charconv.h +3 -2
  615. data/third_party/abseil-cpp/absl/strings/cord.cc +453 -359
  616. data/third_party/abseil-cpp/absl/strings/cord.h +197 -70
  617. data/third_party/abseil-cpp/absl/strings/internal/charconv_parse.cc +1 -1
  618. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.cc +6 -0
  619. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +140 -63
  620. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.cc +1128 -0
  621. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h +939 -0
  622. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.cc +185 -0
  623. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.h +265 -0
  624. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.cc +68 -0
  625. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.h +211 -0
  626. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_consume.cc +129 -0
  627. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_consume.h +50 -0
  628. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_flat.h +7 -7
  629. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.cc +55 -181
  630. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.h +42 -24
  631. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring_reader.h +4 -0
  632. data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.cc +96 -0
  633. data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.h +85 -0
  634. data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.cc +139 -0
  635. data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.h +131 -0
  636. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.cc +445 -0
  637. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.h +298 -0
  638. data/third_party/abseil-cpp/absl/strings/internal/cordz_statistics.h +87 -0
  639. data/third_party/abseil-cpp/absl/strings/internal/cordz_update_scope.h +71 -0
  640. data/third_party/abseil-cpp/absl/strings/internal/cordz_update_tracker.h +121 -0
  641. data/third_party/abseil-cpp/absl/strings/internal/resize_uninitialized.h +48 -2
  642. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.h +8 -0
  643. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.cc +3 -4
  644. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h +1 -1
  645. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.cc +6 -6
  646. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h +36 -18
  647. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.cc +62 -73
  648. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.h +24 -16
  649. data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +35 -35
  650. data/third_party/abseil-cpp/absl/strings/numbers.cc +1 -1
  651. data/third_party/abseil-cpp/absl/strings/numbers.h +34 -0
  652. data/third_party/abseil-cpp/absl/strings/str_cat.cc +4 -4
  653. data/third_party/abseil-cpp/absl/strings/str_format.h +1 -2
  654. data/third_party/abseil-cpp/absl/strings/string_view.cc +16 -21
  655. data/third_party/abseil-cpp/absl/strings/string_view.h +120 -39
  656. data/third_party/abseil-cpp/absl/strings/substitute.cc +2 -1
  657. data/third_party/abseil-cpp/absl/strings/substitute.h +99 -74
  658. data/third_party/abseil-cpp/absl/synchronization/blocking_counter.cc +25 -15
  659. data/third_party/abseil-cpp/absl/synchronization/blocking_counter.h +5 -3
  660. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.cc +1 -1
  661. data/third_party/abseil-cpp/absl/synchronization/mutex.h +3 -3
  662. data/third_party/abseil-cpp/absl/time/civil_time.cc +1 -3
  663. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/time_zone.h +93 -20
  664. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.cc +1 -1
  665. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.h +2 -1
  666. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.cc +83 -21
  667. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +49 -0
  668. data/third_party/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +1 -1
  669. data/third_party/abseil-cpp/absl/time/internal/cctz/src/zone_info_source.cc +2 -3
  670. data/third_party/abseil-cpp/absl/time/time.h +67 -36
  671. data/third_party/abseil-cpp/absl/types/bad_optional_access.h +1 -1
  672. data/third_party/abseil-cpp/absl/types/bad_variant_access.h +2 -2
  673. data/third_party/abseil-cpp/absl/types/span.h +3 -3
  674. data/third_party/boringssl-with-bazel/err_data.c +681 -677
  675. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.c +19 -11
  676. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c +41 -30
  677. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c +1 -1
  678. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.c +59 -47
  679. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.c +24 -28
  680. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.c +5 -0
  681. data/third_party/boringssl-with-bazel/src/crypto/asn1/internal.h +28 -0
  682. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.c +48 -272
  683. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_typ.c +8 -6
  684. data/third_party/boringssl-with-bazel/src/crypto/bytestring/ber.c +3 -1
  685. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.c +2 -2
  686. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c +7 -7
  687. data/third_party/boringssl-with-bazel/src/crypto/mem.c +18 -0
  688. data/third_party/boringssl-with-bazel/src/crypto/pool/internal.h +5 -1
  689. data/third_party/boringssl-with-bazel/src/crypto/pool/pool.c +59 -23
  690. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c +2 -18
  691. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +8 -2
  692. data/third_party/boringssl-with-bazel/src/crypto/x509v3/internal.h +216 -11
  693. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_cache.c +1 -1
  694. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_data.c +1 -1
  695. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_lib.c +1 -1
  696. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_map.c +1 -1
  697. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_node.c +1 -1
  698. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_tree.c +1 -1
  699. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_alt.c +1 -0
  700. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_cpols.c +0 -1
  701. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c +21 -4
  702. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +971 -253
  703. data/third_party/boringssl-with-bazel/src/include/openssl/asn1t.h +3 -3
  704. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +0 -1
  705. data/third_party/boringssl-with-bazel/src/include/openssl/dh.h +4 -12
  706. data/third_party/boringssl-with-bazel/src/include/openssl/dsa.h +17 -41
  707. data/third_party/boringssl-with-bazel/src/include/openssl/ec_key.h +12 -27
  708. data/third_party/boringssl-with-bazel/src/include/openssl/ecdsa.h +8 -10
  709. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +29 -55
  710. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs7.h +3 -9
  711. data/third_party/boringssl-with-bazel/src/include/openssl/pool.h +7 -1
  712. data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +24 -28
  713. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +6 -9
  714. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +12 -43
  715. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +4 -3
  716. data/third_party/boringssl-with-bazel/src/ssl/internal.h +3 -3
  717. data/third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc +4 -0
  718. data/third_party/upb/upb/decode.c +309 -178
  719. data/third_party/upb/upb/decode_fast.c +1 -1
  720. data/third_party/upb/upb/decode_internal.h +1 -0
  721. data/third_party/upb/upb/def.c +330 -85
  722. data/third_party/upb/upb/def.h +45 -14
  723. data/third_party/upb/upb/def.hpp +17 -4
  724. data/third_party/upb/upb/encode.c +100 -40
  725. data/third_party/upb/upb/msg.c +22 -9
  726. data/third_party/upb/upb/msg_internal.h +90 -8
  727. data/third_party/upb/upb/reflection.c +98 -58
  728. data/third_party/upb/upb/reflection.h +6 -2
  729. data/third_party/upb/upb/text_encode.c +3 -3
  730. data/third_party/upb/upb/upb.c +8 -0
  731. metadata +116 -56
  732. data/src/core/lib/avl/avl.cc +0 -306
  733. data/src/core/lib/gprpp/match.h +0 -73
  734. data/src/core/lib/gprpp/overload.h +0 -59
  735. data/src/core/lib/iomgr/event_engine/iomgr.h +0 -42
  736. data/src/core/lib/iomgr/resource_quota.cc +0 -1106
  737. data/src/core/lib/iomgr/resource_quota.h +0 -226
  738. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_enum.c +0 -93
  739. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_int.h +0 -217
@@ -0,0 +1,371 @@
1
+ /* This file was generated by upbc (the upb compiler) from the input
2
+ * file:
3
+ *
4
+ * google/api/expr/v1alpha1/value.proto
5
+ *
6
+ * Do not edit -- your changes will be discarded when the file is
7
+ * regenerated. */
8
+
9
+ #ifndef GOOGLE_API_EXPR_V1ALPHA1_VALUE_PROTO_UPB_H_
10
+ #define GOOGLE_API_EXPR_V1ALPHA1_VALUE_PROTO_UPB_H_
11
+
12
+ #include "upb/msg_internal.h"
13
+ #include "upb/decode.h"
14
+ #include "upb/decode_fast.h"
15
+ #include "upb/encode.h"
16
+
17
+ #include "upb/port_def.inc"
18
+
19
+ #ifdef __cplusplus
20
+ extern "C" {
21
+ #endif
22
+
23
+ struct google_api_expr_v1alpha1_Value;
24
+ struct google_api_expr_v1alpha1_EnumValue;
25
+ struct google_api_expr_v1alpha1_ListValue;
26
+ struct google_api_expr_v1alpha1_MapValue;
27
+ struct google_api_expr_v1alpha1_MapValue_Entry;
28
+ typedef struct google_api_expr_v1alpha1_Value google_api_expr_v1alpha1_Value;
29
+ typedef struct google_api_expr_v1alpha1_EnumValue google_api_expr_v1alpha1_EnumValue;
30
+ typedef struct google_api_expr_v1alpha1_ListValue google_api_expr_v1alpha1_ListValue;
31
+ typedef struct google_api_expr_v1alpha1_MapValue google_api_expr_v1alpha1_MapValue;
32
+ typedef struct google_api_expr_v1alpha1_MapValue_Entry google_api_expr_v1alpha1_MapValue_Entry;
33
+ extern const upb_msglayout google_api_expr_v1alpha1_Value_msginit;
34
+ extern const upb_msglayout google_api_expr_v1alpha1_EnumValue_msginit;
35
+ extern const upb_msglayout google_api_expr_v1alpha1_ListValue_msginit;
36
+ extern const upb_msglayout google_api_expr_v1alpha1_MapValue_msginit;
37
+ extern const upb_msglayout google_api_expr_v1alpha1_MapValue_Entry_msginit;
38
+ struct google_protobuf_Any;
39
+ extern const upb_msglayout google_protobuf_Any_msginit;
40
+
41
+
42
+ /* google.api.expr.v1alpha1.Value */
43
+
44
+ UPB_INLINE google_api_expr_v1alpha1_Value *google_api_expr_v1alpha1_Value_new(upb_arena *arena) {
45
+ return (google_api_expr_v1alpha1_Value *)_upb_msg_new(&google_api_expr_v1alpha1_Value_msginit, arena);
46
+ }
47
+ UPB_INLINE google_api_expr_v1alpha1_Value *google_api_expr_v1alpha1_Value_parse(const char *buf, size_t size,
48
+ upb_arena *arena) {
49
+ google_api_expr_v1alpha1_Value *ret = google_api_expr_v1alpha1_Value_new(arena);
50
+ if (!ret) return NULL;
51
+ if (!upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Value_msginit, arena)) return NULL;
52
+ return ret;
53
+ }
54
+ UPB_INLINE google_api_expr_v1alpha1_Value *google_api_expr_v1alpha1_Value_parse_ex(const char *buf, size_t size,
55
+ const upb_extreg *extreg, int options,
56
+ upb_arena *arena) {
57
+ google_api_expr_v1alpha1_Value *ret = google_api_expr_v1alpha1_Value_new(arena);
58
+ if (!ret) return NULL;
59
+ if (!_upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Value_msginit, extreg, options, arena)) {
60
+ return NULL;
61
+ }
62
+ return ret;
63
+ }
64
+ UPB_INLINE char *google_api_expr_v1alpha1_Value_serialize(const google_api_expr_v1alpha1_Value *msg, upb_arena *arena, size_t *len) {
65
+ return upb_encode(msg, &google_api_expr_v1alpha1_Value_msginit, arena, len);
66
+ }
67
+
68
+ typedef enum {
69
+ google_api_expr_v1alpha1_Value_kind_null_value = 1,
70
+ google_api_expr_v1alpha1_Value_kind_bool_value = 2,
71
+ google_api_expr_v1alpha1_Value_kind_int64_value = 3,
72
+ google_api_expr_v1alpha1_Value_kind_uint64_value = 4,
73
+ google_api_expr_v1alpha1_Value_kind_double_value = 5,
74
+ google_api_expr_v1alpha1_Value_kind_string_value = 6,
75
+ google_api_expr_v1alpha1_Value_kind_bytes_value = 7,
76
+ google_api_expr_v1alpha1_Value_kind_enum_value = 9,
77
+ google_api_expr_v1alpha1_Value_kind_object_value = 10,
78
+ google_api_expr_v1alpha1_Value_kind_map_value = 11,
79
+ google_api_expr_v1alpha1_Value_kind_list_value = 12,
80
+ google_api_expr_v1alpha1_Value_kind_type_value = 15,
81
+ google_api_expr_v1alpha1_Value_kind_NOT_SET = 0
82
+ } google_api_expr_v1alpha1_Value_kind_oneofcases;
83
+ UPB_INLINE google_api_expr_v1alpha1_Value_kind_oneofcases google_api_expr_v1alpha1_Value_kind_case(const google_api_expr_v1alpha1_Value* msg) { return (google_api_expr_v1alpha1_Value_kind_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(8, 16), int32_t); }
84
+
85
+ UPB_INLINE bool google_api_expr_v1alpha1_Value_has_null_value(const google_api_expr_v1alpha1_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 1; }
86
+ UPB_INLINE int32_t google_api_expr_v1alpha1_Value_null_value(const google_api_expr_v1alpha1_Value *msg) { return UPB_READ_ONEOF(msg, int32_t, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 1, 0); }
87
+ UPB_INLINE bool google_api_expr_v1alpha1_Value_has_bool_value(const google_api_expr_v1alpha1_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 2; }
88
+ UPB_INLINE bool google_api_expr_v1alpha1_Value_bool_value(const google_api_expr_v1alpha1_Value *msg) { return UPB_READ_ONEOF(msg, bool, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 2, false); }
89
+ UPB_INLINE bool google_api_expr_v1alpha1_Value_has_int64_value(const google_api_expr_v1alpha1_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 3; }
90
+ UPB_INLINE int64_t google_api_expr_v1alpha1_Value_int64_value(const google_api_expr_v1alpha1_Value *msg) { return UPB_READ_ONEOF(msg, int64_t, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 3, 0); }
91
+ UPB_INLINE bool google_api_expr_v1alpha1_Value_has_uint64_value(const google_api_expr_v1alpha1_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 4; }
92
+ UPB_INLINE uint64_t google_api_expr_v1alpha1_Value_uint64_value(const google_api_expr_v1alpha1_Value *msg) { return UPB_READ_ONEOF(msg, uint64_t, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 4, 0); }
93
+ UPB_INLINE bool google_api_expr_v1alpha1_Value_has_double_value(const google_api_expr_v1alpha1_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 5; }
94
+ UPB_INLINE double google_api_expr_v1alpha1_Value_double_value(const google_api_expr_v1alpha1_Value *msg) { return UPB_READ_ONEOF(msg, double, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 5, 0); }
95
+ UPB_INLINE bool google_api_expr_v1alpha1_Value_has_string_value(const google_api_expr_v1alpha1_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 6; }
96
+ UPB_INLINE upb_strview google_api_expr_v1alpha1_Value_string_value(const google_api_expr_v1alpha1_Value *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 6, upb_strview_make("", strlen(""))); }
97
+ UPB_INLINE bool google_api_expr_v1alpha1_Value_has_bytes_value(const google_api_expr_v1alpha1_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 7; }
98
+ UPB_INLINE upb_strview google_api_expr_v1alpha1_Value_bytes_value(const google_api_expr_v1alpha1_Value *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 7, upb_strview_make("", strlen(""))); }
99
+ UPB_INLINE bool google_api_expr_v1alpha1_Value_has_enum_value(const google_api_expr_v1alpha1_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 9; }
100
+ UPB_INLINE const google_api_expr_v1alpha1_EnumValue* google_api_expr_v1alpha1_Value_enum_value(const google_api_expr_v1alpha1_Value *msg) { return UPB_READ_ONEOF(msg, const google_api_expr_v1alpha1_EnumValue*, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 9, NULL); }
101
+ UPB_INLINE bool google_api_expr_v1alpha1_Value_has_object_value(const google_api_expr_v1alpha1_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 10; }
102
+ UPB_INLINE const struct google_protobuf_Any* google_api_expr_v1alpha1_Value_object_value(const google_api_expr_v1alpha1_Value *msg) { return UPB_READ_ONEOF(msg, const struct google_protobuf_Any*, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 10, NULL); }
103
+ UPB_INLINE bool google_api_expr_v1alpha1_Value_has_map_value(const google_api_expr_v1alpha1_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 11; }
104
+ UPB_INLINE const google_api_expr_v1alpha1_MapValue* google_api_expr_v1alpha1_Value_map_value(const google_api_expr_v1alpha1_Value *msg) { return UPB_READ_ONEOF(msg, const google_api_expr_v1alpha1_MapValue*, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 11, NULL); }
105
+ UPB_INLINE bool google_api_expr_v1alpha1_Value_has_list_value(const google_api_expr_v1alpha1_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 12; }
106
+ UPB_INLINE const google_api_expr_v1alpha1_ListValue* google_api_expr_v1alpha1_Value_list_value(const google_api_expr_v1alpha1_Value *msg) { return UPB_READ_ONEOF(msg, const google_api_expr_v1alpha1_ListValue*, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 12, NULL); }
107
+ UPB_INLINE bool google_api_expr_v1alpha1_Value_has_type_value(const google_api_expr_v1alpha1_Value *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 15; }
108
+ UPB_INLINE upb_strview google_api_expr_v1alpha1_Value_type_value(const google_api_expr_v1alpha1_Value *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 15, upb_strview_make("", strlen(""))); }
109
+
110
+ UPB_INLINE void google_api_expr_v1alpha1_Value_set_null_value(google_api_expr_v1alpha1_Value *msg, int32_t value) {
111
+ UPB_WRITE_ONEOF(msg, int32_t, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 1);
112
+ }
113
+ UPB_INLINE void google_api_expr_v1alpha1_Value_set_bool_value(google_api_expr_v1alpha1_Value *msg, bool value) {
114
+ UPB_WRITE_ONEOF(msg, bool, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 2);
115
+ }
116
+ UPB_INLINE void google_api_expr_v1alpha1_Value_set_int64_value(google_api_expr_v1alpha1_Value *msg, int64_t value) {
117
+ UPB_WRITE_ONEOF(msg, int64_t, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 3);
118
+ }
119
+ UPB_INLINE void google_api_expr_v1alpha1_Value_set_uint64_value(google_api_expr_v1alpha1_Value *msg, uint64_t value) {
120
+ UPB_WRITE_ONEOF(msg, uint64_t, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 4);
121
+ }
122
+ UPB_INLINE void google_api_expr_v1alpha1_Value_set_double_value(google_api_expr_v1alpha1_Value *msg, double value) {
123
+ UPB_WRITE_ONEOF(msg, double, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 5);
124
+ }
125
+ UPB_INLINE void google_api_expr_v1alpha1_Value_set_string_value(google_api_expr_v1alpha1_Value *msg, upb_strview value) {
126
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 6);
127
+ }
128
+ UPB_INLINE void google_api_expr_v1alpha1_Value_set_bytes_value(google_api_expr_v1alpha1_Value *msg, upb_strview value) {
129
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 7);
130
+ }
131
+ UPB_INLINE void google_api_expr_v1alpha1_Value_set_enum_value(google_api_expr_v1alpha1_Value *msg, google_api_expr_v1alpha1_EnumValue* value) {
132
+ UPB_WRITE_ONEOF(msg, google_api_expr_v1alpha1_EnumValue*, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 9);
133
+ }
134
+ UPB_INLINE struct google_api_expr_v1alpha1_EnumValue* google_api_expr_v1alpha1_Value_mutable_enum_value(google_api_expr_v1alpha1_Value *msg, upb_arena *arena) {
135
+ struct google_api_expr_v1alpha1_EnumValue* sub = (struct google_api_expr_v1alpha1_EnumValue*)google_api_expr_v1alpha1_Value_enum_value(msg);
136
+ if (sub == NULL) {
137
+ sub = (struct google_api_expr_v1alpha1_EnumValue*)_upb_msg_new(&google_api_expr_v1alpha1_EnumValue_msginit, arena);
138
+ if (!sub) return NULL;
139
+ google_api_expr_v1alpha1_Value_set_enum_value(msg, sub);
140
+ }
141
+ return sub;
142
+ }
143
+ UPB_INLINE void google_api_expr_v1alpha1_Value_set_object_value(google_api_expr_v1alpha1_Value *msg, struct google_protobuf_Any* value) {
144
+ UPB_WRITE_ONEOF(msg, struct google_protobuf_Any*, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 10);
145
+ }
146
+ UPB_INLINE struct google_protobuf_Any* google_api_expr_v1alpha1_Value_mutable_object_value(google_api_expr_v1alpha1_Value *msg, upb_arena *arena) {
147
+ struct google_protobuf_Any* sub = (struct google_protobuf_Any*)google_api_expr_v1alpha1_Value_object_value(msg);
148
+ if (sub == NULL) {
149
+ sub = (struct google_protobuf_Any*)_upb_msg_new(&google_protobuf_Any_msginit, arena);
150
+ if (!sub) return NULL;
151
+ google_api_expr_v1alpha1_Value_set_object_value(msg, sub);
152
+ }
153
+ return sub;
154
+ }
155
+ UPB_INLINE void google_api_expr_v1alpha1_Value_set_map_value(google_api_expr_v1alpha1_Value *msg, google_api_expr_v1alpha1_MapValue* value) {
156
+ UPB_WRITE_ONEOF(msg, google_api_expr_v1alpha1_MapValue*, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 11);
157
+ }
158
+ UPB_INLINE struct google_api_expr_v1alpha1_MapValue* google_api_expr_v1alpha1_Value_mutable_map_value(google_api_expr_v1alpha1_Value *msg, upb_arena *arena) {
159
+ struct google_api_expr_v1alpha1_MapValue* sub = (struct google_api_expr_v1alpha1_MapValue*)google_api_expr_v1alpha1_Value_map_value(msg);
160
+ if (sub == NULL) {
161
+ sub = (struct google_api_expr_v1alpha1_MapValue*)_upb_msg_new(&google_api_expr_v1alpha1_MapValue_msginit, arena);
162
+ if (!sub) return NULL;
163
+ google_api_expr_v1alpha1_Value_set_map_value(msg, sub);
164
+ }
165
+ return sub;
166
+ }
167
+ UPB_INLINE void google_api_expr_v1alpha1_Value_set_list_value(google_api_expr_v1alpha1_Value *msg, google_api_expr_v1alpha1_ListValue* value) {
168
+ UPB_WRITE_ONEOF(msg, google_api_expr_v1alpha1_ListValue*, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 12);
169
+ }
170
+ UPB_INLINE struct google_api_expr_v1alpha1_ListValue* google_api_expr_v1alpha1_Value_mutable_list_value(google_api_expr_v1alpha1_Value *msg, upb_arena *arena) {
171
+ struct google_api_expr_v1alpha1_ListValue* sub = (struct google_api_expr_v1alpha1_ListValue*)google_api_expr_v1alpha1_Value_list_value(msg);
172
+ if (sub == NULL) {
173
+ sub = (struct google_api_expr_v1alpha1_ListValue*)_upb_msg_new(&google_api_expr_v1alpha1_ListValue_msginit, arena);
174
+ if (!sub) return NULL;
175
+ google_api_expr_v1alpha1_Value_set_list_value(msg, sub);
176
+ }
177
+ return sub;
178
+ }
179
+ UPB_INLINE void google_api_expr_v1alpha1_Value_set_type_value(google_api_expr_v1alpha1_Value *msg, upb_strview value) {
180
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 15);
181
+ }
182
+
183
+ /* google.api.expr.v1alpha1.EnumValue */
184
+
185
+ UPB_INLINE google_api_expr_v1alpha1_EnumValue *google_api_expr_v1alpha1_EnumValue_new(upb_arena *arena) {
186
+ return (google_api_expr_v1alpha1_EnumValue *)_upb_msg_new(&google_api_expr_v1alpha1_EnumValue_msginit, arena);
187
+ }
188
+ UPB_INLINE google_api_expr_v1alpha1_EnumValue *google_api_expr_v1alpha1_EnumValue_parse(const char *buf, size_t size,
189
+ upb_arena *arena) {
190
+ google_api_expr_v1alpha1_EnumValue *ret = google_api_expr_v1alpha1_EnumValue_new(arena);
191
+ if (!ret) return NULL;
192
+ if (!upb_decode(buf, size, ret, &google_api_expr_v1alpha1_EnumValue_msginit, arena)) return NULL;
193
+ return ret;
194
+ }
195
+ UPB_INLINE google_api_expr_v1alpha1_EnumValue *google_api_expr_v1alpha1_EnumValue_parse_ex(const char *buf, size_t size,
196
+ const upb_extreg *extreg, int options,
197
+ upb_arena *arena) {
198
+ google_api_expr_v1alpha1_EnumValue *ret = google_api_expr_v1alpha1_EnumValue_new(arena);
199
+ if (!ret) return NULL;
200
+ if (!_upb_decode(buf, size, ret, &google_api_expr_v1alpha1_EnumValue_msginit, extreg, options, arena)) {
201
+ return NULL;
202
+ }
203
+ return ret;
204
+ }
205
+ UPB_INLINE char *google_api_expr_v1alpha1_EnumValue_serialize(const google_api_expr_v1alpha1_EnumValue *msg, upb_arena *arena, size_t *len) {
206
+ return upb_encode(msg, &google_api_expr_v1alpha1_EnumValue_msginit, arena, len);
207
+ }
208
+
209
+ UPB_INLINE upb_strview google_api_expr_v1alpha1_EnumValue_type(const google_api_expr_v1alpha1_EnumValue *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
210
+ UPB_INLINE int32_t google_api_expr_v1alpha1_EnumValue_value(const google_api_expr_v1alpha1_EnumValue *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t); }
211
+
212
+ UPB_INLINE void google_api_expr_v1alpha1_EnumValue_set_type(google_api_expr_v1alpha1_EnumValue *msg, upb_strview value) {
213
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
214
+ }
215
+ UPB_INLINE void google_api_expr_v1alpha1_EnumValue_set_value(google_api_expr_v1alpha1_EnumValue *msg, int32_t value) {
216
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t) = value;
217
+ }
218
+
219
+ /* google.api.expr.v1alpha1.ListValue */
220
+
221
+ UPB_INLINE google_api_expr_v1alpha1_ListValue *google_api_expr_v1alpha1_ListValue_new(upb_arena *arena) {
222
+ return (google_api_expr_v1alpha1_ListValue *)_upb_msg_new(&google_api_expr_v1alpha1_ListValue_msginit, arena);
223
+ }
224
+ UPB_INLINE google_api_expr_v1alpha1_ListValue *google_api_expr_v1alpha1_ListValue_parse(const char *buf, size_t size,
225
+ upb_arena *arena) {
226
+ google_api_expr_v1alpha1_ListValue *ret = google_api_expr_v1alpha1_ListValue_new(arena);
227
+ if (!ret) return NULL;
228
+ if (!upb_decode(buf, size, ret, &google_api_expr_v1alpha1_ListValue_msginit, arena)) return NULL;
229
+ return ret;
230
+ }
231
+ UPB_INLINE google_api_expr_v1alpha1_ListValue *google_api_expr_v1alpha1_ListValue_parse_ex(const char *buf, size_t size,
232
+ const upb_extreg *extreg, int options,
233
+ upb_arena *arena) {
234
+ google_api_expr_v1alpha1_ListValue *ret = google_api_expr_v1alpha1_ListValue_new(arena);
235
+ if (!ret) return NULL;
236
+ if (!_upb_decode(buf, size, ret, &google_api_expr_v1alpha1_ListValue_msginit, extreg, options, arena)) {
237
+ return NULL;
238
+ }
239
+ return ret;
240
+ }
241
+ UPB_INLINE char *google_api_expr_v1alpha1_ListValue_serialize(const google_api_expr_v1alpha1_ListValue *msg, upb_arena *arena, size_t *len) {
242
+ return upb_encode(msg, &google_api_expr_v1alpha1_ListValue_msginit, arena, len);
243
+ }
244
+
245
+ UPB_INLINE bool google_api_expr_v1alpha1_ListValue_has_values(const google_api_expr_v1alpha1_ListValue *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0)); }
246
+ UPB_INLINE const google_api_expr_v1alpha1_Value* const* google_api_expr_v1alpha1_ListValue_values(const google_api_expr_v1alpha1_ListValue *msg, size_t *len) { return (const google_api_expr_v1alpha1_Value* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); }
247
+
248
+ UPB_INLINE google_api_expr_v1alpha1_Value** google_api_expr_v1alpha1_ListValue_mutable_values(google_api_expr_v1alpha1_ListValue *msg, size_t *len) {
249
+ return (google_api_expr_v1alpha1_Value**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
250
+ }
251
+ UPB_INLINE google_api_expr_v1alpha1_Value** google_api_expr_v1alpha1_ListValue_resize_values(google_api_expr_v1alpha1_ListValue *msg, size_t len, upb_arena *arena) {
252
+ return (google_api_expr_v1alpha1_Value**)_upb_array_resize_accessor2(msg, UPB_SIZE(0, 0), len, UPB_SIZE(2, 3), arena);
253
+ }
254
+ UPB_INLINE struct google_api_expr_v1alpha1_Value* google_api_expr_v1alpha1_ListValue_add_values(google_api_expr_v1alpha1_ListValue *msg, upb_arena *arena) {
255
+ struct google_api_expr_v1alpha1_Value* sub = (struct google_api_expr_v1alpha1_Value*)_upb_msg_new(&google_api_expr_v1alpha1_Value_msginit, arena);
256
+ bool ok = _upb_array_append_accessor2(
257
+ msg, UPB_SIZE(0, 0), UPB_SIZE(2, 3), &sub, arena);
258
+ if (!ok) return NULL;
259
+ return sub;
260
+ }
261
+
262
+ /* google.api.expr.v1alpha1.MapValue */
263
+
264
+ UPB_INLINE google_api_expr_v1alpha1_MapValue *google_api_expr_v1alpha1_MapValue_new(upb_arena *arena) {
265
+ return (google_api_expr_v1alpha1_MapValue *)_upb_msg_new(&google_api_expr_v1alpha1_MapValue_msginit, arena);
266
+ }
267
+ UPB_INLINE google_api_expr_v1alpha1_MapValue *google_api_expr_v1alpha1_MapValue_parse(const char *buf, size_t size,
268
+ upb_arena *arena) {
269
+ google_api_expr_v1alpha1_MapValue *ret = google_api_expr_v1alpha1_MapValue_new(arena);
270
+ if (!ret) return NULL;
271
+ if (!upb_decode(buf, size, ret, &google_api_expr_v1alpha1_MapValue_msginit, arena)) return NULL;
272
+ return ret;
273
+ }
274
+ UPB_INLINE google_api_expr_v1alpha1_MapValue *google_api_expr_v1alpha1_MapValue_parse_ex(const char *buf, size_t size,
275
+ const upb_extreg *extreg, int options,
276
+ upb_arena *arena) {
277
+ google_api_expr_v1alpha1_MapValue *ret = google_api_expr_v1alpha1_MapValue_new(arena);
278
+ if (!ret) return NULL;
279
+ if (!_upb_decode(buf, size, ret, &google_api_expr_v1alpha1_MapValue_msginit, extreg, options, arena)) {
280
+ return NULL;
281
+ }
282
+ return ret;
283
+ }
284
+ UPB_INLINE char *google_api_expr_v1alpha1_MapValue_serialize(const google_api_expr_v1alpha1_MapValue *msg, upb_arena *arena, size_t *len) {
285
+ return upb_encode(msg, &google_api_expr_v1alpha1_MapValue_msginit, arena, len);
286
+ }
287
+
288
+ UPB_INLINE bool google_api_expr_v1alpha1_MapValue_has_entries(const google_api_expr_v1alpha1_MapValue *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0)); }
289
+ UPB_INLINE const google_api_expr_v1alpha1_MapValue_Entry* const* google_api_expr_v1alpha1_MapValue_entries(const google_api_expr_v1alpha1_MapValue *msg, size_t *len) { return (const google_api_expr_v1alpha1_MapValue_Entry* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); }
290
+
291
+ UPB_INLINE google_api_expr_v1alpha1_MapValue_Entry** google_api_expr_v1alpha1_MapValue_mutable_entries(google_api_expr_v1alpha1_MapValue *msg, size_t *len) {
292
+ return (google_api_expr_v1alpha1_MapValue_Entry**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
293
+ }
294
+ UPB_INLINE google_api_expr_v1alpha1_MapValue_Entry** google_api_expr_v1alpha1_MapValue_resize_entries(google_api_expr_v1alpha1_MapValue *msg, size_t len, upb_arena *arena) {
295
+ return (google_api_expr_v1alpha1_MapValue_Entry**)_upb_array_resize_accessor2(msg, UPB_SIZE(0, 0), len, UPB_SIZE(2, 3), arena);
296
+ }
297
+ UPB_INLINE struct google_api_expr_v1alpha1_MapValue_Entry* google_api_expr_v1alpha1_MapValue_add_entries(google_api_expr_v1alpha1_MapValue *msg, upb_arena *arena) {
298
+ struct google_api_expr_v1alpha1_MapValue_Entry* sub = (struct google_api_expr_v1alpha1_MapValue_Entry*)_upb_msg_new(&google_api_expr_v1alpha1_MapValue_Entry_msginit, arena);
299
+ bool ok = _upb_array_append_accessor2(
300
+ msg, UPB_SIZE(0, 0), UPB_SIZE(2, 3), &sub, arena);
301
+ if (!ok) return NULL;
302
+ return sub;
303
+ }
304
+
305
+ /* google.api.expr.v1alpha1.MapValue.Entry */
306
+
307
+ UPB_INLINE google_api_expr_v1alpha1_MapValue_Entry *google_api_expr_v1alpha1_MapValue_Entry_new(upb_arena *arena) {
308
+ return (google_api_expr_v1alpha1_MapValue_Entry *)_upb_msg_new(&google_api_expr_v1alpha1_MapValue_Entry_msginit, arena);
309
+ }
310
+ UPB_INLINE google_api_expr_v1alpha1_MapValue_Entry *google_api_expr_v1alpha1_MapValue_Entry_parse(const char *buf, size_t size,
311
+ upb_arena *arena) {
312
+ google_api_expr_v1alpha1_MapValue_Entry *ret = google_api_expr_v1alpha1_MapValue_Entry_new(arena);
313
+ if (!ret) return NULL;
314
+ if (!upb_decode(buf, size, ret, &google_api_expr_v1alpha1_MapValue_Entry_msginit, arena)) return NULL;
315
+ return ret;
316
+ }
317
+ UPB_INLINE google_api_expr_v1alpha1_MapValue_Entry *google_api_expr_v1alpha1_MapValue_Entry_parse_ex(const char *buf, size_t size,
318
+ const upb_extreg *extreg, int options,
319
+ upb_arena *arena) {
320
+ google_api_expr_v1alpha1_MapValue_Entry *ret = google_api_expr_v1alpha1_MapValue_Entry_new(arena);
321
+ if (!ret) return NULL;
322
+ if (!_upb_decode(buf, size, ret, &google_api_expr_v1alpha1_MapValue_Entry_msginit, extreg, options, arena)) {
323
+ return NULL;
324
+ }
325
+ return ret;
326
+ }
327
+ UPB_INLINE char *google_api_expr_v1alpha1_MapValue_Entry_serialize(const google_api_expr_v1alpha1_MapValue_Entry *msg, upb_arena *arena, size_t *len) {
328
+ return upb_encode(msg, &google_api_expr_v1alpha1_MapValue_Entry_msginit, arena, len);
329
+ }
330
+
331
+ UPB_INLINE bool google_api_expr_v1alpha1_MapValue_Entry_has_key(const google_api_expr_v1alpha1_MapValue_Entry *msg) { return _upb_hasbit(msg, 1); }
332
+ UPB_INLINE const google_api_expr_v1alpha1_Value* google_api_expr_v1alpha1_MapValue_Entry_key(const google_api_expr_v1alpha1_MapValue_Entry *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const google_api_expr_v1alpha1_Value*); }
333
+ UPB_INLINE bool google_api_expr_v1alpha1_MapValue_Entry_has_value(const google_api_expr_v1alpha1_MapValue_Entry *msg) { return _upb_hasbit(msg, 2); }
334
+ UPB_INLINE const google_api_expr_v1alpha1_Value* google_api_expr_v1alpha1_MapValue_Entry_value(const google_api_expr_v1alpha1_MapValue_Entry *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const google_api_expr_v1alpha1_Value*); }
335
+
336
+ UPB_INLINE void google_api_expr_v1alpha1_MapValue_Entry_set_key(google_api_expr_v1alpha1_MapValue_Entry *msg, google_api_expr_v1alpha1_Value* value) {
337
+ _upb_sethas(msg, 1);
338
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), google_api_expr_v1alpha1_Value*) = value;
339
+ }
340
+ UPB_INLINE struct google_api_expr_v1alpha1_Value* google_api_expr_v1alpha1_MapValue_Entry_mutable_key(google_api_expr_v1alpha1_MapValue_Entry *msg, upb_arena *arena) {
341
+ struct google_api_expr_v1alpha1_Value* sub = (struct google_api_expr_v1alpha1_Value*)google_api_expr_v1alpha1_MapValue_Entry_key(msg);
342
+ if (sub == NULL) {
343
+ sub = (struct google_api_expr_v1alpha1_Value*)_upb_msg_new(&google_api_expr_v1alpha1_Value_msginit, arena);
344
+ if (!sub) return NULL;
345
+ google_api_expr_v1alpha1_MapValue_Entry_set_key(msg, sub);
346
+ }
347
+ return sub;
348
+ }
349
+ UPB_INLINE void google_api_expr_v1alpha1_MapValue_Entry_set_value(google_api_expr_v1alpha1_MapValue_Entry *msg, google_api_expr_v1alpha1_Value* value) {
350
+ _upb_sethas(msg, 2);
351
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), google_api_expr_v1alpha1_Value*) = value;
352
+ }
353
+ UPB_INLINE struct google_api_expr_v1alpha1_Value* google_api_expr_v1alpha1_MapValue_Entry_mutable_value(google_api_expr_v1alpha1_MapValue_Entry *msg, upb_arena *arena) {
354
+ struct google_api_expr_v1alpha1_Value* sub = (struct google_api_expr_v1alpha1_Value*)google_api_expr_v1alpha1_MapValue_Entry_value(msg);
355
+ if (sub == NULL) {
356
+ sub = (struct google_api_expr_v1alpha1_Value*)_upb_msg_new(&google_api_expr_v1alpha1_Value_msginit, arena);
357
+ if (!sub) return NULL;
358
+ google_api_expr_v1alpha1_MapValue_Entry_set_value(msg, sub);
359
+ }
360
+ return sub;
361
+ }
362
+
363
+ extern const upb_msglayout_file google_api_expr_v1alpha1_value_proto_upb_file_layout;
364
+
365
+ #ifdef __cplusplus
366
+ } /* extern "C" */
367
+ #endif
368
+
369
+ #include "upb/port_undef.inc"
370
+
371
+ #endif /* GOOGLE_API_EXPR_V1ALPHA1_VALUE_PROTO_UPB_H_ */
@@ -12,54 +12,67 @@
12
12
 
13
13
  #include "upb/port_def.inc"
14
14
 
15
- static const upb_msglayout *const google_api_Http_submsgs[1] = {
16
- &google_api_HttpRule_msginit,
15
+ static const upb_msglayout_sub google_api_Http_submsgs[1] = {
16
+ {.submsg = &google_api_HttpRule_msginit},
17
17
  };
18
18
 
19
19
  static const upb_msglayout_field google_api_Http__fields[2] = {
20
- {1, UPB_SIZE(4, 8), 0, 0, 11, _UPB_MODE_ARRAY},
21
- {2, UPB_SIZE(0, 0), 0, 0, 8, _UPB_MODE_SCALAR},
20
+ {1, UPB_SIZE(4, 8), 0, 0, 11, _UPB_MODE_ARRAY | (_UPB_REP_PTR << _UPB_REP_SHIFT)},
21
+ {2, UPB_SIZE(0, 0), 0, 0, 8, _UPB_MODE_SCALAR | (_UPB_REP_1BYTE << _UPB_REP_SHIFT)},
22
22
  };
23
23
 
24
24
  const upb_msglayout google_api_Http_msginit = {
25
25
  &google_api_Http_submsgs[0],
26
26
  &google_api_Http__fields[0],
27
- UPB_SIZE(8, 16), 2, false, 2, 255,
27
+ UPB_SIZE(8, 16), 2, _UPB_MSGEXT_NONE, 2, 255,
28
28
  };
29
29
 
30
- static const upb_msglayout *const google_api_HttpRule_submsgs[2] = {
31
- &google_api_CustomHttpPattern_msginit,
32
- &google_api_HttpRule_msginit,
30
+ static const upb_msglayout_sub google_api_HttpRule_submsgs[2] = {
31
+ {.submsg = &google_api_CustomHttpPattern_msginit},
32
+ {.submsg = &google_api_HttpRule_msginit},
33
33
  };
34
34
 
35
35
  static const upb_msglayout_field google_api_HttpRule__fields[10] = {
36
- {1, UPB_SIZE(0, 0), 0, 0, 9, _UPB_MODE_SCALAR},
37
- {2, UPB_SIZE(28, 56), UPB_SIZE(-37, -73), 0, 9, _UPB_MODE_SCALAR},
38
- {3, UPB_SIZE(28, 56), UPB_SIZE(-37, -73), 0, 9, _UPB_MODE_SCALAR},
39
- {4, UPB_SIZE(28, 56), UPB_SIZE(-37, -73), 0, 9, _UPB_MODE_SCALAR},
40
- {5, UPB_SIZE(28, 56), UPB_SIZE(-37, -73), 0, 9, _UPB_MODE_SCALAR},
41
- {6, UPB_SIZE(28, 56), UPB_SIZE(-37, -73), 0, 9, _UPB_MODE_SCALAR},
42
- {7, UPB_SIZE(8, 16), 0, 0, 9, _UPB_MODE_SCALAR},
43
- {8, UPB_SIZE(28, 56), UPB_SIZE(-37, -73), 0, 11, _UPB_MODE_SCALAR},
44
- {11, UPB_SIZE(24, 48), 0, 1, 11, _UPB_MODE_ARRAY},
45
- {12, UPB_SIZE(16, 32), 0, 0, 9, _UPB_MODE_SCALAR},
36
+ {1, UPB_SIZE(0, 0), 0, 0, 9, _UPB_MODE_SCALAR | (_UPB_REP_STRVIEW << _UPB_REP_SHIFT)},
37
+ {2, UPB_SIZE(28, 56), UPB_SIZE(-37, -73), 0, 9, _UPB_MODE_SCALAR | (_UPB_REP_STRVIEW << _UPB_REP_SHIFT)},
38
+ {3, UPB_SIZE(28, 56), UPB_SIZE(-37, -73), 0, 9, _UPB_MODE_SCALAR | (_UPB_REP_STRVIEW << _UPB_REP_SHIFT)},
39
+ {4, UPB_SIZE(28, 56), UPB_SIZE(-37, -73), 0, 9, _UPB_MODE_SCALAR | (_UPB_REP_STRVIEW << _UPB_REP_SHIFT)},
40
+ {5, UPB_SIZE(28, 56), UPB_SIZE(-37, -73), 0, 9, _UPB_MODE_SCALAR | (_UPB_REP_STRVIEW << _UPB_REP_SHIFT)},
41
+ {6, UPB_SIZE(28, 56), UPB_SIZE(-37, -73), 0, 9, _UPB_MODE_SCALAR | (_UPB_REP_STRVIEW << _UPB_REP_SHIFT)},
42
+ {7, UPB_SIZE(8, 16), 0, 0, 9, _UPB_MODE_SCALAR | (_UPB_REP_STRVIEW << _UPB_REP_SHIFT)},
43
+ {8, UPB_SIZE(28, 56), UPB_SIZE(-37, -73), 0, 11, _UPB_MODE_SCALAR | (_UPB_REP_PTR << _UPB_REP_SHIFT)},
44
+ {11, UPB_SIZE(24, 48), 0, 1, 11, _UPB_MODE_ARRAY | (_UPB_REP_PTR << _UPB_REP_SHIFT)},
45
+ {12, UPB_SIZE(16, 32), 0, 0, 9, _UPB_MODE_SCALAR | (_UPB_REP_STRVIEW << _UPB_REP_SHIFT)},
46
46
  };
47
47
 
48
48
  const upb_msglayout google_api_HttpRule_msginit = {
49
49
  &google_api_HttpRule_submsgs[0],
50
50
  &google_api_HttpRule__fields[0],
51
- UPB_SIZE(40, 80), 10, false, 8, 255,
51
+ UPB_SIZE(40, 80), 10, _UPB_MSGEXT_NONE, 8, 255,
52
52
  };
53
53
 
54
54
  static const upb_msglayout_field google_api_CustomHttpPattern__fields[2] = {
55
- {1, UPB_SIZE(0, 0), 0, 0, 9, _UPB_MODE_SCALAR},
56
- {2, UPB_SIZE(8, 16), 0, 0, 9, _UPB_MODE_SCALAR},
55
+ {1, UPB_SIZE(0, 0), 0, 0, 9, _UPB_MODE_SCALAR | (_UPB_REP_STRVIEW << _UPB_REP_SHIFT)},
56
+ {2, UPB_SIZE(8, 16), 0, 0, 9, _UPB_MODE_SCALAR | (_UPB_REP_STRVIEW << _UPB_REP_SHIFT)},
57
57
  };
58
58
 
59
59
  const upb_msglayout google_api_CustomHttpPattern_msginit = {
60
60
  NULL,
61
61
  &google_api_CustomHttpPattern__fields[0],
62
- UPB_SIZE(16, 32), 2, false, 2, 255,
62
+ UPB_SIZE(16, 32), 2, _UPB_MSGEXT_NONE, 2, 255,
63
+ };
64
+
65
+ static const upb_msglayout *messages_layout[3] = {
66
+ &google_api_Http_msginit,
67
+ &google_api_HttpRule_msginit,
68
+ &google_api_CustomHttpPattern_msginit,
69
+ };
70
+
71
+ const upb_msglayout_file google_api_http_proto_upb_file_layout = {
72
+ messages_layout,
73
+ NULL,
74
+ 3,
75
+ 0,
63
76
  };
64
77
 
65
78
  #include "upb/port_undef.inc"
@@ -219,6 +219,8 @@ UPB_INLINE void google_api_CustomHttpPattern_set_path(google_api_CustomHttpPatte
219
219
  *UPB_PTR_AT(msg, UPB_SIZE(8, 16), upb_strview) = value;
220
220
  }
221
221
 
222
+ extern const upb_msglayout_file google_api_http_proto_upb_file_layout;
223
+
222
224
  #ifdef __cplusplus
223
225
  } /* extern "C" */
224
226
  #endif
@@ -13,14 +13,25 @@
13
13
  #include "upb/port_def.inc"
14
14
 
15
15
  static const upb_msglayout_field google_protobuf_Any__fields[2] = {
16
- {1, UPB_SIZE(0, 0), 0, 0, 9, _UPB_MODE_SCALAR},
17
- {2, UPB_SIZE(8, 16), 0, 0, 12, _UPB_MODE_SCALAR},
16
+ {1, UPB_SIZE(0, 0), 0, 0, 9, _UPB_MODE_SCALAR | (_UPB_REP_STRVIEW << _UPB_REP_SHIFT)},
17
+ {2, UPB_SIZE(8, 16), 0, 0, 12, _UPB_MODE_SCALAR | (_UPB_REP_STRVIEW << _UPB_REP_SHIFT)},
18
18
  };
19
19
 
20
20
  const upb_msglayout google_protobuf_Any_msginit = {
21
21
  NULL,
22
22
  &google_protobuf_Any__fields[0],
23
- UPB_SIZE(16, 32), 2, false, 2, 255,
23
+ UPB_SIZE(16, 32), 2, _UPB_MSGEXT_NONE, 2, 255,
24
+ };
25
+
26
+ static const upb_msglayout *messages_layout[1] = {
27
+ &google_protobuf_Any_msginit,
28
+ };
29
+
30
+ const upb_msglayout_file google_protobuf_any_proto_upb_file_layout = {
31
+ messages_layout,
32
+ NULL,
33
+ 1,
34
+ 0,
24
35
  };
25
36
 
26
37
  #include "upb/port_undef.inc"
@@ -61,6 +61,8 @@ UPB_INLINE void google_protobuf_Any_set_value(google_protobuf_Any *msg, upb_strv
61
61
  *UPB_PTR_AT(msg, UPB_SIZE(8, 16), upb_strview) = value;
62
62
  }
63
63
 
64
+ extern const upb_msglayout_file google_protobuf_any_proto_upb_file_layout;
65
+
64
66
  #ifdef __cplusplus
65
67
  } /* extern "C" */
66
68
  #endif