grpc 1.30.2 → 1.35.0

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

Potentially problematic release.


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

Files changed (1231) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +1055 -18213
  3. data/etc/roots.pem +257 -573
  4. data/include/grpc/compression.h +1 -1
  5. data/include/grpc/grpc.h +15 -7
  6. data/include/grpc/grpc_security.h +254 -186
  7. data/include/grpc/grpc_security_constants.h +3 -0
  8. data/include/grpc/impl/codegen/README.md +22 -0
  9. data/include/grpc/impl/codegen/atm_windows.h +4 -0
  10. data/include/grpc/impl/codegen/byte_buffer.h +1 -1
  11. data/include/grpc/impl/codegen/grpc_types.h +16 -12
  12. data/include/grpc/impl/codegen/log.h +0 -2
  13. data/include/grpc/impl/codegen/port_platform.h +28 -88
  14. data/include/grpc/impl/codegen/sync_windows.h +4 -0
  15. data/include/grpc/slice_buffer.h +3 -3
  16. data/include/grpc/support/sync.h +3 -3
  17. data/include/grpc/support/time.h +7 -7
  18. data/src/core/ext/filters/client_channel/backend_metric.cc +14 -13
  19. data/src/core/ext/filters/client_channel/backup_poller.cc +3 -2
  20. data/src/core/ext/filters/client_channel/client_channel.cc +2991 -1559
  21. data/src/core/ext/filters/client_channel/client_channel.h +1 -5
  22. data/src/core/ext/filters/client_channel/client_channel_channelz.h +0 -3
  23. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +1 -1
  24. data/src/core/ext/filters/client_channel/config_selector.cc +58 -0
  25. data/src/core/ext/filters/client_channel/config_selector.h +125 -0
  26. data/src/core/ext/filters/client_channel/dynamic_filters.cc +186 -0
  27. data/src/core/ext/filters/client_channel/dynamic_filters.h +99 -0
  28. data/src/core/ext/filters/client_channel/global_subchannel_pool.cc +24 -2
  29. data/src/core/ext/filters/client_channel/health/health_check_client.cc +18 -8
  30. data/src/core/ext/filters/client_channel/health/health_check_client.h +4 -4
  31. data/src/core/ext/filters/client_channel/http_connect_handshaker.cc +13 -14
  32. data/src/core/ext/filters/client_channel/http_proxy.cc +27 -24
  33. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.cc +48 -35
  34. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.h +7 -5
  35. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc +10 -7
  36. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h +1 -1
  37. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +248 -214
  38. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc +0 -13
  39. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h +0 -3
  40. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc +1 -37
  41. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc +3 -1
  42. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +3 -3
  43. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +1 -1
  44. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +23 -17
  45. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +79 -30
  46. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +10 -9
  47. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +14 -36
  48. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +29 -19
  49. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +350 -130
  50. data/src/core/ext/filters/client_channel/lb_policy/xds/xds.h +52 -24
  51. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h +24 -0
  52. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +812 -0
  53. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +722 -0
  54. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +1262 -0
  55. data/src/core/ext/filters/client_channel/lb_policy.cc +6 -2
  56. data/src/core/ext/filters/client_channel/lb_policy.h +10 -7
  57. data/src/core/ext/filters/client_channel/lb_policy_registry.cc +12 -6
  58. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +14 -18
  59. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +1 -32
  60. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc +8 -6
  61. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +10 -8
  62. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +7 -5
  63. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +488 -65
  64. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +5 -0
  65. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc +1 -1
  66. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +1 -1
  67. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +13 -12
  68. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +4 -4
  69. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +1 -1
  70. data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +35 -28
  71. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +673 -69
  72. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h +28 -0
  73. data/src/core/ext/filters/client_channel/resolver.cc +3 -1
  74. data/src/core/ext/filters/client_channel/resolver.h +4 -1
  75. data/src/core/ext/filters/client_channel/resolver_factory.h +6 -6
  76. data/src/core/ext/filters/client_channel/resolver_registry.cc +49 -49
  77. data/src/core/ext/filters/client_channel/resolver_registry.h +2 -2
  78. data/src/core/ext/filters/client_channel/resolver_result_parsing.cc +35 -81
  79. data/src/core/ext/filters/client_channel/resolver_result_parsing.h +12 -11
  80. data/src/core/ext/filters/client_channel/retry_throttle.cc +5 -3
  81. data/src/core/ext/filters/client_channel/retry_throttle.h +4 -2
  82. data/src/core/ext/filters/client_channel/server_address.cc +120 -7
  83. data/src/core/ext/filters/client_channel/server_address.h +44 -21
  84. data/src/core/ext/filters/client_channel/service_config.cc +18 -13
  85. data/src/core/ext/filters/client_channel/service_config.h +8 -5
  86. data/src/core/ext/filters/client_channel/service_config_call_data.h +19 -1
  87. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +142 -0
  88. data/src/core/ext/filters/client_channel/service_config_parser.cc +8 -6
  89. data/src/core/ext/filters/client_channel/service_config_parser.h +8 -5
  90. data/src/core/ext/filters/client_channel/subchannel.cc +116 -88
  91. data/src/core/ext/filters/client_channel/subchannel.h +30 -24
  92. data/src/core/ext/filters/client_channel/subchannel_interface.h +41 -5
  93. data/src/core/ext/filters/client_channel/subchannel_pool_interface.h +6 -2
  94. data/src/core/ext/filters/deadline/deadline_filter.cc +87 -79
  95. data/src/core/ext/filters/deadline/deadline_filter.h +7 -11
  96. data/src/core/ext/filters/http/client/http_client_filter.cc +6 -6
  97. data/src/core/ext/filters/http/client_authority_filter.cc +6 -6
  98. data/src/core/ext/filters/http/http_filters_plugin.cc +8 -4
  99. data/src/core/ext/filters/http/message_compress/message_decompress_filter.cc +74 -33
  100. data/src/core/ext/filters/http/message_compress/message_decompress_filter.h +3 -1
  101. data/src/core/ext/filters/http/server/http_server_filter.cc +3 -3
  102. data/src/core/ext/filters/max_age/max_age_filter.cc +3 -2
  103. data/src/core/ext/filters/message_size/message_size_filter.cc +59 -82
  104. data/src/core/ext/filters/message_size/message_size_filter.h +8 -1
  105. data/src/core/ext/filters/workarounds/workaround_utils.cc +1 -1
  106. data/src/core/ext/transport/chttp2/client/authority.cc +3 -3
  107. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +87 -31
  108. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +19 -2
  109. data/src/core/ext/transport/chttp2/client/insecure/channel_create.cc +20 -8
  110. data/src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc +21 -10
  111. data/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc +34 -47
  112. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +478 -342
  113. data/src/core/ext/transport/chttp2/server/chttp2_server.h +7 -2
  114. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc +3 -3
  115. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc +19 -18
  116. data/src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc +9 -9
  117. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +7 -7
  118. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +284 -321
  119. data/src/core/ext/transport/chttp2/transport/flow_control.cc +33 -30
  120. data/src/core/ext/transport/chttp2/transport/flow_control.h +27 -19
  121. data/src/core/ext/transport/chttp2/transport/frame_data.cc +9 -12
  122. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +6 -7
  123. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +5 -6
  124. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +12 -13
  125. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +8 -9
  126. data/src/core/ext/transport/chttp2/transport/frame_settings.h +2 -1
  127. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +15 -18
  128. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +37 -37
  129. data/src/core/ext/transport/chttp2/transport/hpack_table.cc +13 -17
  130. data/src/core/ext/transport/chttp2/transport/internal.h +23 -2
  131. data/src/core/ext/transport/chttp2/transport/parsing.cc +52 -74
  132. data/src/core/ext/transport/chttp2/transport/writing.cc +17 -22
  133. data/src/core/ext/transport/inproc/inproc_transport.cc +87 -33
  134. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +1 -1
  135. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +1 -1
  136. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +10 -4
  137. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +244 -0
  138. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +865 -0
  139. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +74 -0
  140. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +253 -0
  141. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +458 -0
  142. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +1818 -0
  143. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +35 -0
  144. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +77 -0
  145. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +55 -0
  146. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +349 -0
  147. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +124 -0
  148. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +428 -0
  149. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +35 -0
  150. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +88 -0
  151. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +310 -0
  152. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +991 -0
  153. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +103 -0
  154. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +388 -0
  155. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +34 -0
  156. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +78 -0
  157. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +53 -0
  158. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +149 -0
  159. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +241 -0
  160. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +839 -0
  161. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +170 -0
  162. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +752 -0
  163. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +36 -0
  164. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +88 -0
  165. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +176 -0
  166. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +730 -0
  167. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +28 -0
  168. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +65 -0
  169. data/src/core/ext/upb-generated/envoy/{api/v2/core → config/core/v3}/socket_option.upb.c +8 -8
  170. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +95 -0
  171. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +36 -0
  172. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +92 -0
  173. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +91 -0
  174. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +243 -0
  175. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +91 -0
  176. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +305 -0
  177. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +112 -0
  178. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +367 -0
  179. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +33 -0
  180. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +73 -0
  181. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +128 -0
  182. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +512 -0
  183. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +155 -0
  184. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +591 -0
  185. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +41 -0
  186. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +107 -0
  187. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +178 -0
  188. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +662 -0
  189. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +63 -0
  190. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +220 -0
  191. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +900 -0
  192. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +3640 -0
  193. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +60 -0
  194. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +159 -0
  195. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +50 -0
  196. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +122 -0
  197. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +364 -0
  198. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +1475 -0
  199. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c +20 -0
  200. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +35 -0
  201. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +110 -0
  202. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +426 -0
  203. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +76 -0
  204. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +236 -0
  205. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +147 -0
  206. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +621 -0
  207. data/src/core/ext/upb-generated/envoy/{api/v2 → service/cluster/v3}/cds.upb.c +6 -7
  208. data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.h +56 -0
  209. data/src/core/ext/upb-generated/envoy/service/discovery/{v2 → v3}/ads.upb.c +6 -5
  210. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +56 -0
  211. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +139 -0
  212. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +487 -0
  213. data/src/core/ext/upb-generated/envoy/{api/v2 → service/endpoint/v3}/eds.upb.c +6 -7
  214. data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.h +56 -0
  215. data/src/core/ext/upb-generated/envoy/{api/v2 → service/listener/v3}/lds.upb.c +6 -7
  216. data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.h +56 -0
  217. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +55 -0
  218. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +151 -0
  219. data/src/core/ext/upb-generated/envoy/{api/v2 → service/route/v3}/rds.upb.c +6 -7
  220. data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h +56 -0
  221. data/src/core/ext/upb-generated/envoy/{api/v2 → service/route/v3}/srds.upb.c +6 -7
  222. data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h +56 -0
  223. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +47 -0
  224. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +128 -0
  225. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +35 -0
  226. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +84 -0
  227. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +34 -0
  228. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +78 -0
  229. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +64 -0
  230. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +166 -0
  231. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +54 -0
  232. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +146 -0
  233. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +63 -0
  234. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +207 -0
  235. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +88 -0
  236. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +301 -0
  237. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +90 -0
  238. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +283 -0
  239. data/src/core/ext/upb-generated/envoy/type/{http.upb.c → v3/http.upb.c} +2 -2
  240. data/src/core/ext/upb-generated/envoy/type/{http.upb.h → v3/http.upb.h} +9 -9
  241. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +40 -0
  242. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +99 -0
  243. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +51 -0
  244. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +130 -0
  245. data/src/core/ext/upb-generated/envoy/type/{semantic_version.upb.c → v3/semantic_version.upb.c} +7 -6
  246. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +68 -0
  247. data/src/core/ext/upb-generated/google/api/annotations.upb.h +1 -1
  248. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +242 -0
  249. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +830 -0
  250. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +234 -0
  251. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +842 -0
  252. data/src/core/ext/upb-generated/google/api/http.upb.c +3 -3
  253. data/src/core/ext/upb-generated/google/api/http.upb.h +52 -32
  254. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +1 -1
  255. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +12 -6
  256. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +106 -106
  257. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +688 -499
  258. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +1 -1
  259. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +12 -6
  260. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +1 -1
  261. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +8 -2
  262. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +5 -5
  263. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +55 -57
  264. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +1 -1
  265. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +12 -6
  266. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +9 -9
  267. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +82 -28
  268. data/src/core/ext/upb-generated/google/rpc/status.upb.c +1 -1
  269. data/src/core/ext/upb-generated/google/rpc/status.upb.h +17 -10
  270. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +5 -5
  271. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +40 -45
  272. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +43 -43
  273. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +236 -184
  274. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +5 -5
  275. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +29 -13
  276. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +2 -2
  277. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +19 -7
  278. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +17 -17
  279. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +122 -62
  280. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +3 -3
  281. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +30 -12
  282. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +31 -0
  283. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +64 -0
  284. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +1 -1
  285. data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +2 -2
  286. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +12 -6
  287. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +27 -0
  288. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +60 -0
  289. data/src/core/ext/upb-generated/udpa/core/v1/authority.upb.c +28 -0
  290. data/src/core/ext/upb-generated/udpa/core/v1/authority.upb.h +60 -0
  291. data/src/core/ext/upb-generated/udpa/core/v1/collection_entry.upb.c +52 -0
  292. data/src/core/ext/upb-generated/udpa/core/v1/collection_entry.upb.h +143 -0
  293. data/src/core/ext/upb-generated/udpa/core/v1/context_params.upb.c +42 -0
  294. data/src/core/ext/upb-generated/udpa/core/v1/context_params.upb.h +84 -0
  295. data/src/core/ext/upb-generated/udpa/core/v1/resource.upb.c +36 -0
  296. data/src/core/ext/upb-generated/udpa/core/v1/resource.upb.h +94 -0
  297. data/src/core/ext/upb-generated/udpa/core/v1/resource_locator.upb.c +54 -0
  298. data/src/core/ext/upb-generated/udpa/core/v1/resource_locator.upb.h +173 -0
  299. data/src/core/ext/upb-generated/udpa/core/v1/resource_name.upb.c +36 -0
  300. data/src/core/ext/upb-generated/udpa/core/v1/resource_name.upb.h +92 -0
  301. data/src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c +9 -9
  302. data/src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h +48 -68
  303. data/src/core/ext/upb-generated/validate/validate.upb.c +68 -68
  304. data/src/core/ext/upb-generated/validate/validate.upb.h +727 -587
  305. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c +38 -0
  306. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h +30 -0
  307. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c +41 -0
  308. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h +35 -0
  309. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +254 -0
  310. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h +105 -0
  311. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +100 -0
  312. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +45 -0
  313. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +558 -0
  314. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +145 -0
  315. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c +53 -0
  316. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h +35 -0
  317. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +133 -0
  318. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.h +35 -0
  319. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +127 -0
  320. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +65 -0
  321. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c +56 -0
  322. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.h +35 -0
  323. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +266 -0
  324. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.h +125 -0
  325. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +143 -0
  326. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +55 -0
  327. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c +56 -0
  328. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.h +35 -0
  329. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +66 -0
  330. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +40 -0
  331. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c +263 -0
  332. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.h +100 -0
  333. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +233 -0
  334. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +70 -0
  335. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c +56 -0
  336. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.h +35 -0
  337. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +228 -0
  338. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.h +80 -0
  339. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c +46 -0
  340. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.h +35 -0
  341. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +59 -0
  342. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +35 -0
  343. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +55 -0
  344. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.h +35 -0
  345. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c +110 -0
  346. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.h +50 -0
  347. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +113 -0
  348. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +50 -0
  349. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c +146 -0
  350. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.h +55 -0
  351. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c +50 -0
  352. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.h +35 -0
  353. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +190 -0
  354. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +55 -0
  355. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +185 -0
  356. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h +65 -0
  357. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +62 -0
  358. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h +40 -0
  359. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +97 -0
  360. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +40 -0
  361. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +915 -0
  362. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +280 -0
  363. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c +71 -0
  364. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h +45 -0
  365. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c +64 -0
  366. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.h +40 -0
  367. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +511 -0
  368. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +115 -0
  369. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +48 -0
  370. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +30 -0
  371. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +166 -0
  372. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +55 -0
  373. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +105 -0
  374. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +45 -0
  375. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +249 -0
  376. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +60 -0
  377. data/src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.c +72 -0
  378. data/src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.h +35 -0
  379. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c +60 -0
  380. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.h +35 -0
  381. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +152 -0
  382. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +60 -0
  383. data/src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.c +83 -0
  384. data/src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.h +35 -0
  385. data/src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.c +82 -0
  386. data/src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.h +35 -0
  387. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c +83 -0
  388. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h +40 -0
  389. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c +86 -0
  390. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h +35 -0
  391. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c +74 -0
  392. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h +35 -0
  393. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c +64 -0
  394. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h +40 -0
  395. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c +54 -0
  396. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h +35 -0
  397. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c +53 -0
  398. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h +35 -0
  399. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +73 -0
  400. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h +45 -0
  401. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c +72 -0
  402. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h +40 -0
  403. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c +81 -0
  404. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h +45 -0
  405. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c +92 -0
  406. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h +65 -0
  407. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c +95 -0
  408. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h +55 -0
  409. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c +34 -0
  410. data/src/core/ext/{upb-generated/gogoproto/gogo.upb.h → upbdefs-generated/envoy/type/v3/http.upbdefs.h} +10 -10
  411. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c +59 -0
  412. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.h +40 -0
  413. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c +54 -0
  414. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.h +45 -0
  415. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c +47 -0
  416. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.h +35 -0
  417. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c +40 -0
  418. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.h +30 -0
  419. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.c +61 -0
  420. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.h +45 -0
  421. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c +39 -0
  422. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.h +35 -0
  423. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +386 -0
  424. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.h +165 -0
  425. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c +40 -0
  426. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.h +35 -0
  427. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c +37 -0
  428. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.h +35 -0
  429. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c +65 -0
  430. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.h +50 -0
  431. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c +40 -0
  432. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.h +35 -0
  433. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c +66 -0
  434. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.h +75 -0
  435. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c +42 -0
  436. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.h +35 -0
  437. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c +70 -0
  438. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.h +45 -0
  439. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c +56 -0
  440. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.h +35 -0
  441. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c +33 -0
  442. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.h +30 -0
  443. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c +49 -0
  444. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.h +35 -0
  445. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c +43 -0
  446. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.h +35 -0
  447. data/src/core/ext/upbdefs-generated/udpa/core/v1/authority.upbdefs.c +42 -0
  448. data/src/core/ext/upbdefs-generated/udpa/core/v1/authority.upbdefs.h +35 -0
  449. data/src/core/ext/upbdefs-generated/udpa/core/v1/collection_entry.upbdefs.c +62 -0
  450. data/src/core/ext/upbdefs-generated/udpa/core/v1/collection_entry.upbdefs.h +40 -0
  451. data/src/core/ext/upbdefs-generated/udpa/core/v1/context_params.upbdefs.c +45 -0
  452. data/src/core/ext/upbdefs-generated/udpa/core/v1/context_params.upbdefs.h +40 -0
  453. data/src/core/ext/upbdefs-generated/udpa/core/v1/resource.upbdefs.c +49 -0
  454. data/src/core/ext/upbdefs-generated/udpa/core/v1/resource.upbdefs.h +35 -0
  455. data/src/core/ext/upbdefs-generated/udpa/core/v1/resource_locator.upbdefs.c +68 -0
  456. data/src/core/ext/upbdefs-generated/udpa/core/v1/resource_locator.upbdefs.h +40 -0
  457. data/src/core/ext/upbdefs-generated/udpa/core/v1/resource_name.upbdefs.c +51 -0
  458. data/src/core/ext/upbdefs-generated/udpa/core/v1/resource_name.upbdefs.h +35 -0
  459. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c +307 -0
  460. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.h +145 -0
  461. data/src/core/ext/xds/certificate_provider_factory.h +61 -0
  462. data/src/core/ext/xds/certificate_provider_registry.cc +103 -0
  463. data/src/core/ext/xds/certificate_provider_registry.h +57 -0
  464. data/src/core/ext/xds/certificate_provider_store.cc +87 -0
  465. data/src/core/ext/xds/certificate_provider_store.h +112 -0
  466. data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +144 -0
  467. data/src/core/ext/xds/file_watcher_certificate_provider_factory.h +69 -0
  468. data/src/core/ext/xds/xds_api.cc +2308 -0
  469. data/src/core/ext/xds/xds_api.h +469 -0
  470. data/src/core/ext/{filters/client_channel/xds → xds}/xds_bootstrap.cc +220 -42
  471. data/src/core/ext/{filters/client_channel/xds → xds}/xds_bootstrap.h +31 -11
  472. data/src/core/ext/xds/xds_certificate_provider.cc +299 -0
  473. data/src/core/ext/xds/xds_certificate_provider.h +112 -0
  474. data/src/core/ext/{filters/client_channel/xds → xds}/xds_channel_args.h +9 -6
  475. data/src/core/ext/{filters/client_channel/xds → xds}/xds_client.cc +661 -791
  476. data/src/core/ext/{filters/client_channel/xds → xds}/xds_client.h +126 -99
  477. data/src/core/ext/{filters/client_channel/xds → xds}/xds_client_stats.cc +61 -18
  478. data/src/core/ext/{filters/client_channel/xds → xds}/xds_client_stats.h +48 -20
  479. data/src/core/ext/xds/xds_server_config_fetcher.cc +131 -0
  480. data/src/core/lib/channel/channel_args.cc +9 -8
  481. data/src/core/lib/channel/channel_args.h +0 -1
  482. data/src/core/lib/channel/channel_trace.cc +6 -8
  483. data/src/core/lib/channel/channel_trace.h +1 -1
  484. data/src/core/lib/channel/channelz.cc +41 -88
  485. data/src/core/lib/channel/channelz.h +14 -23
  486. data/src/core/lib/channel/channelz_registry.cc +15 -12
  487. data/src/core/lib/channel/channelz_registry.h +3 -1
  488. data/src/core/lib/channel/handshaker.cc +2 -2
  489. data/src/core/lib/channel/handshaker.h +2 -2
  490. data/src/core/lib/compression/compression.cc +8 -4
  491. data/src/core/lib/compression/compression_args.cc +3 -2
  492. data/src/core/lib/compression/compression_internal.cc +10 -5
  493. data/src/core/lib/compression/compression_internal.h +2 -1
  494. data/src/core/lib/compression/stream_compression_identity.cc +1 -3
  495. data/src/core/lib/debug/stats.h +2 -2
  496. data/src/core/lib/debug/stats_data.cc +1 -0
  497. data/src/core/lib/debug/stats_data.h +13 -13
  498. data/src/core/lib/gpr/alloc.cc +3 -2
  499. data/src/core/lib/gpr/cpu_iphone.cc +10 -2
  500. data/src/core/lib/gpr/log.cc +53 -16
  501. data/src/core/lib/gpr/log_linux.cc +23 -9
  502. data/src/core/lib/gpr/log_posix.cc +19 -7
  503. data/src/core/lib/gpr/log_windows.cc +18 -4
  504. data/src/core/lib/gpr/murmur_hash.cc +1 -1
  505. data/src/core/lib/gpr/spinlock.h +10 -2
  506. data/src/core/lib/gpr/string.cc +33 -31
  507. data/src/core/lib/gpr/string.h +9 -8
  508. data/src/core/lib/gpr/sync.cc +4 -4
  509. data/src/core/lib/gpr/sync_posix.cc +2 -8
  510. data/src/core/lib/gpr/time.cc +12 -12
  511. data/src/core/lib/gpr/time_precise.cc +5 -2
  512. data/src/core/lib/gpr/time_precise.h +6 -2
  513. data/src/core/lib/gpr/tls.h +4 -0
  514. data/src/core/lib/gpr/tls_msvc.h +2 -0
  515. data/src/core/lib/gpr/tls_stdcpp.h +48 -0
  516. data/src/core/lib/gpr/useful.h +5 -4
  517. data/src/core/lib/gprpp/arena.h +3 -2
  518. data/src/core/lib/gprpp/dual_ref_counted.h +331 -0
  519. data/src/core/lib/gprpp/examine_stack.cc +43 -0
  520. data/src/core/lib/gprpp/examine_stack.h +46 -0
  521. data/src/core/lib/gprpp/fork.cc +2 -2
  522. data/src/core/lib/gprpp/global_config_env.cc +8 -6
  523. data/src/core/lib/gprpp/manual_constructor.h +1 -1
  524. data/src/core/lib/gprpp/orphanable.h +4 -8
  525. data/src/core/lib/gprpp/ref_counted.h +91 -68
  526. data/src/core/lib/gprpp/ref_counted_ptr.h +166 -7
  527. data/src/core/lib/gprpp/stat.h +38 -0
  528. data/src/core/lib/gprpp/stat_posix.cc +49 -0
  529. data/src/core/lib/gprpp/stat_windows.cc +48 -0
  530. data/src/core/lib/gprpp/thd.h +2 -2
  531. data/src/core/lib/gprpp/thd_posix.cc +42 -37
  532. data/src/core/lib/gprpp/thd_windows.cc +3 -1
  533. data/src/core/lib/http/httpcli.cc +14 -11
  534. data/src/core/lib/http/httpcli.h +2 -3
  535. data/src/core/lib/http/httpcli_security_connector.cc +6 -6
  536. data/src/core/lib/http/parser.cc +47 -27
  537. data/src/core/lib/iomgr/call_combiner.cc +8 -5
  538. data/src/core/lib/iomgr/cfstream_handle.cc +1 -0
  539. data/src/core/lib/iomgr/combiner.cc +2 -1
  540. data/src/core/lib/iomgr/endpoint.cc +5 -1
  541. data/src/core/lib/iomgr/endpoint.h +8 -4
  542. data/src/core/lib/iomgr/endpoint_cfstream.cc +36 -11
  543. data/src/core/lib/iomgr/endpoint_pair_posix.cc +10 -10
  544. data/src/core/lib/iomgr/error.cc +17 -12
  545. data/src/core/lib/iomgr/error_cfstream.cc +9 -8
  546. data/src/core/lib/iomgr/error_internal.h +1 -1
  547. data/src/core/lib/iomgr/ev_epoll1_linux.cc +25 -19
  548. data/src/core/lib/iomgr/ev_epollex_linux.cc +40 -38
  549. data/src/core/lib/iomgr/ev_poll_posix.cc +15 -12
  550. data/src/core/lib/iomgr/exec_ctx.cc +1 -1
  551. data/src/core/lib/iomgr/exec_ctx.h +16 -12
  552. data/src/core/lib/iomgr/executor/mpmcqueue.h +5 -5
  553. data/src/core/lib/iomgr/executor/threadpool.h +4 -4
  554. data/src/core/lib/iomgr/executor.cc +2 -1
  555. data/src/core/lib/iomgr/executor.h +1 -1
  556. data/src/core/lib/iomgr/iomgr.cc +1 -1
  557. data/src/core/lib/iomgr/is_epollexclusive_available.cc +14 -0
  558. data/src/core/lib/iomgr/load_file.h +1 -1
  559. data/src/core/lib/iomgr/lockfree_event.cc +19 -14
  560. data/src/core/lib/iomgr/lockfree_event.h +2 -2
  561. data/src/core/{ext/filters/client_channel → lib/iomgr}/parse_address.cc +128 -44
  562. data/src/core/lib/iomgr/parse_address.h +77 -0
  563. data/src/core/lib/iomgr/poller/eventmanager_libuv.cc +2 -1
  564. data/src/core/lib/iomgr/poller/eventmanager_libuv.h +1 -1
  565. data/src/core/lib/iomgr/pollset_set_custom.cc +1 -1
  566. data/src/core/lib/iomgr/port.h +1 -21
  567. data/src/core/lib/iomgr/python_util.h +4 -4
  568. data/src/core/lib/iomgr/resolve_address.cc +4 -4
  569. data/src/core/lib/iomgr/resolve_address_custom.cc +13 -18
  570. data/src/core/lib/iomgr/resolve_address_posix.cc +1 -5
  571. data/src/core/lib/iomgr/resolve_address_windows.cc +8 -8
  572. data/src/core/lib/iomgr/resource_quota.cc +34 -31
  573. data/src/core/lib/iomgr/sockaddr_utils.cc +19 -16
  574. data/src/core/lib/iomgr/sockaddr_utils.h +4 -3
  575. data/src/core/lib/iomgr/socket_factory_posix.cc +3 -2
  576. data/src/core/lib/iomgr/socket_mutator.cc +3 -2
  577. data/src/core/lib/iomgr/socket_utils_common_posix.cc +95 -55
  578. data/src/core/lib/iomgr/socket_windows.cc +4 -5
  579. data/src/core/lib/iomgr/tcp_client.cc +3 -3
  580. data/src/core/lib/iomgr/tcp_client_cfstream.cc +9 -11
  581. data/src/core/lib/iomgr/tcp_client_custom.cc +13 -15
  582. data/src/core/lib/iomgr/tcp_client_posix.cc +27 -36
  583. data/src/core/lib/iomgr/tcp_client_windows.cc +9 -9
  584. data/src/core/lib/iomgr/tcp_custom.cc +54 -33
  585. data/src/core/lib/iomgr/tcp_custom.h +1 -1
  586. data/src/core/lib/iomgr/tcp_posix.cc +43 -21
  587. data/src/core/lib/iomgr/tcp_server.cc +3 -4
  588. data/src/core/lib/iomgr/tcp_server.h +7 -5
  589. data/src/core/lib/iomgr/tcp_server_custom.cc +34 -36
  590. data/src/core/lib/iomgr/tcp_server_posix.cc +34 -41
  591. data/src/core/lib/iomgr/tcp_server_utils_posix.h +3 -4
  592. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +5 -7
  593. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +4 -9
  594. data/src/core/lib/iomgr/tcp_server_windows.cc +16 -16
  595. data/src/core/lib/iomgr/tcp_windows.cc +26 -10
  596. data/src/core/lib/iomgr/timer_custom.cc +5 -5
  597. data/src/core/lib/iomgr/timer_generic.cc +16 -15
  598. data/src/core/lib/iomgr/timer_manager.cc +2 -2
  599. data/src/core/lib/iomgr/udp_server.cc +25 -25
  600. data/src/core/lib/iomgr/udp_server.h +6 -4
  601. data/src/core/lib/iomgr/unix_sockets_posix.cc +36 -30
  602. data/src/core/lib/iomgr/unix_sockets_posix.h +8 -1
  603. data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +12 -2
  604. data/src/core/lib/iomgr/wakeup_fd_pipe.cc +2 -2
  605. data/src/core/lib/json/json.h +12 -2
  606. data/src/core/lib/json/json_reader.cc +28 -25
  607. data/src/core/lib/json/json_util.cc +58 -0
  608. data/src/core/lib/json/json_util.h +204 -0
  609. data/src/core/lib/json/json_writer.cc +2 -1
  610. data/src/core/lib/security/authorization/authorization_engine.cc +177 -0
  611. data/src/core/lib/security/authorization/authorization_engine.h +84 -0
  612. data/src/core/lib/security/authorization/evaluate_args.cc +148 -0
  613. data/src/core/lib/security/authorization/evaluate_args.h +59 -0
  614. data/src/core/lib/security/authorization/mock_cel/activation.h +57 -0
  615. data/src/core/lib/security/authorization/mock_cel/cel_expr_builder_factory.h +44 -0
  616. data/src/core/lib/security/authorization/mock_cel/cel_expression.h +69 -0
  617. data/src/core/lib/security/authorization/mock_cel/cel_value.h +97 -0
  618. data/src/core/lib/security/authorization/mock_cel/evaluator_core.h +67 -0
  619. data/src/core/lib/security/authorization/mock_cel/flat_expr_builder.h +57 -0
  620. data/src/core/lib/security/context/security_context.cc +4 -3
  621. data/src/core/lib/security/context/security_context.h +3 -1
  622. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +1 -1
  623. data/src/core/lib/security/credentials/credentials.cc +7 -7
  624. data/src/core/lib/security/credentials/credentials.h +8 -6
  625. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +413 -0
  626. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +80 -0
  627. data/src/core/lib/security/credentials/external/aws_request_signer.cc +213 -0
  628. data/src/core/lib/security/credentials/external/aws_request_signer.h +72 -0
  629. data/src/core/lib/security/credentials/external/external_account_credentials.cc +497 -0
  630. data/src/core/lib/security/credentials/external/external_account_credentials.h +120 -0
  631. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +135 -0
  632. data/src/core/lib/security/credentials/external/file_external_account_credentials.h +48 -0
  633. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +213 -0
  634. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +58 -0
  635. data/src/core/lib/security/credentials/fake/fake_credentials.cc +2 -1
  636. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +8 -6
  637. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +82 -55
  638. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +64 -0
  639. data/src/core/lib/security/credentials/jwt/json_token.cc +6 -3
  640. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +7 -4
  641. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +4 -3
  642. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +8 -4
  643. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +58 -74
  644. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +5 -4
  645. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +7 -7
  646. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +25 -5
  647. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +11 -1
  648. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +346 -0
  649. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h +213 -0
  650. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +399 -0
  651. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +138 -0
  652. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +78 -150
  653. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +65 -185
  654. data/src/core/lib/security/credentials/tls/tls_credentials.cc +16 -12
  655. data/src/core/lib/security/credentials/tls/tls_credentials.h +2 -2
  656. data/src/core/lib/security/credentials/tls/tls_utils.cc +91 -0
  657. data/src/core/lib/security/credentials/tls/tls_utils.h +38 -0
  658. data/src/core/lib/security/credentials/xds/xds_credentials.cc +175 -0
  659. data/src/core/lib/security/credentials/xds/xds_credentials.h +69 -0
  660. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +1 -1
  661. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +20 -25
  662. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +121 -0
  663. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +87 -0
  664. data/src/core/lib/security/security_connector/load_system_roots.h +4 -0
  665. data/src/core/lib/security/security_connector/load_system_roots_linux.h +2 -0
  666. data/src/core/lib/security/security_connector/local/local_security_connector.cc +3 -3
  667. data/src/core/lib/security/security_connector/security_connector.cc +6 -3
  668. data/src/core/lib/security/security_connector/security_connector.h +5 -3
  669. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +22 -15
  670. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +5 -0
  671. data/src/core/lib/security/security_connector/ssl_utils.cc +46 -25
  672. data/src/core/lib/security/security_connector/ssl_utils.h +25 -21
  673. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +359 -293
  674. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +105 -61
  675. data/src/core/lib/security/transport/client_auth_filter.cc +10 -9
  676. data/src/core/lib/security/transport/secure_endpoint.cc +9 -3
  677. data/src/core/lib/security/transport/security_handshaker.cc +3 -3
  678. data/src/core/lib/security/transport/server_auth_filter.cc +2 -1
  679. data/src/core/lib/security/util/json_util.cc +12 -13
  680. data/src/core/lib/security/util/json_util.h +1 -0
  681. data/src/core/lib/slice/slice.cc +45 -5
  682. data/src/core/lib/slice/slice_buffer.cc +2 -1
  683. data/src/core/lib/slice/slice_intern.cc +6 -7
  684. data/src/core/lib/slice/slice_internal.h +3 -2
  685. data/src/core/lib/surface/call.cc +93 -85
  686. data/src/core/lib/surface/call.h +2 -1
  687. data/src/core/lib/surface/call_details.cc +8 -8
  688. data/src/core/lib/surface/channel.cc +53 -61
  689. data/src/core/lib/surface/channel.h +21 -5
  690. data/src/core/lib/surface/channel_init.cc +1 -1
  691. data/src/core/lib/surface/completion_queue.cc +30 -29
  692. data/src/core/lib/surface/completion_queue.h +16 -16
  693. data/src/core/lib/surface/init.cc +32 -14
  694. data/src/core/lib/surface/lame_client.cc +20 -46
  695. data/src/core/lib/surface/lame_client.h +4 -0
  696. data/src/core/lib/surface/server.cc +1144 -1343
  697. data/src/core/lib/surface/server.h +400 -70
  698. data/src/core/lib/surface/validate_metadata.h +3 -0
  699. data/src/core/lib/surface/version.cc +2 -2
  700. data/src/core/lib/transport/authority_override.cc +40 -0
  701. data/src/core/lib/transport/authority_override.h +37 -0
  702. data/src/core/lib/transport/bdp_estimator.cc +1 -1
  703. data/src/core/lib/transport/bdp_estimator.h +2 -1
  704. data/src/core/lib/transport/byte_stream.h +3 -3
  705. data/src/core/lib/transport/connectivity_state.cc +18 -13
  706. data/src/core/lib/transport/connectivity_state.h +26 -12
  707. data/src/core/lib/transport/error_utils.cc +13 -0
  708. data/src/core/lib/transport/error_utils.h +7 -1
  709. data/src/core/lib/transport/metadata.cc +11 -1
  710. data/src/core/lib/transport/metadata.h +2 -2
  711. data/src/core/lib/transport/metadata_batch.h +4 -4
  712. data/src/core/lib/transport/static_metadata.cc +296 -277
  713. data/src/core/lib/transport/static_metadata.h +80 -73
  714. data/src/core/lib/transport/status_metadata.cc +4 -3
  715. data/src/core/lib/transport/timeout_encoding.cc +4 -4
  716. data/src/core/lib/transport/transport.cc +5 -3
  717. data/src/core/lib/transport/transport.h +21 -8
  718. data/src/core/lib/uri/uri_parser.cc +135 -258
  719. data/src/core/lib/uri/uri_parser.h +58 -20
  720. data/src/core/plugin_registry/grpc_plugin_registry.cc +45 -20
  721. data/src/core/tsi/alts/crypt/gsec.cc +5 -4
  722. data/src/core/tsi/alts/frame_protector/frame_handler.cc +8 -6
  723. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +24 -14
  724. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +51 -26
  725. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +2 -0
  726. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc +8 -6
  727. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +4 -4
  728. data/src/core/tsi/fake_transport_security.cc +6 -3
  729. data/src/core/tsi/local_transport_security.cc +5 -1
  730. data/src/core/tsi/local_transport_security.h +6 -7
  731. data/src/core/tsi/ssl/session_cache/ssl_session.h +3 -0
  732. data/src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc +1 -1
  733. data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +4 -1
  734. data/src/core/tsi/ssl_transport_security.cc +177 -66
  735. data/src/core/tsi/ssl_transport_security.h +23 -8
  736. data/src/core/tsi/transport_security.cc +10 -8
  737. data/src/core/tsi/transport_security_interface.h +6 -1
  738. data/src/ruby/bin/math_services_pb.rb +4 -4
  739. data/src/ruby/ext/grpc/extconf.rb +6 -3
  740. data/src/ruby/ext/grpc/rb_call.c +3 -2
  741. data/src/ruby/ext/grpc/rb_call.h +4 -0
  742. data/src/ruby/ext/grpc/rb_call_credentials.c +54 -10
  743. data/src/ruby/ext/grpc/rb_channel_credentials.c +9 -0
  744. data/src/ruby/ext/grpc/rb_event_thread.c +2 -0
  745. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +38 -18
  746. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +74 -44
  747. data/src/ruby/lib/grpc/generic/client_stub.rb +1 -1
  748. data/src/ruby/lib/grpc/generic/interceptors.rb +1 -1
  749. data/src/ruby/lib/grpc/version.rb +1 -1
  750. data/src/ruby/pb/grpc/health/v1/health_services_pb.rb +2 -2
  751. data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +33 -0
  752. data/src/ruby/pb/src/proto/grpc/testing/test_services_pb.rb +46 -12
  753. data/src/ruby/spec/channel_credentials_spec.rb +10 -0
  754. data/src/ruby/spec/generic/active_call_spec.rb +19 -8
  755. data/src/ruby/spec/pb/codegen/grpc/testing/same_package_service_name.proto +27 -0
  756. data/src/ruby/spec/pb/codegen/grpc/testing/same_ruby_package_service_name.proto +29 -0
  757. data/src/ruby/spec/pb/codegen/package_option_spec.rb +22 -6
  758. data/src/ruby/spec/user_agent_spec.rb +74 -0
  759. data/third_party/abseil-cpp/absl/algorithm/container.h +1764 -0
  760. data/third_party/abseil-cpp/absl/base/attributes.h +99 -38
  761. data/third_party/abseil-cpp/absl/base/call_once.h +1 -1
  762. data/third_party/abseil-cpp/absl/base/casts.h +9 -6
  763. data/third_party/abseil-cpp/absl/base/config.h +60 -17
  764. data/third_party/abseil-cpp/absl/base/dynamic_annotations.h +428 -335
  765. data/third_party/abseil-cpp/absl/base/internal/bits.h +17 -16
  766. data/third_party/abseil-cpp/absl/base/internal/direct_mmap.h +166 -0
  767. data/third_party/abseil-cpp/absl/base/internal/dynamic_annotations.h +398 -0
  768. data/third_party/abseil-cpp/absl/base/internal/exponential_biased.cc +93 -0
  769. data/third_party/abseil-cpp/absl/base/internal/exponential_biased.h +130 -0
  770. data/third_party/abseil-cpp/absl/base/internal/invoke.h +4 -4
  771. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.cc +620 -0
  772. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.h +126 -0
  773. data/third_party/abseil-cpp/absl/base/internal/low_level_scheduling.h +29 -1
  774. data/third_party/abseil-cpp/absl/base/internal/raw_logging.cc +2 -2
  775. data/third_party/abseil-cpp/absl/base/internal/raw_logging.h +7 -5
  776. data/third_party/abseil-cpp/absl/base/internal/spinlock.cc +25 -38
  777. data/third_party/abseil-cpp/absl/base/internal/spinlock.h +19 -25
  778. data/third_party/abseil-cpp/absl/base/internal/spinlock_linux.inc +8 -0
  779. data/third_party/abseil-cpp/absl/base/internal/sysinfo.cc +28 -5
  780. data/third_party/abseil-cpp/absl/base/internal/sysinfo.h +8 -0
  781. data/third_party/abseil-cpp/absl/base/internal/tsan_mutex_interface.h +3 -1
  782. data/third_party/abseil-cpp/absl/base/internal/unaligned_access.h +2 -2
  783. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h +3 -3
  784. data/third_party/abseil-cpp/absl/base/macros.h +36 -109
  785. data/third_party/abseil-cpp/absl/base/optimization.h +61 -1
  786. data/third_party/abseil-cpp/absl/base/options.h +31 -4
  787. data/third_party/abseil-cpp/absl/base/policy_checks.h +1 -1
  788. data/third_party/abseil-cpp/absl/base/thread_annotations.h +94 -39
  789. data/third_party/abseil-cpp/absl/container/fixed_array.h +532 -0
  790. data/third_party/abseil-cpp/absl/container/flat_hash_map.h +606 -0
  791. data/third_party/abseil-cpp/absl/container/flat_hash_set.h +504 -0
  792. data/third_party/abseil-cpp/absl/container/inlined_vector.h +33 -36
  793. data/third_party/abseil-cpp/absl/container/internal/common.h +206 -0
  794. data/third_party/abseil-cpp/absl/container/internal/compressed_tuple.h +33 -8
  795. data/third_party/abseil-cpp/absl/container/internal/container_memory.h +460 -0
  796. data/third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h +161 -0
  797. data/third_party/abseil-cpp/absl/container/internal/hash_policy_traits.h +208 -0
  798. data/third_party/abseil-cpp/absl/container/internal/hashtable_debug_hooks.h +85 -0
  799. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +270 -0
  800. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +321 -0
  801. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler_force_weak_definition.cc +30 -0
  802. data/third_party/abseil-cpp/absl/container/internal/have_sse.h +50 -0
  803. data/third_party/abseil-cpp/absl/container/internal/layout.h +743 -0
  804. data/third_party/abseil-cpp/absl/container/internal/raw_hash_map.h +197 -0
  805. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +48 -0
  806. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +1903 -0
  807. data/third_party/abseil-cpp/absl/debugging/internal/address_is_readable.cc +139 -0
  808. data/third_party/abseil-cpp/absl/debugging/internal/address_is_readable.h +32 -0
  809. data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +1945 -0
  810. data/third_party/abseil-cpp/absl/debugging/internal/demangle.h +71 -0
  811. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.cc +382 -0
  812. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +134 -0
  813. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +196 -0
  814. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_arm-inl.inc +134 -0
  815. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_config.h +89 -0
  816. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_generic-inl.inc +108 -0
  817. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_powerpc-inl.inc +248 -0
  818. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_unimplemented-inl.inc +24 -0
  819. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_win32-inl.inc +93 -0
  820. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +346 -0
  821. data/third_party/abseil-cpp/absl/debugging/internal/symbolize.h +149 -0
  822. data/third_party/abseil-cpp/absl/debugging/internal/vdso_support.cc +173 -0
  823. data/third_party/abseil-cpp/absl/debugging/internal/vdso_support.h +158 -0
  824. data/third_party/abseil-cpp/absl/debugging/stacktrace.cc +140 -0
  825. data/third_party/abseil-cpp/absl/debugging/stacktrace.h +231 -0
  826. data/third_party/abseil-cpp/absl/debugging/symbolize.cc +36 -0
  827. data/third_party/abseil-cpp/absl/debugging/symbolize.h +99 -0
  828. data/third_party/abseil-cpp/absl/debugging/symbolize_darwin.inc +101 -0
  829. data/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +1560 -0
  830. data/third_party/abseil-cpp/absl/debugging/symbolize_unimplemented.inc +40 -0
  831. data/third_party/abseil-cpp/absl/debugging/symbolize_win32.inc +81 -0
  832. data/third_party/abseil-cpp/absl/functional/bind_front.h +184 -0
  833. data/third_party/abseil-cpp/absl/functional/function_ref.h +139 -0
  834. data/third_party/abseil-cpp/absl/functional/internal/front_binder.h +95 -0
  835. data/third_party/abseil-cpp/absl/functional/internal/function_ref.h +106 -0
  836. data/third_party/abseil-cpp/absl/hash/hash.h +325 -0
  837. data/third_party/abseil-cpp/absl/hash/internal/city.cc +346 -0
  838. data/third_party/abseil-cpp/absl/hash/internal/city.h +96 -0
  839. data/third_party/abseil-cpp/absl/hash/internal/hash.cc +55 -0
  840. data/third_party/abseil-cpp/absl/hash/internal/hash.h +996 -0
  841. data/third_party/abseil-cpp/absl/memory/memory.h +4 -0
  842. data/third_party/abseil-cpp/absl/meta/type_traits.h +2 -8
  843. data/third_party/abseil-cpp/absl/numeric/int128.cc +13 -27
  844. data/third_party/abseil-cpp/absl/numeric/int128.h +16 -15
  845. data/third_party/abseil-cpp/absl/status/internal/status_internal.h +51 -0
  846. data/third_party/abseil-cpp/absl/status/internal/statusor_internal.h +399 -0
  847. data/third_party/abseil-cpp/absl/status/status.cc +445 -0
  848. data/third_party/abseil-cpp/absl/status/status.h +817 -0
  849. data/third_party/abseil-cpp/absl/status/status_payload_printer.cc +38 -0
  850. data/third_party/abseil-cpp/absl/status/status_payload_printer.h +51 -0
  851. data/third_party/abseil-cpp/absl/status/statusor.cc +71 -0
  852. data/third_party/abseil-cpp/absl/status/statusor.h +760 -0
  853. data/third_party/abseil-cpp/absl/strings/charconv.cc +2 -2
  854. data/third_party/abseil-cpp/absl/strings/cord.cc +1998 -0
  855. data/third_party/abseil-cpp/absl/strings/cord.h +1276 -0
  856. data/third_party/abseil-cpp/absl/strings/escaping.cc +9 -9
  857. data/third_party/abseil-cpp/absl/strings/internal/char_map.h +1 -1
  858. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.cc +1 -1
  859. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.h +2 -2
  860. data/third_party/abseil-cpp/absl/strings/internal/charconv_parse.cc +2 -2
  861. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +173 -0
  862. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.cc +222 -136
  863. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.h +136 -64
  864. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.cc +1 -1
  865. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h +14 -21
  866. data/third_party/abseil-cpp/absl/strings/internal/str_format/checker.h +7 -14
  867. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.cc +31 -7
  868. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h +147 -135
  869. data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc +999 -87
  870. data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.h +3 -3
  871. data/third_party/abseil-cpp/absl/strings/internal/str_format/output.h +4 -12
  872. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.cc +8 -6
  873. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.h +13 -11
  874. data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +2 -2
  875. data/third_party/abseil-cpp/absl/strings/str_cat.cc +4 -4
  876. data/third_party/abseil-cpp/absl/strings/str_cat.h +1 -1
  877. data/third_party/abseil-cpp/absl/strings/str_format.h +289 -13
  878. data/third_party/abseil-cpp/absl/strings/str_split.cc +2 -2
  879. data/third_party/abseil-cpp/absl/strings/str_split.h +1 -0
  880. data/third_party/abseil-cpp/absl/strings/string_view.h +26 -19
  881. data/third_party/abseil-cpp/absl/strings/substitute.cc +5 -5
  882. data/third_party/abseil-cpp/absl/strings/substitute.h +32 -29
  883. data/third_party/abseil-cpp/absl/synchronization/barrier.cc +52 -0
  884. data/third_party/abseil-cpp/absl/synchronization/barrier.h +79 -0
  885. data/third_party/abseil-cpp/absl/synchronization/blocking_counter.cc +57 -0
  886. data/third_party/abseil-cpp/absl/synchronization/blocking_counter.h +99 -0
  887. data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.cc +140 -0
  888. data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.h +60 -0
  889. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +697 -0
  890. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.h +141 -0
  891. data/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.h +155 -0
  892. data/third_party/abseil-cpp/absl/synchronization/internal/mutex_nonprod.inc +249 -0
  893. data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.cc +106 -0
  894. data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.h +115 -0
  895. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.cc +492 -0
  896. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.h +159 -0
  897. data/third_party/abseil-cpp/absl/synchronization/mutex.cc +2739 -0
  898. data/third_party/abseil-cpp/absl/synchronization/mutex.h +1065 -0
  899. data/third_party/abseil-cpp/absl/synchronization/notification.cc +78 -0
  900. data/third_party/abseil-cpp/absl/synchronization/notification.h +123 -0
  901. data/third_party/abseil-cpp/absl/time/civil_time.cc +9 -9
  902. data/third_party/abseil-cpp/absl/time/clock.cc +3 -3
  903. data/third_party/abseil-cpp/absl/time/duration.cc +90 -59
  904. data/third_party/abseil-cpp/absl/time/format.cc +43 -36
  905. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time_detail.h +26 -16
  906. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/time_zone.h +4 -2
  907. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/zone_info_source.h +1 -1
  908. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc +136 -29
  909. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.cc +13 -21
  910. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.h +1 -1
  911. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.cc +136 -129
  912. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.h +4 -5
  913. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.cc +8 -7
  914. data/third_party/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +6 -6
  915. data/third_party/abseil-cpp/absl/time/internal/cctz/src/zone_info_source.cc +2 -1
  916. data/third_party/abseil-cpp/absl/time/time.h +15 -16
  917. data/third_party/abseil-cpp/absl/types/bad_variant_access.cc +64 -0
  918. data/third_party/abseil-cpp/absl/types/bad_variant_access.h +82 -0
  919. data/third_party/abseil-cpp/absl/types/internal/variant.h +1646 -0
  920. data/third_party/abseil-cpp/absl/types/optional.h +9 -9
  921. data/third_party/abseil-cpp/absl/types/span.h +49 -36
  922. data/third_party/abseil-cpp/absl/types/variant.h +861 -0
  923. data/third_party/abseil-cpp/absl/utility/utility.h +2 -2
  924. data/third_party/address_sorting/include/address_sorting/address_sorting.h +2 -0
  925. data/third_party/boringssl-with-bazel/err_data.c +482 -464
  926. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.c +3 -3
  927. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_enum.c +3 -3
  928. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_int.c +1 -1
  929. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c +3 -3
  930. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c +2 -2
  931. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_type.c +1 -1
  932. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.c +1 -7
  933. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.c +1 -1
  934. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_enum.c +1 -1
  935. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.c +1 -1
  936. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_string.c +1 -1
  937. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +2 -0
  938. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/tls_cbc.c +1 -0
  939. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +9 -43
  940. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.c +55 -4
  941. data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +34 -0
  942. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/hash_to_curve.c +12 -52
  943. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/internal.h +0 -22
  944. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.c +4 -0
  945. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.c +159 -0
  946. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dsa_asn1.c +6 -2
  947. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/mode_wrappers.c +17 -1
  948. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +11 -1
  949. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aes.c +173 -35
  950. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digest.c +2 -0
  951. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/internal.h +2 -1
  952. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.c +13 -11
  953. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-x86_64.c +24 -23
  954. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.c +20 -16
  955. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.c +2 -2
  956. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/util.c +3 -3
  957. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/internal.h +4 -0
  958. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.c +30 -10
  959. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.c +56 -22
  960. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c +70 -2
  961. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +543 -0
  962. data/third_party/boringssl-with-bazel/src/crypto/hpke/internal.h +237 -0
  963. data/third_party/boringssl-with-bazel/src/crypto/mem.c +29 -15
  964. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/internal.h +7 -0
  965. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.c +36 -5
  966. data/third_party/boringssl-with-bazel/src/crypto/trust_token/internal.h +110 -70
  967. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.c +348 -423
  968. data/third_party/boringssl-with-bazel/src/crypto/trust_token/trust_token.c +217 -79
  969. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c +766 -0
  970. data/third_party/boringssl-with-bazel/src/crypto/x509/a_strex.c +7 -7
  971. data/third_party/boringssl-with-bazel/src/crypto/x509/algorithm.c +10 -0
  972. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c +4 -4
  973. data/third_party/boringssl-with-bazel/src/crypto/x509/t_crl.c +3 -3
  974. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509.c +1 -1
  975. data/third_party/boringssl-with-bazel/src/crypto/x509/x509.c +0 -67
  976. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.c +20 -8
  977. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_ext.c +21 -18
  978. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_obj.c +1 -1
  979. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.c +10 -0
  980. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_set.c +65 -3
  981. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +7 -4
  982. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_txt.c +67 -67
  983. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_v3.c +3 -3
  984. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +57 -44
  985. data/third_party/boringssl-with-bazel/src/crypto/x509/x509cset.c +38 -2
  986. data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.c +9 -8
  987. data/third_party/boringssl-with-bazel/src/crypto/x509/x_all.c +10 -10
  988. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +37 -15
  989. data/third_party/boringssl-with-bazel/src/crypto/x509/x_name.c +28 -40
  990. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c +0 -154
  991. data/third_party/boringssl-with-bazel/src/crypto/x509/x_sig.c +20 -0
  992. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c +30 -6
  993. data/third_party/boringssl-with-bazel/src/crypto/x509v3/ext_dat.h +1 -4
  994. data/third_party/boringssl-with-bazel/src/crypto/x509v3/internal.h +5 -0
  995. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_data.c +5 -3
  996. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_alt.c +14 -14
  997. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_conf.c +7 -3
  998. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_genn.c +2 -2
  999. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_info.c +1 -1
  1000. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_prn.c +1 -1
  1001. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c +126 -40
  1002. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_skey.c +1 -1
  1003. data/third_party/boringssl-with-bazel/src/include/openssl/aead.h +24 -0
  1004. data/third_party/boringssl-with-bazel/src/include/openssl/aes.h +16 -4
  1005. data/third_party/boringssl-with-bazel/src/include/openssl/arm_arch.h +54 -0
  1006. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +22 -23
  1007. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +7 -4
  1008. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +4 -0
  1009. data/third_party/boringssl-with-bazel/src/include/openssl/cipher.h +6 -0
  1010. data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +1 -1
  1011. data/third_party/boringssl-with-bazel/src/include/openssl/des.h +6 -0
  1012. data/third_party/boringssl-with-bazel/src/include/openssl/dh.h +12 -0
  1013. data/third_party/boringssl-with-bazel/src/include/openssl/digest.h +9 -0
  1014. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +73 -1
  1015. data/third_party/boringssl-with-bazel/src/include/openssl/opensslconf.h +3 -0
  1016. data/third_party/boringssl-with-bazel/src/include/openssl/pem.h +202 -134
  1017. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +136 -26
  1018. data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +5 -2
  1019. data/third_party/boringssl-with-bazel/src/include/openssl/trust_token.h +43 -24
  1020. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +942 -747
  1021. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +482 -432
  1022. data/third_party/boringssl-with-bazel/src/ssl/bio_ssl.cc +18 -5
  1023. data/third_party/boringssl-with-bazel/src/ssl/handoff.cc +38 -3
  1024. data/third_party/boringssl-with-bazel/src/ssl/handshake.cc +27 -20
  1025. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +4 -5
  1026. data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +10 -1
  1027. data/third_party/boringssl-with-bazel/src/ssl/internal.h +66 -24
  1028. data/third_party/boringssl-with-bazel/src/ssl/ssl_asn1.cc +48 -7
  1029. data/third_party/boringssl-with-bazel/src/ssl/ssl_cert.cc +3 -6
  1030. data/third_party/boringssl-with-bazel/src/ssl/ssl_cipher.cc +8 -9
  1031. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +105 -0
  1032. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +11 -34
  1033. data/third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc +5 -5
  1034. data/third_party/boringssl-with-bazel/src/ssl/t1_enc.cc +45 -24
  1035. data/third_party/boringssl-with-bazel/src/ssl/t1_lib.cc +250 -20
  1036. data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +1 -2
  1037. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +88 -40
  1038. data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +152 -50
  1039. data/third_party/boringssl-with-bazel/src/ssl/tls_record.cc +5 -3
  1040. data/third_party/re2/re2/bitmap256.h +117 -0
  1041. data/third_party/re2/re2/bitstate.cc +385 -0
  1042. data/third_party/re2/re2/compile.cc +1279 -0
  1043. data/third_party/re2/re2/dfa.cc +2130 -0
  1044. data/third_party/re2/re2/filtered_re2.cc +121 -0
  1045. data/third_party/re2/re2/filtered_re2.h +109 -0
  1046. data/third_party/re2/re2/mimics_pcre.cc +197 -0
  1047. data/third_party/re2/re2/nfa.cc +713 -0
  1048. data/third_party/re2/re2/onepass.cc +623 -0
  1049. data/third_party/re2/re2/parse.cc +2464 -0
  1050. data/third_party/re2/re2/perl_groups.cc +119 -0
  1051. data/third_party/re2/re2/pod_array.h +55 -0
  1052. data/third_party/re2/re2/prefilter.cc +710 -0
  1053. data/third_party/re2/re2/prefilter.h +108 -0
  1054. data/third_party/re2/re2/prefilter_tree.cc +407 -0
  1055. data/third_party/re2/re2/prefilter_tree.h +139 -0
  1056. data/third_party/re2/re2/prog.cc +988 -0
  1057. data/third_party/re2/re2/prog.h +436 -0
  1058. data/third_party/re2/re2/re2.cc +1362 -0
  1059. data/third_party/re2/re2/re2.h +1002 -0
  1060. data/third_party/re2/re2/regexp.cc +980 -0
  1061. data/third_party/re2/re2/regexp.h +659 -0
  1062. data/third_party/re2/re2/set.cc +154 -0
  1063. data/third_party/re2/re2/set.h +80 -0
  1064. data/third_party/re2/re2/simplify.cc +657 -0
  1065. data/third_party/re2/re2/sparse_array.h +392 -0
  1066. data/third_party/re2/re2/sparse_set.h +264 -0
  1067. data/third_party/re2/re2/stringpiece.cc +65 -0
  1068. data/third_party/re2/re2/stringpiece.h +210 -0
  1069. data/third_party/re2/re2/tostring.cc +351 -0
  1070. data/third_party/re2/re2/unicode_casefold.cc +582 -0
  1071. data/third_party/re2/re2/unicode_casefold.h +78 -0
  1072. data/third_party/re2/re2/unicode_groups.cc +6269 -0
  1073. data/third_party/re2/re2/unicode_groups.h +67 -0
  1074. data/third_party/re2/re2/walker-inl.h +246 -0
  1075. data/third_party/re2/util/benchmark.h +156 -0
  1076. data/third_party/re2/util/flags.h +26 -0
  1077. data/third_party/re2/util/logging.h +109 -0
  1078. data/third_party/re2/util/malloc_counter.h +19 -0
  1079. data/third_party/re2/util/mix.h +41 -0
  1080. data/third_party/re2/util/mutex.h +148 -0
  1081. data/third_party/re2/util/pcre.cc +1025 -0
  1082. data/third_party/re2/util/pcre.h +681 -0
  1083. data/third_party/re2/util/rune.cc +260 -0
  1084. data/third_party/re2/util/strutil.cc +149 -0
  1085. data/third_party/re2/util/strutil.h +21 -0
  1086. data/third_party/re2/util/test.h +50 -0
  1087. data/third_party/re2/util/utf.h +44 -0
  1088. data/third_party/re2/util/util.h +42 -0
  1089. data/third_party/upb/third_party/wyhash/wyhash.h +145 -0
  1090. data/third_party/upb/upb/decode.c +604 -511
  1091. data/third_party/upb/upb/decode.h +20 -1
  1092. data/third_party/upb/upb/decode.int.h +163 -0
  1093. data/third_party/upb/upb/decode_fast.c +1040 -0
  1094. data/third_party/upb/upb/decode_fast.h +126 -0
  1095. data/third_party/upb/upb/def.c +2178 -0
  1096. data/third_party/upb/upb/def.h +315 -0
  1097. data/third_party/upb/upb/def.hpp +439 -0
  1098. data/third_party/upb/upb/encode.c +311 -211
  1099. data/third_party/upb/upb/encode.h +27 -2
  1100. data/third_party/upb/upb/json_decode.c +1443 -0
  1101. data/third_party/upb/upb/json_decode.h +23 -0
  1102. data/third_party/upb/upb/json_encode.c +713 -0
  1103. data/third_party/upb/upb/json_encode.h +36 -0
  1104. data/third_party/upb/upb/msg.c +215 -70
  1105. data/third_party/upb/upb/msg.h +558 -14
  1106. data/third_party/upb/upb/port_def.inc +105 -63
  1107. data/third_party/upb/upb/port_undef.inc +10 -7
  1108. data/third_party/upb/upb/reflection.c +408 -0
  1109. data/third_party/upb/upb/reflection.h +168 -0
  1110. data/third_party/upb/upb/table.c +73 -269
  1111. data/third_party/upb/upb/table.int.h +25 -57
  1112. data/third_party/upb/upb/text_encode.c +421 -0
  1113. data/third_party/upb/upb/text_encode.h +38 -0
  1114. data/third_party/upb/upb/upb.c +138 -135
  1115. data/third_party/upb/upb/upb.h +119 -146
  1116. data/third_party/upb/upb/upb.hpp +88 -0
  1117. data/third_party/upb/upb/upb.int.h +29 -0
  1118. metadata +560 -166
  1119. data/src/core/ext/filters/client_channel/lb_policy/xds/eds.cc +0 -938
  1120. data/src/core/ext/filters/client_channel/lb_policy/xds/lrs.cc +0 -528
  1121. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_routing.cc +0 -834
  1122. data/src/core/ext/filters/client_channel/parse_address.h +0 -53
  1123. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.cc +0 -484
  1124. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc +0 -68
  1125. data/src/core/ext/filters/client_channel/resolving_lb_policy.cc +0 -348
  1126. data/src/core/ext/filters/client_channel/resolving_lb_policy.h +0 -123
  1127. data/src/core/ext/filters/client_channel/xds/xds_api.cc +0 -1906
  1128. data/src/core/ext/filters/client_channel/xds/xds_api.h +0 -280
  1129. data/src/core/ext/filters/client_channel/xds/xds_channel.h +0 -46
  1130. data/src/core/ext/filters/client_channel/xds/xds_channel_secure.cc +0 -106
  1131. data/src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.c +0 -21
  1132. data/src/core/ext/upb-generated/envoy/api/v2/auth/cert.upb.h +0 -35
  1133. data/src/core/ext/upb-generated/envoy/api/v2/auth/common.upb.c +0 -114
  1134. data/src/core/ext/upb-generated/envoy/api/v2/auth/common.upb.h +0 -418
  1135. data/src/core/ext/upb-generated/envoy/api/v2/auth/secret.upb.c +0 -72
  1136. data/src/core/ext/upb-generated/envoy/api/v2/auth/secret.upb.h +0 -197
  1137. data/src/core/ext/upb-generated/envoy/api/v2/auth/tls.upb.c +0 -105
  1138. data/src/core/ext/upb-generated/envoy/api/v2/auth/tls.upb.h +0 -378
  1139. data/src/core/ext/upb-generated/envoy/api/v2/cds.upb.h +0 -53
  1140. data/src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.c +0 -74
  1141. data/src/core/ext/upb-generated/envoy/api/v2/cluster/circuit_breaker.upb.h +0 -218
  1142. data/src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.c +0 -35
  1143. data/src/core/ext/upb-generated/envoy/api/v2/cluster/filter.upb.h +0 -69
  1144. data/src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.c +0 -55
  1145. data/src/core/ext/upb-generated/envoy/api/v2/cluster/outlier_detection.upb.h +0 -305
  1146. data/src/core/ext/upb-generated/envoy/api/v2/cluster.upb.c +0 -403
  1147. data/src/core/ext/upb-generated/envoy/api/v2/cluster.upb.h +0 -1447
  1148. data/src/core/ext/upb-generated/envoy/api/v2/core/address.upb.c +0 -112
  1149. data/src/core/ext/upb-generated/envoy/api/v2/core/address.upb.h +0 -328
  1150. data/src/core/ext/upb-generated/envoy/api/v2/core/backoff.upb.c +0 -35
  1151. data/src/core/ext/upb-generated/envoy/api/v2/core/backoff.upb.h +0 -78
  1152. data/src/core/ext/upb-generated/envoy/api/v2/core/base.upb.c +0 -313
  1153. data/src/core/ext/upb-generated/envoy/api/v2/core/base.upb.h +0 -897
  1154. data/src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.c +0 -96
  1155. data/src/core/ext/upb-generated/envoy/api/v2/core/config_source.upb.h +0 -322
  1156. data/src/core/ext/upb-generated/envoy/api/v2/core/event_service_config.upb.c +0 -34
  1157. data/src/core/ext/upb-generated/envoy/api/v2/core/event_service_config.upb.h +0 -72
  1158. data/src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.c +0 -197
  1159. data/src/core/ext/upb-generated/envoy/api/v2/core/grpc_service.upb.h +0 -642
  1160. data/src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.c +0 -172
  1161. data/src/core/ext/upb-generated/envoy/api/v2/core/health_check.upb.h +0 -673
  1162. data/src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.c +0 -36
  1163. data/src/core/ext/upb-generated/envoy/api/v2/core/http_uri.upb.h +0 -80
  1164. data/src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.c +0 -152
  1165. data/src/core/ext/upb-generated/envoy/api/v2/core/protocol.upb.h +0 -518
  1166. data/src/core/ext/upb-generated/envoy/api/v2/core/socket_option.upb.h +0 -89
  1167. data/src/core/ext/upb-generated/envoy/api/v2/discovery.upb.c +0 -129
  1168. data/src/core/ext/upb-generated/envoy/api/v2/discovery.upb.h +0 -392
  1169. data/src/core/ext/upb-generated/envoy/api/v2/eds.upb.h +0 -53
  1170. data/src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint.upb.c +0 -18
  1171. data/src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint.upb.h +0 -33
  1172. data/src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint_components.upb.c +0 -91
  1173. data/src/core/ext/upb-generated/envoy/api/v2/endpoint/endpoint_components.upb.h +0 -266
  1174. data/src/core/ext/upb-generated/envoy/api/v2/endpoint/load_report.upb.c +0 -112
  1175. data/src/core/ext/upb-generated/envoy/api/v2/endpoint/load_report.upb.h +0 -324
  1176. data/src/core/ext/upb-generated/envoy/api/v2/endpoint.upb.c +0 -92
  1177. data/src/core/ext/upb-generated/envoy/api/v2/endpoint.upb.h +0 -240
  1178. data/src/core/ext/upb-generated/envoy/api/v2/lds.upb.h +0 -53
  1179. data/src/core/ext/upb-generated/envoy/api/v2/listener/listener.upb.c +0 -18
  1180. data/src/core/ext/upb-generated/envoy/api/v2/listener/listener.upb.h +0 -33
  1181. data/src/core/ext/upb-generated/envoy/api/v2/listener/listener_components.upb.c +0 -145
  1182. data/src/core/ext/upb-generated/envoy/api/v2/listener/listener_components.upb.h +0 -527
  1183. data/src/core/ext/upb-generated/envoy/api/v2/listener/udp_listener_config.upb.c +0 -43
  1184. data/src/core/ext/upb-generated/envoy/api/v2/listener/udp_listener_config.upb.h +0 -112
  1185. data/src/core/ext/upb-generated/envoy/api/v2/listener.upb.c +0 -109
  1186. data/src/core/ext/upb-generated/envoy/api/v2/listener.upb.h +0 -399
  1187. data/src/core/ext/upb-generated/envoy/api/v2/rds.upb.h +0 -53
  1188. data/src/core/ext/upb-generated/envoy/api/v2/route/route.upb.c +0 -18
  1189. data/src/core/ext/upb-generated/envoy/api/v2/route/route.upb.h +0 -33
  1190. data/src/core/ext/upb-generated/envoy/api/v2/route/route_components.upb.c +0 -815
  1191. data/src/core/ext/upb-generated/envoy/api/v2/route/route_components.upb.h +0 -3032
  1192. data/src/core/ext/upb-generated/envoy/api/v2/route.upb.c +0 -63
  1193. data/src/core/ext/upb-generated/envoy/api/v2/route.upb.h +0 -199
  1194. data/src/core/ext/upb-generated/envoy/api/v2/scoped_route.upb.c +0 -59
  1195. data/src/core/ext/upb-generated/envoy/api/v2/scoped_route.upb.h +0 -134
  1196. data/src/core/ext/upb-generated/envoy/api/v2/srds.upb.h +0 -53
  1197. data/src/core/ext/upb-generated/envoy/config/filter/accesslog/v2/accesslog.upb.c +0 -228
  1198. data/src/core/ext/upb-generated/envoy/config/filter/accesslog/v2/accesslog.upb.h +0 -725
  1199. data/src/core/ext/upb-generated/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.upb.c +0 -316
  1200. data/src/core/ext/upb-generated/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.upb.h +0 -1132
  1201. data/src/core/ext/upb-generated/envoy/config/listener/v2/api_listener.upb.c +0 -33
  1202. data/src/core/ext/upb-generated/envoy/config/listener/v2/api_listener.upb.h +0 -65
  1203. data/src/core/ext/upb-generated/envoy/config/trace/v2/http_tracer.upb.c +0 -51
  1204. data/src/core/ext/upb-generated/envoy/config/trace/v2/http_tracer.upb.h +0 -125
  1205. data/src/core/ext/upb-generated/envoy/service/discovery/v2/ads.upb.h +0 -50
  1206. data/src/core/ext/upb-generated/envoy/service/load_stats/v2/lrs.upb.c +0 -54
  1207. data/src/core/ext/upb-generated/envoy/service/load_stats/v2/lrs.upb.h +0 -134
  1208. data/src/core/ext/upb-generated/envoy/type/matcher/regex.upb.c +0 -63
  1209. data/src/core/ext/upb-generated/envoy/type/matcher/regex.upb.h +0 -144
  1210. data/src/core/ext/upb-generated/envoy/type/matcher/string.upb.c +0 -53
  1211. data/src/core/ext/upb-generated/envoy/type/matcher/string.upb.h +0 -133
  1212. data/src/core/ext/upb-generated/envoy/type/metadata/v2/metadata.upb.c +0 -88
  1213. data/src/core/ext/upb-generated/envoy/type/metadata/v2/metadata.upb.h +0 -258
  1214. data/src/core/ext/upb-generated/envoy/type/percent.upb.c +0 -39
  1215. data/src/core/ext/upb-generated/envoy/type/percent.upb.h +0 -87
  1216. data/src/core/ext/upb-generated/envoy/type/range.upb.c +0 -50
  1217. data/src/core/ext/upb-generated/envoy/type/range.upb.h +0 -112
  1218. data/src/core/ext/upb-generated/envoy/type/semantic_version.upb.h +0 -62
  1219. data/src/core/ext/upb-generated/envoy/type/tracing/v2/custom_tag.upb.c +0 -89
  1220. data/src/core/ext/upb-generated/envoy/type/tracing/v2/custom_tag.upb.h +0 -249
  1221. data/src/core/ext/upb-generated/gogoproto/gogo.upb.c +0 -17
  1222. data/src/core/lib/gprpp/map.h +0 -53
  1223. data/src/core/lib/security/transport/target_authority_table.cc +0 -75
  1224. data/src/core/lib/security/transport/target_authority_table.h +0 -40
  1225. data/src/core/lib/slice/slice_hash_table.h +0 -199
  1226. data/src/core/lib/slice/slice_weak_hash_table.h +0 -102
  1227. data/third_party/abseil-cpp/absl/base/dynamic_annotations.cc +0 -129
  1228. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pku.c +0 -110
  1229. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_sxnet.c +0 -274
  1230. data/third_party/upb/upb/generated_util.h +0 -105
  1231. data/third_party/upb/upb/port.c +0 -26
@@ -0,0 +1,830 @@
1
+ /* This file was generated by upbc (the upb compiler) from the input
2
+ * file:
3
+ *
4
+ * google/api/expr/v1alpha1/checked.proto
5
+ *
6
+ * Do not edit -- your changes will be discarded when the file is
7
+ * regenerated. */
8
+
9
+ #ifndef GOOGLE_API_EXPR_V1ALPHA1_CHECKED_PROTO_UPB_H_
10
+ #define GOOGLE_API_EXPR_V1ALPHA1_CHECKED_PROTO_UPB_H_
11
+
12
+ #include "upb/msg.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_CheckedExpr;
24
+ struct google_api_expr_v1alpha1_CheckedExpr_ReferenceMapEntry;
25
+ struct google_api_expr_v1alpha1_CheckedExpr_TypeMapEntry;
26
+ struct google_api_expr_v1alpha1_Type;
27
+ struct google_api_expr_v1alpha1_Type_ListType;
28
+ struct google_api_expr_v1alpha1_Type_MapType;
29
+ struct google_api_expr_v1alpha1_Type_FunctionType;
30
+ struct google_api_expr_v1alpha1_Type_AbstractType;
31
+ struct google_api_expr_v1alpha1_Decl;
32
+ struct google_api_expr_v1alpha1_Decl_IdentDecl;
33
+ struct google_api_expr_v1alpha1_Decl_FunctionDecl;
34
+ struct google_api_expr_v1alpha1_Decl_FunctionDecl_Overload;
35
+ struct google_api_expr_v1alpha1_Reference;
36
+ typedef struct google_api_expr_v1alpha1_CheckedExpr google_api_expr_v1alpha1_CheckedExpr;
37
+ typedef struct google_api_expr_v1alpha1_CheckedExpr_ReferenceMapEntry google_api_expr_v1alpha1_CheckedExpr_ReferenceMapEntry;
38
+ typedef struct google_api_expr_v1alpha1_CheckedExpr_TypeMapEntry google_api_expr_v1alpha1_CheckedExpr_TypeMapEntry;
39
+ typedef struct google_api_expr_v1alpha1_Type google_api_expr_v1alpha1_Type;
40
+ typedef struct google_api_expr_v1alpha1_Type_ListType google_api_expr_v1alpha1_Type_ListType;
41
+ typedef struct google_api_expr_v1alpha1_Type_MapType google_api_expr_v1alpha1_Type_MapType;
42
+ typedef struct google_api_expr_v1alpha1_Type_FunctionType google_api_expr_v1alpha1_Type_FunctionType;
43
+ typedef struct google_api_expr_v1alpha1_Type_AbstractType google_api_expr_v1alpha1_Type_AbstractType;
44
+ typedef struct google_api_expr_v1alpha1_Decl google_api_expr_v1alpha1_Decl;
45
+ typedef struct google_api_expr_v1alpha1_Decl_IdentDecl google_api_expr_v1alpha1_Decl_IdentDecl;
46
+ typedef struct google_api_expr_v1alpha1_Decl_FunctionDecl google_api_expr_v1alpha1_Decl_FunctionDecl;
47
+ typedef struct google_api_expr_v1alpha1_Decl_FunctionDecl_Overload google_api_expr_v1alpha1_Decl_FunctionDecl_Overload;
48
+ typedef struct google_api_expr_v1alpha1_Reference google_api_expr_v1alpha1_Reference;
49
+ extern const upb_msglayout google_api_expr_v1alpha1_CheckedExpr_msginit;
50
+ extern const upb_msglayout google_api_expr_v1alpha1_CheckedExpr_ReferenceMapEntry_msginit;
51
+ extern const upb_msglayout google_api_expr_v1alpha1_CheckedExpr_TypeMapEntry_msginit;
52
+ extern const upb_msglayout google_api_expr_v1alpha1_Type_msginit;
53
+ extern const upb_msglayout google_api_expr_v1alpha1_Type_ListType_msginit;
54
+ extern const upb_msglayout google_api_expr_v1alpha1_Type_MapType_msginit;
55
+ extern const upb_msglayout google_api_expr_v1alpha1_Type_FunctionType_msginit;
56
+ extern const upb_msglayout google_api_expr_v1alpha1_Type_AbstractType_msginit;
57
+ extern const upb_msglayout google_api_expr_v1alpha1_Decl_msginit;
58
+ extern const upb_msglayout google_api_expr_v1alpha1_Decl_IdentDecl_msginit;
59
+ extern const upb_msglayout google_api_expr_v1alpha1_Decl_FunctionDecl_msginit;
60
+ extern const upb_msglayout google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_msginit;
61
+ extern const upb_msglayout google_api_expr_v1alpha1_Reference_msginit;
62
+ struct google_api_expr_v1alpha1_Constant;
63
+ struct google_api_expr_v1alpha1_Expr;
64
+ struct google_api_expr_v1alpha1_SourceInfo;
65
+ struct google_protobuf_Empty;
66
+ extern const upb_msglayout google_api_expr_v1alpha1_Constant_msginit;
67
+ extern const upb_msglayout google_api_expr_v1alpha1_Expr_msginit;
68
+ extern const upb_msglayout google_api_expr_v1alpha1_SourceInfo_msginit;
69
+ extern const upb_msglayout google_protobuf_Empty_msginit;
70
+
71
+ typedef enum {
72
+ google_api_expr_v1alpha1_Type_PRIMITIVE_TYPE_UNSPECIFIED = 0,
73
+ google_api_expr_v1alpha1_Type_BOOL = 1,
74
+ google_api_expr_v1alpha1_Type_INT64 = 2,
75
+ google_api_expr_v1alpha1_Type_UINT64 = 3,
76
+ google_api_expr_v1alpha1_Type_DOUBLE = 4,
77
+ google_api_expr_v1alpha1_Type_STRING = 5,
78
+ google_api_expr_v1alpha1_Type_BYTES = 6
79
+ } google_api_expr_v1alpha1_Type_PrimitiveType;
80
+
81
+ typedef enum {
82
+ google_api_expr_v1alpha1_Type_WELL_KNOWN_TYPE_UNSPECIFIED = 0,
83
+ google_api_expr_v1alpha1_Type_ANY = 1,
84
+ google_api_expr_v1alpha1_Type_TIMESTAMP = 2,
85
+ google_api_expr_v1alpha1_Type_DURATION = 3
86
+ } google_api_expr_v1alpha1_Type_WellKnownType;
87
+
88
+
89
+ /* google.api.expr.v1alpha1.CheckedExpr */
90
+
91
+ UPB_INLINE google_api_expr_v1alpha1_CheckedExpr *google_api_expr_v1alpha1_CheckedExpr_new(upb_arena *arena) {
92
+ return (google_api_expr_v1alpha1_CheckedExpr *)_upb_msg_new(&google_api_expr_v1alpha1_CheckedExpr_msginit, arena);
93
+ }
94
+ UPB_INLINE google_api_expr_v1alpha1_CheckedExpr *google_api_expr_v1alpha1_CheckedExpr_parse(const char *buf, size_t size,
95
+ upb_arena *arena) {
96
+ google_api_expr_v1alpha1_CheckedExpr *ret = google_api_expr_v1alpha1_CheckedExpr_new(arena);
97
+ return (ret && upb_decode(buf, size, ret, &google_api_expr_v1alpha1_CheckedExpr_msginit, arena)) ? ret : NULL;
98
+ }
99
+ UPB_INLINE google_api_expr_v1alpha1_CheckedExpr *google_api_expr_v1alpha1_CheckedExpr_parse_ex(const char *buf, size_t size,
100
+ upb_arena *arena, int options) {
101
+ google_api_expr_v1alpha1_CheckedExpr *ret = google_api_expr_v1alpha1_CheckedExpr_new(arena);
102
+ return (ret && _upb_decode(buf, size, ret, &google_api_expr_v1alpha1_CheckedExpr_msginit, arena, options))
103
+ ? ret : NULL;
104
+ }
105
+ UPB_INLINE char *google_api_expr_v1alpha1_CheckedExpr_serialize(const google_api_expr_v1alpha1_CheckedExpr *msg, upb_arena *arena, size_t *len) {
106
+ return upb_encode(msg, &google_api_expr_v1alpha1_CheckedExpr_msginit, arena, len);
107
+ }
108
+
109
+ UPB_INLINE bool google_api_expr_v1alpha1_CheckedExpr_has_reference_map(const google_api_expr_v1alpha1_CheckedExpr *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(12, 24)); }
110
+ UPB_INLINE size_t google_api_expr_v1alpha1_CheckedExpr_reference_map_size(const google_api_expr_v1alpha1_CheckedExpr *msg) {return _upb_msg_map_size(msg, UPB_SIZE(12, 24)); }
111
+ UPB_INLINE bool google_api_expr_v1alpha1_CheckedExpr_reference_map_get(const google_api_expr_v1alpha1_CheckedExpr *msg, int64_t key, google_api_expr_v1alpha1_Reference* *val) { return _upb_msg_map_get(msg, UPB_SIZE(12, 24), &key, sizeof(key), val, sizeof(*val)); }
112
+ UPB_INLINE const google_api_expr_v1alpha1_CheckedExpr_ReferenceMapEntry* google_api_expr_v1alpha1_CheckedExpr_reference_map_next(const google_api_expr_v1alpha1_CheckedExpr *msg, size_t* iter) { return (const google_api_expr_v1alpha1_CheckedExpr_ReferenceMapEntry*)_upb_msg_map_next(msg, UPB_SIZE(12, 24), iter); }
113
+ UPB_INLINE bool google_api_expr_v1alpha1_CheckedExpr_has_type_map(const google_api_expr_v1alpha1_CheckedExpr *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(16, 32)); }
114
+ UPB_INLINE size_t google_api_expr_v1alpha1_CheckedExpr_type_map_size(const google_api_expr_v1alpha1_CheckedExpr *msg) {return _upb_msg_map_size(msg, UPB_SIZE(16, 32)); }
115
+ UPB_INLINE bool google_api_expr_v1alpha1_CheckedExpr_type_map_get(const google_api_expr_v1alpha1_CheckedExpr *msg, int64_t key, google_api_expr_v1alpha1_Type* *val) { return _upb_msg_map_get(msg, UPB_SIZE(16, 32), &key, sizeof(key), val, sizeof(*val)); }
116
+ UPB_INLINE const google_api_expr_v1alpha1_CheckedExpr_TypeMapEntry* google_api_expr_v1alpha1_CheckedExpr_type_map_next(const google_api_expr_v1alpha1_CheckedExpr *msg, size_t* iter) { return (const google_api_expr_v1alpha1_CheckedExpr_TypeMapEntry*)_upb_msg_map_next(msg, UPB_SIZE(16, 32), iter); }
117
+ UPB_INLINE bool google_api_expr_v1alpha1_CheckedExpr_has_expr(const google_api_expr_v1alpha1_CheckedExpr *msg) { return _upb_hasbit(msg, 1); }
118
+ UPB_INLINE const struct google_api_expr_v1alpha1_Expr* google_api_expr_v1alpha1_CheckedExpr_expr(const google_api_expr_v1alpha1_CheckedExpr *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const struct google_api_expr_v1alpha1_Expr*); }
119
+ UPB_INLINE bool google_api_expr_v1alpha1_CheckedExpr_has_source_info(const google_api_expr_v1alpha1_CheckedExpr *msg) { return _upb_hasbit(msg, 2); }
120
+ UPB_INLINE const struct google_api_expr_v1alpha1_SourceInfo* google_api_expr_v1alpha1_CheckedExpr_source_info(const google_api_expr_v1alpha1_CheckedExpr *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const struct google_api_expr_v1alpha1_SourceInfo*); }
121
+
122
+ UPB_INLINE void google_api_expr_v1alpha1_CheckedExpr_reference_map_clear(google_api_expr_v1alpha1_CheckedExpr *msg) { _upb_msg_map_clear(msg, UPB_SIZE(12, 24)); }
123
+ UPB_INLINE bool google_api_expr_v1alpha1_CheckedExpr_reference_map_set(google_api_expr_v1alpha1_CheckedExpr *msg, int64_t key, google_api_expr_v1alpha1_Reference* val, upb_arena *a) { return _upb_msg_map_set(msg, UPB_SIZE(12, 24), &key, sizeof(key), &val, sizeof(val), a); }
124
+ UPB_INLINE bool google_api_expr_v1alpha1_CheckedExpr_reference_map_delete(google_api_expr_v1alpha1_CheckedExpr *msg, int64_t key) { return _upb_msg_map_delete(msg, UPB_SIZE(12, 24), &key, sizeof(key)); }
125
+ UPB_INLINE google_api_expr_v1alpha1_CheckedExpr_ReferenceMapEntry* google_api_expr_v1alpha1_CheckedExpr_reference_map_nextmutable(google_api_expr_v1alpha1_CheckedExpr *msg, size_t* iter) { return (google_api_expr_v1alpha1_CheckedExpr_ReferenceMapEntry*)_upb_msg_map_next(msg, UPB_SIZE(12, 24), iter); }
126
+ UPB_INLINE void google_api_expr_v1alpha1_CheckedExpr_type_map_clear(google_api_expr_v1alpha1_CheckedExpr *msg) { _upb_msg_map_clear(msg, UPB_SIZE(16, 32)); }
127
+ UPB_INLINE bool google_api_expr_v1alpha1_CheckedExpr_type_map_set(google_api_expr_v1alpha1_CheckedExpr *msg, int64_t key, google_api_expr_v1alpha1_Type* val, upb_arena *a) { return _upb_msg_map_set(msg, UPB_SIZE(16, 32), &key, sizeof(key), &val, sizeof(val), a); }
128
+ UPB_INLINE bool google_api_expr_v1alpha1_CheckedExpr_type_map_delete(google_api_expr_v1alpha1_CheckedExpr *msg, int64_t key) { return _upb_msg_map_delete(msg, UPB_SIZE(16, 32), &key, sizeof(key)); }
129
+ UPB_INLINE google_api_expr_v1alpha1_CheckedExpr_TypeMapEntry* google_api_expr_v1alpha1_CheckedExpr_type_map_nextmutable(google_api_expr_v1alpha1_CheckedExpr *msg, size_t* iter) { return (google_api_expr_v1alpha1_CheckedExpr_TypeMapEntry*)_upb_msg_map_next(msg, UPB_SIZE(16, 32), iter); }
130
+ UPB_INLINE void google_api_expr_v1alpha1_CheckedExpr_set_expr(google_api_expr_v1alpha1_CheckedExpr *msg, struct google_api_expr_v1alpha1_Expr* value) {
131
+ _upb_sethas(msg, 1);
132
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), struct google_api_expr_v1alpha1_Expr*) = value;
133
+ }
134
+ UPB_INLINE struct google_api_expr_v1alpha1_Expr* google_api_expr_v1alpha1_CheckedExpr_mutable_expr(google_api_expr_v1alpha1_CheckedExpr *msg, upb_arena *arena) {
135
+ struct google_api_expr_v1alpha1_Expr* sub = (struct google_api_expr_v1alpha1_Expr*)google_api_expr_v1alpha1_CheckedExpr_expr(msg);
136
+ if (sub == NULL) {
137
+ sub = (struct google_api_expr_v1alpha1_Expr*)_upb_msg_new(&google_api_expr_v1alpha1_Expr_msginit, arena);
138
+ if (!sub) return NULL;
139
+ google_api_expr_v1alpha1_CheckedExpr_set_expr(msg, sub);
140
+ }
141
+ return sub;
142
+ }
143
+ UPB_INLINE void google_api_expr_v1alpha1_CheckedExpr_set_source_info(google_api_expr_v1alpha1_CheckedExpr *msg, struct google_api_expr_v1alpha1_SourceInfo* value) {
144
+ _upb_sethas(msg, 2);
145
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), struct google_api_expr_v1alpha1_SourceInfo*) = value;
146
+ }
147
+ UPB_INLINE struct google_api_expr_v1alpha1_SourceInfo* google_api_expr_v1alpha1_CheckedExpr_mutable_source_info(google_api_expr_v1alpha1_CheckedExpr *msg, upb_arena *arena) {
148
+ struct google_api_expr_v1alpha1_SourceInfo* sub = (struct google_api_expr_v1alpha1_SourceInfo*)google_api_expr_v1alpha1_CheckedExpr_source_info(msg);
149
+ if (sub == NULL) {
150
+ sub = (struct google_api_expr_v1alpha1_SourceInfo*)_upb_msg_new(&google_api_expr_v1alpha1_SourceInfo_msginit, arena);
151
+ if (!sub) return NULL;
152
+ google_api_expr_v1alpha1_CheckedExpr_set_source_info(msg, sub);
153
+ }
154
+ return sub;
155
+ }
156
+
157
+ /* google.api.expr.v1alpha1.CheckedExpr.ReferenceMapEntry */
158
+
159
+ UPB_INLINE int64_t google_api_expr_v1alpha1_CheckedExpr_ReferenceMapEntry_key(const google_api_expr_v1alpha1_CheckedExpr_ReferenceMapEntry *msg) {
160
+ int64_t ret;
161
+ _upb_msg_map_key(msg, &ret, sizeof(ret));
162
+ return ret;
163
+ }
164
+ UPB_INLINE bool google_api_expr_v1alpha1_CheckedExpr_ReferenceMapEntry_has_value(const google_api_expr_v1alpha1_CheckedExpr_ReferenceMapEntry *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
165
+ UPB_INLINE const google_api_expr_v1alpha1_Reference* google_api_expr_v1alpha1_CheckedExpr_ReferenceMapEntry_value(const google_api_expr_v1alpha1_CheckedExpr_ReferenceMapEntry *msg) {
166
+ google_api_expr_v1alpha1_Reference* ret;
167
+ _upb_msg_map_value(msg, &ret, sizeof(ret));
168
+ return ret;
169
+ }
170
+
171
+ UPB_INLINE void google_api_expr_v1alpha1_CheckedExpr_ReferenceMapEntry_set_value(google_api_expr_v1alpha1_CheckedExpr_ReferenceMapEntry *msg, google_api_expr_v1alpha1_Reference* value) {
172
+ _upb_msg_map_set_value(msg, &value, sizeof(google_api_expr_v1alpha1_Reference*));
173
+ }
174
+
175
+ /* google.api.expr.v1alpha1.CheckedExpr.TypeMapEntry */
176
+
177
+ UPB_INLINE int64_t google_api_expr_v1alpha1_CheckedExpr_TypeMapEntry_key(const google_api_expr_v1alpha1_CheckedExpr_TypeMapEntry *msg) {
178
+ int64_t ret;
179
+ _upb_msg_map_key(msg, &ret, sizeof(ret));
180
+ return ret;
181
+ }
182
+ UPB_INLINE bool google_api_expr_v1alpha1_CheckedExpr_TypeMapEntry_has_value(const google_api_expr_v1alpha1_CheckedExpr_TypeMapEntry *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
183
+ UPB_INLINE const google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_CheckedExpr_TypeMapEntry_value(const google_api_expr_v1alpha1_CheckedExpr_TypeMapEntry *msg) {
184
+ google_api_expr_v1alpha1_Type* ret;
185
+ _upb_msg_map_value(msg, &ret, sizeof(ret));
186
+ return ret;
187
+ }
188
+
189
+ UPB_INLINE void google_api_expr_v1alpha1_CheckedExpr_TypeMapEntry_set_value(google_api_expr_v1alpha1_CheckedExpr_TypeMapEntry *msg, google_api_expr_v1alpha1_Type* value) {
190
+ _upb_msg_map_set_value(msg, &value, sizeof(google_api_expr_v1alpha1_Type*));
191
+ }
192
+
193
+ /* google.api.expr.v1alpha1.Type */
194
+
195
+ UPB_INLINE google_api_expr_v1alpha1_Type *google_api_expr_v1alpha1_Type_new(upb_arena *arena) {
196
+ return (google_api_expr_v1alpha1_Type *)_upb_msg_new(&google_api_expr_v1alpha1_Type_msginit, arena);
197
+ }
198
+ UPB_INLINE google_api_expr_v1alpha1_Type *google_api_expr_v1alpha1_Type_parse(const char *buf, size_t size,
199
+ upb_arena *arena) {
200
+ google_api_expr_v1alpha1_Type *ret = google_api_expr_v1alpha1_Type_new(arena);
201
+ return (ret && upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Type_msginit, arena)) ? ret : NULL;
202
+ }
203
+ UPB_INLINE google_api_expr_v1alpha1_Type *google_api_expr_v1alpha1_Type_parse_ex(const char *buf, size_t size,
204
+ upb_arena *arena, int options) {
205
+ google_api_expr_v1alpha1_Type *ret = google_api_expr_v1alpha1_Type_new(arena);
206
+ return (ret && _upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Type_msginit, arena, options))
207
+ ? ret : NULL;
208
+ }
209
+ UPB_INLINE char *google_api_expr_v1alpha1_Type_serialize(const google_api_expr_v1alpha1_Type *msg, upb_arena *arena, size_t *len) {
210
+ return upb_encode(msg, &google_api_expr_v1alpha1_Type_msginit, arena, len);
211
+ }
212
+
213
+ typedef enum {
214
+ google_api_expr_v1alpha1_Type_type_kind_dyn = 1,
215
+ google_api_expr_v1alpha1_Type_type_kind_null = 2,
216
+ google_api_expr_v1alpha1_Type_type_kind_primitive = 3,
217
+ google_api_expr_v1alpha1_Type_type_kind_wrapper = 4,
218
+ google_api_expr_v1alpha1_Type_type_kind_well_known = 5,
219
+ google_api_expr_v1alpha1_Type_type_kind_list_type = 6,
220
+ google_api_expr_v1alpha1_Type_type_kind_map_type = 7,
221
+ google_api_expr_v1alpha1_Type_type_kind_function = 8,
222
+ google_api_expr_v1alpha1_Type_type_kind_message_type = 9,
223
+ google_api_expr_v1alpha1_Type_type_kind_type_param = 10,
224
+ google_api_expr_v1alpha1_Type_type_kind_type = 11,
225
+ google_api_expr_v1alpha1_Type_type_kind_error = 12,
226
+ google_api_expr_v1alpha1_Type_type_kind_abstract_type = 14,
227
+ google_api_expr_v1alpha1_Type_type_kind_NOT_SET = 0
228
+ } google_api_expr_v1alpha1_Type_type_kind_oneofcases;
229
+ UPB_INLINE google_api_expr_v1alpha1_Type_type_kind_oneofcases google_api_expr_v1alpha1_Type_type_kind_case(const google_api_expr_v1alpha1_Type* msg) { return (google_api_expr_v1alpha1_Type_type_kind_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(8, 16), int32_t); }
230
+
231
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_has_dyn(const google_api_expr_v1alpha1_Type *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 1; }
232
+ UPB_INLINE const struct google_protobuf_Empty* google_api_expr_v1alpha1_Type_dyn(const google_api_expr_v1alpha1_Type *msg) { return UPB_READ_ONEOF(msg, const struct google_protobuf_Empty*, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 1, NULL); }
233
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_has_null(const google_api_expr_v1alpha1_Type *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 2; }
234
+ UPB_INLINE int32_t google_api_expr_v1alpha1_Type_null(const google_api_expr_v1alpha1_Type *msg) { return UPB_READ_ONEOF(msg, int32_t, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 2, 0); }
235
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_has_primitive(const google_api_expr_v1alpha1_Type *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 3; }
236
+ UPB_INLINE int32_t google_api_expr_v1alpha1_Type_primitive(const google_api_expr_v1alpha1_Type *msg) { return UPB_READ_ONEOF(msg, int32_t, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 3, 0); }
237
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_has_wrapper(const google_api_expr_v1alpha1_Type *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 4; }
238
+ UPB_INLINE int32_t google_api_expr_v1alpha1_Type_wrapper(const google_api_expr_v1alpha1_Type *msg) { return UPB_READ_ONEOF(msg, int32_t, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 4, 0); }
239
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_has_well_known(const google_api_expr_v1alpha1_Type *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 5; }
240
+ UPB_INLINE int32_t google_api_expr_v1alpha1_Type_well_known(const google_api_expr_v1alpha1_Type *msg) { return UPB_READ_ONEOF(msg, int32_t, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 5, 0); }
241
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_has_list_type(const google_api_expr_v1alpha1_Type *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 6; }
242
+ UPB_INLINE const google_api_expr_v1alpha1_Type_ListType* google_api_expr_v1alpha1_Type_list_type(const google_api_expr_v1alpha1_Type *msg) { return UPB_READ_ONEOF(msg, const google_api_expr_v1alpha1_Type_ListType*, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 6, NULL); }
243
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_has_map_type(const google_api_expr_v1alpha1_Type *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 7; }
244
+ UPB_INLINE const google_api_expr_v1alpha1_Type_MapType* google_api_expr_v1alpha1_Type_map_type(const google_api_expr_v1alpha1_Type *msg) { return UPB_READ_ONEOF(msg, const google_api_expr_v1alpha1_Type_MapType*, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 7, NULL); }
245
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_has_function(const google_api_expr_v1alpha1_Type *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 8; }
246
+ UPB_INLINE const google_api_expr_v1alpha1_Type_FunctionType* google_api_expr_v1alpha1_Type_function(const google_api_expr_v1alpha1_Type *msg) { return UPB_READ_ONEOF(msg, const google_api_expr_v1alpha1_Type_FunctionType*, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 8, NULL); }
247
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_has_message_type(const google_api_expr_v1alpha1_Type *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 9; }
248
+ UPB_INLINE upb_strview google_api_expr_v1alpha1_Type_message_type(const google_api_expr_v1alpha1_Type *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 9, upb_strview_make("", strlen(""))); }
249
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_has_type_param(const google_api_expr_v1alpha1_Type *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 10; }
250
+ UPB_INLINE upb_strview google_api_expr_v1alpha1_Type_type_param(const google_api_expr_v1alpha1_Type *msg) { return UPB_READ_ONEOF(msg, upb_strview, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 10, upb_strview_make("", strlen(""))); }
251
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_has_type(const google_api_expr_v1alpha1_Type *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 11; }
252
+ UPB_INLINE const google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_Type_type(const google_api_expr_v1alpha1_Type *msg) { return UPB_READ_ONEOF(msg, const google_api_expr_v1alpha1_Type*, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 11, NULL); }
253
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_has_error(const google_api_expr_v1alpha1_Type *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 12; }
254
+ UPB_INLINE const struct google_protobuf_Empty* google_api_expr_v1alpha1_Type_error(const google_api_expr_v1alpha1_Type *msg) { return UPB_READ_ONEOF(msg, const struct google_protobuf_Empty*, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 12, NULL); }
255
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_has_abstract_type(const google_api_expr_v1alpha1_Type *msg) { return _upb_getoneofcase(msg, UPB_SIZE(8, 16)) == 14; }
256
+ UPB_INLINE const google_api_expr_v1alpha1_Type_AbstractType* google_api_expr_v1alpha1_Type_abstract_type(const google_api_expr_v1alpha1_Type *msg) { return UPB_READ_ONEOF(msg, const google_api_expr_v1alpha1_Type_AbstractType*, UPB_SIZE(0, 0), UPB_SIZE(8, 16), 14, NULL); }
257
+
258
+ UPB_INLINE void google_api_expr_v1alpha1_Type_set_dyn(google_api_expr_v1alpha1_Type *msg, struct google_protobuf_Empty* value) {
259
+ UPB_WRITE_ONEOF(msg, struct google_protobuf_Empty*, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 1);
260
+ }
261
+ UPB_INLINE struct google_protobuf_Empty* google_api_expr_v1alpha1_Type_mutable_dyn(google_api_expr_v1alpha1_Type *msg, upb_arena *arena) {
262
+ struct google_protobuf_Empty* sub = (struct google_protobuf_Empty*)google_api_expr_v1alpha1_Type_dyn(msg);
263
+ if (sub == NULL) {
264
+ sub = (struct google_protobuf_Empty*)_upb_msg_new(&google_protobuf_Empty_msginit, arena);
265
+ if (!sub) return NULL;
266
+ google_api_expr_v1alpha1_Type_set_dyn(msg, sub);
267
+ }
268
+ return sub;
269
+ }
270
+ UPB_INLINE void google_api_expr_v1alpha1_Type_set_null(google_api_expr_v1alpha1_Type *msg, int32_t value) {
271
+ UPB_WRITE_ONEOF(msg, int32_t, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 2);
272
+ }
273
+ UPB_INLINE void google_api_expr_v1alpha1_Type_set_primitive(google_api_expr_v1alpha1_Type *msg, int32_t value) {
274
+ UPB_WRITE_ONEOF(msg, int32_t, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 3);
275
+ }
276
+ UPB_INLINE void google_api_expr_v1alpha1_Type_set_wrapper(google_api_expr_v1alpha1_Type *msg, int32_t value) {
277
+ UPB_WRITE_ONEOF(msg, int32_t, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 4);
278
+ }
279
+ UPB_INLINE void google_api_expr_v1alpha1_Type_set_well_known(google_api_expr_v1alpha1_Type *msg, int32_t value) {
280
+ UPB_WRITE_ONEOF(msg, int32_t, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 5);
281
+ }
282
+ UPB_INLINE void google_api_expr_v1alpha1_Type_set_list_type(google_api_expr_v1alpha1_Type *msg, google_api_expr_v1alpha1_Type_ListType* value) {
283
+ UPB_WRITE_ONEOF(msg, google_api_expr_v1alpha1_Type_ListType*, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 6);
284
+ }
285
+ UPB_INLINE struct google_api_expr_v1alpha1_Type_ListType* google_api_expr_v1alpha1_Type_mutable_list_type(google_api_expr_v1alpha1_Type *msg, upb_arena *arena) {
286
+ struct google_api_expr_v1alpha1_Type_ListType* sub = (struct google_api_expr_v1alpha1_Type_ListType*)google_api_expr_v1alpha1_Type_list_type(msg);
287
+ if (sub == NULL) {
288
+ sub = (struct google_api_expr_v1alpha1_Type_ListType*)_upb_msg_new(&google_api_expr_v1alpha1_Type_ListType_msginit, arena);
289
+ if (!sub) return NULL;
290
+ google_api_expr_v1alpha1_Type_set_list_type(msg, sub);
291
+ }
292
+ return sub;
293
+ }
294
+ UPB_INLINE void google_api_expr_v1alpha1_Type_set_map_type(google_api_expr_v1alpha1_Type *msg, google_api_expr_v1alpha1_Type_MapType* value) {
295
+ UPB_WRITE_ONEOF(msg, google_api_expr_v1alpha1_Type_MapType*, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 7);
296
+ }
297
+ UPB_INLINE struct google_api_expr_v1alpha1_Type_MapType* google_api_expr_v1alpha1_Type_mutable_map_type(google_api_expr_v1alpha1_Type *msg, upb_arena *arena) {
298
+ struct google_api_expr_v1alpha1_Type_MapType* sub = (struct google_api_expr_v1alpha1_Type_MapType*)google_api_expr_v1alpha1_Type_map_type(msg);
299
+ if (sub == NULL) {
300
+ sub = (struct google_api_expr_v1alpha1_Type_MapType*)_upb_msg_new(&google_api_expr_v1alpha1_Type_MapType_msginit, arena);
301
+ if (!sub) return NULL;
302
+ google_api_expr_v1alpha1_Type_set_map_type(msg, sub);
303
+ }
304
+ return sub;
305
+ }
306
+ UPB_INLINE void google_api_expr_v1alpha1_Type_set_function(google_api_expr_v1alpha1_Type *msg, google_api_expr_v1alpha1_Type_FunctionType* value) {
307
+ UPB_WRITE_ONEOF(msg, google_api_expr_v1alpha1_Type_FunctionType*, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 8);
308
+ }
309
+ UPB_INLINE struct google_api_expr_v1alpha1_Type_FunctionType* google_api_expr_v1alpha1_Type_mutable_function(google_api_expr_v1alpha1_Type *msg, upb_arena *arena) {
310
+ struct google_api_expr_v1alpha1_Type_FunctionType* sub = (struct google_api_expr_v1alpha1_Type_FunctionType*)google_api_expr_v1alpha1_Type_function(msg);
311
+ if (sub == NULL) {
312
+ sub = (struct google_api_expr_v1alpha1_Type_FunctionType*)_upb_msg_new(&google_api_expr_v1alpha1_Type_FunctionType_msginit, arena);
313
+ if (!sub) return NULL;
314
+ google_api_expr_v1alpha1_Type_set_function(msg, sub);
315
+ }
316
+ return sub;
317
+ }
318
+ UPB_INLINE void google_api_expr_v1alpha1_Type_set_message_type(google_api_expr_v1alpha1_Type *msg, upb_strview value) {
319
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 9);
320
+ }
321
+ UPB_INLINE void google_api_expr_v1alpha1_Type_set_type_param(google_api_expr_v1alpha1_Type *msg, upb_strview value) {
322
+ UPB_WRITE_ONEOF(msg, upb_strview, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 10);
323
+ }
324
+ UPB_INLINE void google_api_expr_v1alpha1_Type_set_type(google_api_expr_v1alpha1_Type *msg, google_api_expr_v1alpha1_Type* value) {
325
+ UPB_WRITE_ONEOF(msg, google_api_expr_v1alpha1_Type*, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 11);
326
+ }
327
+ UPB_INLINE struct google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_Type_mutable_type(google_api_expr_v1alpha1_Type *msg, upb_arena *arena) {
328
+ struct google_api_expr_v1alpha1_Type* sub = (struct google_api_expr_v1alpha1_Type*)google_api_expr_v1alpha1_Type_type(msg);
329
+ if (sub == NULL) {
330
+ sub = (struct google_api_expr_v1alpha1_Type*)_upb_msg_new(&google_api_expr_v1alpha1_Type_msginit, arena);
331
+ if (!sub) return NULL;
332
+ google_api_expr_v1alpha1_Type_set_type(msg, sub);
333
+ }
334
+ return sub;
335
+ }
336
+ UPB_INLINE void google_api_expr_v1alpha1_Type_set_error(google_api_expr_v1alpha1_Type *msg, struct google_protobuf_Empty* value) {
337
+ UPB_WRITE_ONEOF(msg, struct google_protobuf_Empty*, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 12);
338
+ }
339
+ UPB_INLINE struct google_protobuf_Empty* google_api_expr_v1alpha1_Type_mutable_error(google_api_expr_v1alpha1_Type *msg, upb_arena *arena) {
340
+ struct google_protobuf_Empty* sub = (struct google_protobuf_Empty*)google_api_expr_v1alpha1_Type_error(msg);
341
+ if (sub == NULL) {
342
+ sub = (struct google_protobuf_Empty*)_upb_msg_new(&google_protobuf_Empty_msginit, arena);
343
+ if (!sub) return NULL;
344
+ google_api_expr_v1alpha1_Type_set_error(msg, sub);
345
+ }
346
+ return sub;
347
+ }
348
+ UPB_INLINE void google_api_expr_v1alpha1_Type_set_abstract_type(google_api_expr_v1alpha1_Type *msg, google_api_expr_v1alpha1_Type_AbstractType* value) {
349
+ UPB_WRITE_ONEOF(msg, google_api_expr_v1alpha1_Type_AbstractType*, UPB_SIZE(0, 0), value, UPB_SIZE(8, 16), 14);
350
+ }
351
+ UPB_INLINE struct google_api_expr_v1alpha1_Type_AbstractType* google_api_expr_v1alpha1_Type_mutable_abstract_type(google_api_expr_v1alpha1_Type *msg, upb_arena *arena) {
352
+ struct google_api_expr_v1alpha1_Type_AbstractType* sub = (struct google_api_expr_v1alpha1_Type_AbstractType*)google_api_expr_v1alpha1_Type_abstract_type(msg);
353
+ if (sub == NULL) {
354
+ sub = (struct google_api_expr_v1alpha1_Type_AbstractType*)_upb_msg_new(&google_api_expr_v1alpha1_Type_AbstractType_msginit, arena);
355
+ if (!sub) return NULL;
356
+ google_api_expr_v1alpha1_Type_set_abstract_type(msg, sub);
357
+ }
358
+ return sub;
359
+ }
360
+
361
+ /* google.api.expr.v1alpha1.Type.ListType */
362
+
363
+ UPB_INLINE google_api_expr_v1alpha1_Type_ListType *google_api_expr_v1alpha1_Type_ListType_new(upb_arena *arena) {
364
+ return (google_api_expr_v1alpha1_Type_ListType *)_upb_msg_new(&google_api_expr_v1alpha1_Type_ListType_msginit, arena);
365
+ }
366
+ UPB_INLINE google_api_expr_v1alpha1_Type_ListType *google_api_expr_v1alpha1_Type_ListType_parse(const char *buf, size_t size,
367
+ upb_arena *arena) {
368
+ google_api_expr_v1alpha1_Type_ListType *ret = google_api_expr_v1alpha1_Type_ListType_new(arena);
369
+ return (ret && upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Type_ListType_msginit, arena)) ? ret : NULL;
370
+ }
371
+ UPB_INLINE google_api_expr_v1alpha1_Type_ListType *google_api_expr_v1alpha1_Type_ListType_parse_ex(const char *buf, size_t size,
372
+ upb_arena *arena, int options) {
373
+ google_api_expr_v1alpha1_Type_ListType *ret = google_api_expr_v1alpha1_Type_ListType_new(arena);
374
+ return (ret && _upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Type_ListType_msginit, arena, options))
375
+ ? ret : NULL;
376
+ }
377
+ UPB_INLINE char *google_api_expr_v1alpha1_Type_ListType_serialize(const google_api_expr_v1alpha1_Type_ListType *msg, upb_arena *arena, size_t *len) {
378
+ return upb_encode(msg, &google_api_expr_v1alpha1_Type_ListType_msginit, arena, len);
379
+ }
380
+
381
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_ListType_has_elem_type(const google_api_expr_v1alpha1_Type_ListType *msg) { return _upb_hasbit(msg, 1); }
382
+ UPB_INLINE const google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_Type_ListType_elem_type(const google_api_expr_v1alpha1_Type_ListType *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const google_api_expr_v1alpha1_Type*); }
383
+
384
+ UPB_INLINE void google_api_expr_v1alpha1_Type_ListType_set_elem_type(google_api_expr_v1alpha1_Type_ListType *msg, google_api_expr_v1alpha1_Type* value) {
385
+ _upb_sethas(msg, 1);
386
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), google_api_expr_v1alpha1_Type*) = value;
387
+ }
388
+ UPB_INLINE struct google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_Type_ListType_mutable_elem_type(google_api_expr_v1alpha1_Type_ListType *msg, upb_arena *arena) {
389
+ struct google_api_expr_v1alpha1_Type* sub = (struct google_api_expr_v1alpha1_Type*)google_api_expr_v1alpha1_Type_ListType_elem_type(msg);
390
+ if (sub == NULL) {
391
+ sub = (struct google_api_expr_v1alpha1_Type*)_upb_msg_new(&google_api_expr_v1alpha1_Type_msginit, arena);
392
+ if (!sub) return NULL;
393
+ google_api_expr_v1alpha1_Type_ListType_set_elem_type(msg, sub);
394
+ }
395
+ return sub;
396
+ }
397
+
398
+ /* google.api.expr.v1alpha1.Type.MapType */
399
+
400
+ UPB_INLINE google_api_expr_v1alpha1_Type_MapType *google_api_expr_v1alpha1_Type_MapType_new(upb_arena *arena) {
401
+ return (google_api_expr_v1alpha1_Type_MapType *)_upb_msg_new(&google_api_expr_v1alpha1_Type_MapType_msginit, arena);
402
+ }
403
+ UPB_INLINE google_api_expr_v1alpha1_Type_MapType *google_api_expr_v1alpha1_Type_MapType_parse(const char *buf, size_t size,
404
+ upb_arena *arena) {
405
+ google_api_expr_v1alpha1_Type_MapType *ret = google_api_expr_v1alpha1_Type_MapType_new(arena);
406
+ return (ret && upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Type_MapType_msginit, arena)) ? ret : NULL;
407
+ }
408
+ UPB_INLINE google_api_expr_v1alpha1_Type_MapType *google_api_expr_v1alpha1_Type_MapType_parse_ex(const char *buf, size_t size,
409
+ upb_arena *arena, int options) {
410
+ google_api_expr_v1alpha1_Type_MapType *ret = google_api_expr_v1alpha1_Type_MapType_new(arena);
411
+ return (ret && _upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Type_MapType_msginit, arena, options))
412
+ ? ret : NULL;
413
+ }
414
+ UPB_INLINE char *google_api_expr_v1alpha1_Type_MapType_serialize(const google_api_expr_v1alpha1_Type_MapType *msg, upb_arena *arena, size_t *len) {
415
+ return upb_encode(msg, &google_api_expr_v1alpha1_Type_MapType_msginit, arena, len);
416
+ }
417
+
418
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_MapType_has_key_type(const google_api_expr_v1alpha1_Type_MapType *msg) { return _upb_hasbit(msg, 1); }
419
+ UPB_INLINE const google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_Type_MapType_key_type(const google_api_expr_v1alpha1_Type_MapType *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const google_api_expr_v1alpha1_Type*); }
420
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_MapType_has_value_type(const google_api_expr_v1alpha1_Type_MapType *msg) { return _upb_hasbit(msg, 2); }
421
+ UPB_INLINE const google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_Type_MapType_value_type(const google_api_expr_v1alpha1_Type_MapType *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), const google_api_expr_v1alpha1_Type*); }
422
+
423
+ UPB_INLINE void google_api_expr_v1alpha1_Type_MapType_set_key_type(google_api_expr_v1alpha1_Type_MapType *msg, google_api_expr_v1alpha1_Type* value) {
424
+ _upb_sethas(msg, 1);
425
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), google_api_expr_v1alpha1_Type*) = value;
426
+ }
427
+ UPB_INLINE struct google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_Type_MapType_mutable_key_type(google_api_expr_v1alpha1_Type_MapType *msg, upb_arena *arena) {
428
+ struct google_api_expr_v1alpha1_Type* sub = (struct google_api_expr_v1alpha1_Type*)google_api_expr_v1alpha1_Type_MapType_key_type(msg);
429
+ if (sub == NULL) {
430
+ sub = (struct google_api_expr_v1alpha1_Type*)_upb_msg_new(&google_api_expr_v1alpha1_Type_msginit, arena);
431
+ if (!sub) return NULL;
432
+ google_api_expr_v1alpha1_Type_MapType_set_key_type(msg, sub);
433
+ }
434
+ return sub;
435
+ }
436
+ UPB_INLINE void google_api_expr_v1alpha1_Type_MapType_set_value_type(google_api_expr_v1alpha1_Type_MapType *msg, google_api_expr_v1alpha1_Type* value) {
437
+ _upb_sethas(msg, 2);
438
+ *UPB_PTR_AT(msg, UPB_SIZE(8, 16), google_api_expr_v1alpha1_Type*) = value;
439
+ }
440
+ UPB_INLINE struct google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_Type_MapType_mutable_value_type(google_api_expr_v1alpha1_Type_MapType *msg, upb_arena *arena) {
441
+ struct google_api_expr_v1alpha1_Type* sub = (struct google_api_expr_v1alpha1_Type*)google_api_expr_v1alpha1_Type_MapType_value_type(msg);
442
+ if (sub == NULL) {
443
+ sub = (struct google_api_expr_v1alpha1_Type*)_upb_msg_new(&google_api_expr_v1alpha1_Type_msginit, arena);
444
+ if (!sub) return NULL;
445
+ google_api_expr_v1alpha1_Type_MapType_set_value_type(msg, sub);
446
+ }
447
+ return sub;
448
+ }
449
+
450
+ /* google.api.expr.v1alpha1.Type.FunctionType */
451
+
452
+ UPB_INLINE google_api_expr_v1alpha1_Type_FunctionType *google_api_expr_v1alpha1_Type_FunctionType_new(upb_arena *arena) {
453
+ return (google_api_expr_v1alpha1_Type_FunctionType *)_upb_msg_new(&google_api_expr_v1alpha1_Type_FunctionType_msginit, arena);
454
+ }
455
+ UPB_INLINE google_api_expr_v1alpha1_Type_FunctionType *google_api_expr_v1alpha1_Type_FunctionType_parse(const char *buf, size_t size,
456
+ upb_arena *arena) {
457
+ google_api_expr_v1alpha1_Type_FunctionType *ret = google_api_expr_v1alpha1_Type_FunctionType_new(arena);
458
+ return (ret && upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Type_FunctionType_msginit, arena)) ? ret : NULL;
459
+ }
460
+ UPB_INLINE google_api_expr_v1alpha1_Type_FunctionType *google_api_expr_v1alpha1_Type_FunctionType_parse_ex(const char *buf, size_t size,
461
+ upb_arena *arena, int options) {
462
+ google_api_expr_v1alpha1_Type_FunctionType *ret = google_api_expr_v1alpha1_Type_FunctionType_new(arena);
463
+ return (ret && _upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Type_FunctionType_msginit, arena, options))
464
+ ? ret : NULL;
465
+ }
466
+ UPB_INLINE char *google_api_expr_v1alpha1_Type_FunctionType_serialize(const google_api_expr_v1alpha1_Type_FunctionType *msg, upb_arena *arena, size_t *len) {
467
+ return upb_encode(msg, &google_api_expr_v1alpha1_Type_FunctionType_msginit, arena, len);
468
+ }
469
+
470
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_FunctionType_has_result_type(const google_api_expr_v1alpha1_Type_FunctionType *msg) { return _upb_hasbit(msg, 1); }
471
+ UPB_INLINE const google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_Type_FunctionType_result_type(const google_api_expr_v1alpha1_Type_FunctionType *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), const google_api_expr_v1alpha1_Type*); }
472
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_FunctionType_has_arg_types(const google_api_expr_v1alpha1_Type_FunctionType *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
473
+ UPB_INLINE const google_api_expr_v1alpha1_Type* const* google_api_expr_v1alpha1_Type_FunctionType_arg_types(const google_api_expr_v1alpha1_Type_FunctionType *msg, size_t *len) { return (const google_api_expr_v1alpha1_Type* const*)_upb_array_accessor(msg, UPB_SIZE(8, 16), len); }
474
+
475
+ UPB_INLINE void google_api_expr_v1alpha1_Type_FunctionType_set_result_type(google_api_expr_v1alpha1_Type_FunctionType *msg, google_api_expr_v1alpha1_Type* value) {
476
+ _upb_sethas(msg, 1);
477
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), google_api_expr_v1alpha1_Type*) = value;
478
+ }
479
+ UPB_INLINE struct google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_Type_FunctionType_mutable_result_type(google_api_expr_v1alpha1_Type_FunctionType *msg, upb_arena *arena) {
480
+ struct google_api_expr_v1alpha1_Type* sub = (struct google_api_expr_v1alpha1_Type*)google_api_expr_v1alpha1_Type_FunctionType_result_type(msg);
481
+ if (sub == NULL) {
482
+ sub = (struct google_api_expr_v1alpha1_Type*)_upb_msg_new(&google_api_expr_v1alpha1_Type_msginit, arena);
483
+ if (!sub) return NULL;
484
+ google_api_expr_v1alpha1_Type_FunctionType_set_result_type(msg, sub);
485
+ }
486
+ return sub;
487
+ }
488
+ UPB_INLINE google_api_expr_v1alpha1_Type** google_api_expr_v1alpha1_Type_FunctionType_mutable_arg_types(google_api_expr_v1alpha1_Type_FunctionType *msg, size_t *len) {
489
+ return (google_api_expr_v1alpha1_Type**)_upb_array_mutable_accessor(msg, UPB_SIZE(8, 16), len);
490
+ }
491
+ UPB_INLINE google_api_expr_v1alpha1_Type** google_api_expr_v1alpha1_Type_FunctionType_resize_arg_types(google_api_expr_v1alpha1_Type_FunctionType *msg, size_t len, upb_arena *arena) {
492
+ return (google_api_expr_v1alpha1_Type**)_upb_array_resize_accessor2(msg, UPB_SIZE(8, 16), len, UPB_SIZE(2, 3), arena);
493
+ }
494
+ UPB_INLINE struct google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_Type_FunctionType_add_arg_types(google_api_expr_v1alpha1_Type_FunctionType *msg, upb_arena *arena) {
495
+ struct google_api_expr_v1alpha1_Type* sub = (struct google_api_expr_v1alpha1_Type*)_upb_msg_new(&google_api_expr_v1alpha1_Type_msginit, arena);
496
+ bool ok = _upb_array_append_accessor2(
497
+ msg, UPB_SIZE(8, 16), UPB_SIZE(2, 3), &sub, arena);
498
+ if (!ok) return NULL;
499
+ return sub;
500
+ }
501
+
502
+ /* google.api.expr.v1alpha1.Type.AbstractType */
503
+
504
+ UPB_INLINE google_api_expr_v1alpha1_Type_AbstractType *google_api_expr_v1alpha1_Type_AbstractType_new(upb_arena *arena) {
505
+ return (google_api_expr_v1alpha1_Type_AbstractType *)_upb_msg_new(&google_api_expr_v1alpha1_Type_AbstractType_msginit, arena);
506
+ }
507
+ UPB_INLINE google_api_expr_v1alpha1_Type_AbstractType *google_api_expr_v1alpha1_Type_AbstractType_parse(const char *buf, size_t size,
508
+ upb_arena *arena) {
509
+ google_api_expr_v1alpha1_Type_AbstractType *ret = google_api_expr_v1alpha1_Type_AbstractType_new(arena);
510
+ return (ret && upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Type_AbstractType_msginit, arena)) ? ret : NULL;
511
+ }
512
+ UPB_INLINE google_api_expr_v1alpha1_Type_AbstractType *google_api_expr_v1alpha1_Type_AbstractType_parse_ex(const char *buf, size_t size,
513
+ upb_arena *arena, int options) {
514
+ google_api_expr_v1alpha1_Type_AbstractType *ret = google_api_expr_v1alpha1_Type_AbstractType_new(arena);
515
+ return (ret && _upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Type_AbstractType_msginit, arena, options))
516
+ ? ret : NULL;
517
+ }
518
+ UPB_INLINE char *google_api_expr_v1alpha1_Type_AbstractType_serialize(const google_api_expr_v1alpha1_Type_AbstractType *msg, upb_arena *arena, size_t *len) {
519
+ return upb_encode(msg, &google_api_expr_v1alpha1_Type_AbstractType_msginit, arena, len);
520
+ }
521
+
522
+ UPB_INLINE upb_strview google_api_expr_v1alpha1_Type_AbstractType_name(const google_api_expr_v1alpha1_Type_AbstractType *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview); }
523
+ UPB_INLINE bool google_api_expr_v1alpha1_Type_AbstractType_has_parameter_types(const google_api_expr_v1alpha1_Type_AbstractType *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(8, 16)); }
524
+ UPB_INLINE const google_api_expr_v1alpha1_Type* const* google_api_expr_v1alpha1_Type_AbstractType_parameter_types(const google_api_expr_v1alpha1_Type_AbstractType *msg, size_t *len) { return (const google_api_expr_v1alpha1_Type* const*)_upb_array_accessor(msg, UPB_SIZE(8, 16), len); }
525
+
526
+ UPB_INLINE void google_api_expr_v1alpha1_Type_AbstractType_set_name(google_api_expr_v1alpha1_Type_AbstractType *msg, upb_strview value) {
527
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview) = value;
528
+ }
529
+ UPB_INLINE google_api_expr_v1alpha1_Type** google_api_expr_v1alpha1_Type_AbstractType_mutable_parameter_types(google_api_expr_v1alpha1_Type_AbstractType *msg, size_t *len) {
530
+ return (google_api_expr_v1alpha1_Type**)_upb_array_mutable_accessor(msg, UPB_SIZE(8, 16), len);
531
+ }
532
+ UPB_INLINE google_api_expr_v1alpha1_Type** google_api_expr_v1alpha1_Type_AbstractType_resize_parameter_types(google_api_expr_v1alpha1_Type_AbstractType *msg, size_t len, upb_arena *arena) {
533
+ return (google_api_expr_v1alpha1_Type**)_upb_array_resize_accessor2(msg, UPB_SIZE(8, 16), len, UPB_SIZE(2, 3), arena);
534
+ }
535
+ UPB_INLINE struct google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_Type_AbstractType_add_parameter_types(google_api_expr_v1alpha1_Type_AbstractType *msg, upb_arena *arena) {
536
+ struct google_api_expr_v1alpha1_Type* sub = (struct google_api_expr_v1alpha1_Type*)_upb_msg_new(&google_api_expr_v1alpha1_Type_msginit, arena);
537
+ bool ok = _upb_array_append_accessor2(
538
+ msg, UPB_SIZE(8, 16), UPB_SIZE(2, 3), &sub, arena);
539
+ if (!ok) return NULL;
540
+ return sub;
541
+ }
542
+
543
+ /* google.api.expr.v1alpha1.Decl */
544
+
545
+ UPB_INLINE google_api_expr_v1alpha1_Decl *google_api_expr_v1alpha1_Decl_new(upb_arena *arena) {
546
+ return (google_api_expr_v1alpha1_Decl *)_upb_msg_new(&google_api_expr_v1alpha1_Decl_msginit, arena);
547
+ }
548
+ UPB_INLINE google_api_expr_v1alpha1_Decl *google_api_expr_v1alpha1_Decl_parse(const char *buf, size_t size,
549
+ upb_arena *arena) {
550
+ google_api_expr_v1alpha1_Decl *ret = google_api_expr_v1alpha1_Decl_new(arena);
551
+ return (ret && upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Decl_msginit, arena)) ? ret : NULL;
552
+ }
553
+ UPB_INLINE google_api_expr_v1alpha1_Decl *google_api_expr_v1alpha1_Decl_parse_ex(const char *buf, size_t size,
554
+ upb_arena *arena, int options) {
555
+ google_api_expr_v1alpha1_Decl *ret = google_api_expr_v1alpha1_Decl_new(arena);
556
+ return (ret && _upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Decl_msginit, arena, options))
557
+ ? ret : NULL;
558
+ }
559
+ UPB_INLINE char *google_api_expr_v1alpha1_Decl_serialize(const google_api_expr_v1alpha1_Decl *msg, upb_arena *arena, size_t *len) {
560
+ return upb_encode(msg, &google_api_expr_v1alpha1_Decl_msginit, arena, len);
561
+ }
562
+
563
+ typedef enum {
564
+ google_api_expr_v1alpha1_Decl_decl_kind_ident = 2,
565
+ google_api_expr_v1alpha1_Decl_decl_kind_function = 3,
566
+ google_api_expr_v1alpha1_Decl_decl_kind_NOT_SET = 0
567
+ } google_api_expr_v1alpha1_Decl_decl_kind_oneofcases;
568
+ UPB_INLINE google_api_expr_v1alpha1_Decl_decl_kind_oneofcases google_api_expr_v1alpha1_Decl_decl_kind_case(const google_api_expr_v1alpha1_Decl* msg) { return (google_api_expr_v1alpha1_Decl_decl_kind_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(12, 24), int32_t); }
569
+
570
+ UPB_INLINE upb_strview google_api_expr_v1alpha1_Decl_name(const google_api_expr_v1alpha1_Decl *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview); }
571
+ UPB_INLINE bool google_api_expr_v1alpha1_Decl_has_ident(const google_api_expr_v1alpha1_Decl *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 2; }
572
+ UPB_INLINE const google_api_expr_v1alpha1_Decl_IdentDecl* google_api_expr_v1alpha1_Decl_ident(const google_api_expr_v1alpha1_Decl *msg) { return UPB_READ_ONEOF(msg, const google_api_expr_v1alpha1_Decl_IdentDecl*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 2, NULL); }
573
+ UPB_INLINE bool google_api_expr_v1alpha1_Decl_has_function(const google_api_expr_v1alpha1_Decl *msg) { return _upb_getoneofcase(msg, UPB_SIZE(12, 24)) == 3; }
574
+ UPB_INLINE const google_api_expr_v1alpha1_Decl_FunctionDecl* google_api_expr_v1alpha1_Decl_function(const google_api_expr_v1alpha1_Decl *msg) { return UPB_READ_ONEOF(msg, const google_api_expr_v1alpha1_Decl_FunctionDecl*, UPB_SIZE(8, 16), UPB_SIZE(12, 24), 3, NULL); }
575
+
576
+ UPB_INLINE void google_api_expr_v1alpha1_Decl_set_name(google_api_expr_v1alpha1_Decl *msg, upb_strview value) {
577
+ *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview) = value;
578
+ }
579
+ UPB_INLINE void google_api_expr_v1alpha1_Decl_set_ident(google_api_expr_v1alpha1_Decl *msg, google_api_expr_v1alpha1_Decl_IdentDecl* value) {
580
+ UPB_WRITE_ONEOF(msg, google_api_expr_v1alpha1_Decl_IdentDecl*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 2);
581
+ }
582
+ UPB_INLINE struct google_api_expr_v1alpha1_Decl_IdentDecl* google_api_expr_v1alpha1_Decl_mutable_ident(google_api_expr_v1alpha1_Decl *msg, upb_arena *arena) {
583
+ struct google_api_expr_v1alpha1_Decl_IdentDecl* sub = (struct google_api_expr_v1alpha1_Decl_IdentDecl*)google_api_expr_v1alpha1_Decl_ident(msg);
584
+ if (sub == NULL) {
585
+ sub = (struct google_api_expr_v1alpha1_Decl_IdentDecl*)_upb_msg_new(&google_api_expr_v1alpha1_Decl_IdentDecl_msginit, arena);
586
+ if (!sub) return NULL;
587
+ google_api_expr_v1alpha1_Decl_set_ident(msg, sub);
588
+ }
589
+ return sub;
590
+ }
591
+ UPB_INLINE void google_api_expr_v1alpha1_Decl_set_function(google_api_expr_v1alpha1_Decl *msg, google_api_expr_v1alpha1_Decl_FunctionDecl* value) {
592
+ UPB_WRITE_ONEOF(msg, google_api_expr_v1alpha1_Decl_FunctionDecl*, UPB_SIZE(8, 16), value, UPB_SIZE(12, 24), 3);
593
+ }
594
+ UPB_INLINE struct google_api_expr_v1alpha1_Decl_FunctionDecl* google_api_expr_v1alpha1_Decl_mutable_function(google_api_expr_v1alpha1_Decl *msg, upb_arena *arena) {
595
+ struct google_api_expr_v1alpha1_Decl_FunctionDecl* sub = (struct google_api_expr_v1alpha1_Decl_FunctionDecl*)google_api_expr_v1alpha1_Decl_function(msg);
596
+ if (sub == NULL) {
597
+ sub = (struct google_api_expr_v1alpha1_Decl_FunctionDecl*)_upb_msg_new(&google_api_expr_v1alpha1_Decl_FunctionDecl_msginit, arena);
598
+ if (!sub) return NULL;
599
+ google_api_expr_v1alpha1_Decl_set_function(msg, sub);
600
+ }
601
+ return sub;
602
+ }
603
+
604
+ /* google.api.expr.v1alpha1.Decl.IdentDecl */
605
+
606
+ UPB_INLINE google_api_expr_v1alpha1_Decl_IdentDecl *google_api_expr_v1alpha1_Decl_IdentDecl_new(upb_arena *arena) {
607
+ return (google_api_expr_v1alpha1_Decl_IdentDecl *)_upb_msg_new(&google_api_expr_v1alpha1_Decl_IdentDecl_msginit, arena);
608
+ }
609
+ UPB_INLINE google_api_expr_v1alpha1_Decl_IdentDecl *google_api_expr_v1alpha1_Decl_IdentDecl_parse(const char *buf, size_t size,
610
+ upb_arena *arena) {
611
+ google_api_expr_v1alpha1_Decl_IdentDecl *ret = google_api_expr_v1alpha1_Decl_IdentDecl_new(arena);
612
+ return (ret && upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Decl_IdentDecl_msginit, arena)) ? ret : NULL;
613
+ }
614
+ UPB_INLINE google_api_expr_v1alpha1_Decl_IdentDecl *google_api_expr_v1alpha1_Decl_IdentDecl_parse_ex(const char *buf, size_t size,
615
+ upb_arena *arena, int options) {
616
+ google_api_expr_v1alpha1_Decl_IdentDecl *ret = google_api_expr_v1alpha1_Decl_IdentDecl_new(arena);
617
+ return (ret && _upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Decl_IdentDecl_msginit, arena, options))
618
+ ? ret : NULL;
619
+ }
620
+ UPB_INLINE char *google_api_expr_v1alpha1_Decl_IdentDecl_serialize(const google_api_expr_v1alpha1_Decl_IdentDecl *msg, upb_arena *arena, size_t *len) {
621
+ return upb_encode(msg, &google_api_expr_v1alpha1_Decl_IdentDecl_msginit, arena, len);
622
+ }
623
+
624
+ UPB_INLINE bool google_api_expr_v1alpha1_Decl_IdentDecl_has_type(const google_api_expr_v1alpha1_Decl_IdentDecl *msg) { return _upb_hasbit(msg, 1); }
625
+ UPB_INLINE const google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_Decl_IdentDecl_type(const google_api_expr_v1alpha1_Decl_IdentDecl *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const google_api_expr_v1alpha1_Type*); }
626
+ UPB_INLINE bool google_api_expr_v1alpha1_Decl_IdentDecl_has_value(const google_api_expr_v1alpha1_Decl_IdentDecl *msg) { return _upb_hasbit(msg, 2); }
627
+ UPB_INLINE const struct google_api_expr_v1alpha1_Constant* google_api_expr_v1alpha1_Decl_IdentDecl_value(const google_api_expr_v1alpha1_Decl_IdentDecl *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(16, 32), const struct google_api_expr_v1alpha1_Constant*); }
628
+ UPB_INLINE upb_strview google_api_expr_v1alpha1_Decl_IdentDecl_doc(const google_api_expr_v1alpha1_Decl_IdentDecl *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
629
+
630
+ UPB_INLINE void google_api_expr_v1alpha1_Decl_IdentDecl_set_type(google_api_expr_v1alpha1_Decl_IdentDecl *msg, google_api_expr_v1alpha1_Type* value) {
631
+ _upb_sethas(msg, 1);
632
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), google_api_expr_v1alpha1_Type*) = value;
633
+ }
634
+ UPB_INLINE struct google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_Decl_IdentDecl_mutable_type(google_api_expr_v1alpha1_Decl_IdentDecl *msg, upb_arena *arena) {
635
+ struct google_api_expr_v1alpha1_Type* sub = (struct google_api_expr_v1alpha1_Type*)google_api_expr_v1alpha1_Decl_IdentDecl_type(msg);
636
+ if (sub == NULL) {
637
+ sub = (struct google_api_expr_v1alpha1_Type*)_upb_msg_new(&google_api_expr_v1alpha1_Type_msginit, arena);
638
+ if (!sub) return NULL;
639
+ google_api_expr_v1alpha1_Decl_IdentDecl_set_type(msg, sub);
640
+ }
641
+ return sub;
642
+ }
643
+ UPB_INLINE void google_api_expr_v1alpha1_Decl_IdentDecl_set_value(google_api_expr_v1alpha1_Decl_IdentDecl *msg, struct google_api_expr_v1alpha1_Constant* value) {
644
+ _upb_sethas(msg, 2);
645
+ *UPB_PTR_AT(msg, UPB_SIZE(16, 32), struct google_api_expr_v1alpha1_Constant*) = value;
646
+ }
647
+ UPB_INLINE struct google_api_expr_v1alpha1_Constant* google_api_expr_v1alpha1_Decl_IdentDecl_mutable_value(google_api_expr_v1alpha1_Decl_IdentDecl *msg, upb_arena *arena) {
648
+ struct google_api_expr_v1alpha1_Constant* sub = (struct google_api_expr_v1alpha1_Constant*)google_api_expr_v1alpha1_Decl_IdentDecl_value(msg);
649
+ if (sub == NULL) {
650
+ sub = (struct google_api_expr_v1alpha1_Constant*)_upb_msg_new(&google_api_expr_v1alpha1_Constant_msginit, arena);
651
+ if (!sub) return NULL;
652
+ google_api_expr_v1alpha1_Decl_IdentDecl_set_value(msg, sub);
653
+ }
654
+ return sub;
655
+ }
656
+ UPB_INLINE void google_api_expr_v1alpha1_Decl_IdentDecl_set_doc(google_api_expr_v1alpha1_Decl_IdentDecl *msg, upb_strview value) {
657
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
658
+ }
659
+
660
+ /* google.api.expr.v1alpha1.Decl.FunctionDecl */
661
+
662
+ UPB_INLINE google_api_expr_v1alpha1_Decl_FunctionDecl *google_api_expr_v1alpha1_Decl_FunctionDecl_new(upb_arena *arena) {
663
+ return (google_api_expr_v1alpha1_Decl_FunctionDecl *)_upb_msg_new(&google_api_expr_v1alpha1_Decl_FunctionDecl_msginit, arena);
664
+ }
665
+ UPB_INLINE google_api_expr_v1alpha1_Decl_FunctionDecl *google_api_expr_v1alpha1_Decl_FunctionDecl_parse(const char *buf, size_t size,
666
+ upb_arena *arena) {
667
+ google_api_expr_v1alpha1_Decl_FunctionDecl *ret = google_api_expr_v1alpha1_Decl_FunctionDecl_new(arena);
668
+ return (ret && upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Decl_FunctionDecl_msginit, arena)) ? ret : NULL;
669
+ }
670
+ UPB_INLINE google_api_expr_v1alpha1_Decl_FunctionDecl *google_api_expr_v1alpha1_Decl_FunctionDecl_parse_ex(const char *buf, size_t size,
671
+ upb_arena *arena, int options) {
672
+ google_api_expr_v1alpha1_Decl_FunctionDecl *ret = google_api_expr_v1alpha1_Decl_FunctionDecl_new(arena);
673
+ return (ret && _upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Decl_FunctionDecl_msginit, arena, options))
674
+ ? ret : NULL;
675
+ }
676
+ UPB_INLINE char *google_api_expr_v1alpha1_Decl_FunctionDecl_serialize(const google_api_expr_v1alpha1_Decl_FunctionDecl *msg, upb_arena *arena, size_t *len) {
677
+ return upb_encode(msg, &google_api_expr_v1alpha1_Decl_FunctionDecl_msginit, arena, len);
678
+ }
679
+
680
+ UPB_INLINE bool google_api_expr_v1alpha1_Decl_FunctionDecl_has_overloads(const google_api_expr_v1alpha1_Decl_FunctionDecl *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(0, 0)); }
681
+ UPB_INLINE const google_api_expr_v1alpha1_Decl_FunctionDecl_Overload* const* google_api_expr_v1alpha1_Decl_FunctionDecl_overloads(const google_api_expr_v1alpha1_Decl_FunctionDecl *msg, size_t *len) { return (const google_api_expr_v1alpha1_Decl_FunctionDecl_Overload* const*)_upb_array_accessor(msg, UPB_SIZE(0, 0), len); }
682
+
683
+ UPB_INLINE google_api_expr_v1alpha1_Decl_FunctionDecl_Overload** google_api_expr_v1alpha1_Decl_FunctionDecl_mutable_overloads(google_api_expr_v1alpha1_Decl_FunctionDecl *msg, size_t *len) {
684
+ return (google_api_expr_v1alpha1_Decl_FunctionDecl_Overload**)_upb_array_mutable_accessor(msg, UPB_SIZE(0, 0), len);
685
+ }
686
+ UPB_INLINE google_api_expr_v1alpha1_Decl_FunctionDecl_Overload** google_api_expr_v1alpha1_Decl_FunctionDecl_resize_overloads(google_api_expr_v1alpha1_Decl_FunctionDecl *msg, size_t len, upb_arena *arena) {
687
+ return (google_api_expr_v1alpha1_Decl_FunctionDecl_Overload**)_upb_array_resize_accessor2(msg, UPB_SIZE(0, 0), len, UPB_SIZE(2, 3), arena);
688
+ }
689
+ UPB_INLINE struct google_api_expr_v1alpha1_Decl_FunctionDecl_Overload* google_api_expr_v1alpha1_Decl_FunctionDecl_add_overloads(google_api_expr_v1alpha1_Decl_FunctionDecl *msg, upb_arena *arena) {
690
+ struct google_api_expr_v1alpha1_Decl_FunctionDecl_Overload* sub = (struct google_api_expr_v1alpha1_Decl_FunctionDecl_Overload*)_upb_msg_new(&google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_msginit, arena);
691
+ bool ok = _upb_array_append_accessor2(
692
+ msg, UPB_SIZE(0, 0), UPB_SIZE(2, 3), &sub, arena);
693
+ if (!ok) return NULL;
694
+ return sub;
695
+ }
696
+
697
+ /* google.api.expr.v1alpha1.Decl.FunctionDecl.Overload */
698
+
699
+ UPB_INLINE google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_new(upb_arena *arena) {
700
+ return (google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *)_upb_msg_new(&google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_msginit, arena);
701
+ }
702
+ UPB_INLINE google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_parse(const char *buf, size_t size,
703
+ upb_arena *arena) {
704
+ google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *ret = google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_new(arena);
705
+ return (ret && upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_msginit, arena)) ? ret : NULL;
706
+ }
707
+ UPB_INLINE google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_parse_ex(const char *buf, size_t size,
708
+ upb_arena *arena, int options) {
709
+ google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *ret = google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_new(arena);
710
+ return (ret && _upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_msginit, arena, options))
711
+ ? ret : NULL;
712
+ }
713
+ UPB_INLINE char *google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_serialize(const google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg, upb_arena *arena, size_t *len) {
714
+ return upb_encode(msg, &google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_msginit, arena, len);
715
+ }
716
+
717
+ UPB_INLINE upb_strview google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_overload_id(const google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
718
+ UPB_INLINE bool google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_has_params(const google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(24, 48)); }
719
+ UPB_INLINE const google_api_expr_v1alpha1_Type* const* google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_params(const google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg, size_t *len) { return (const google_api_expr_v1alpha1_Type* const*)_upb_array_accessor(msg, UPB_SIZE(24, 48), len); }
720
+ UPB_INLINE upb_strview const* google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_type_params(const google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(28, 56), len); }
721
+ UPB_INLINE bool google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_has_result_type(const google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg) { return _upb_hasbit(msg, 1); }
722
+ UPB_INLINE const google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_result_type(const google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(20, 40), const google_api_expr_v1alpha1_Type*); }
723
+ UPB_INLINE bool google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_is_instance_function(const google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool); }
724
+ UPB_INLINE upb_strview google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_doc(const google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), upb_strview); }
725
+
726
+ UPB_INLINE void google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_set_overload_id(google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg, upb_strview value) {
727
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
728
+ }
729
+ UPB_INLINE google_api_expr_v1alpha1_Type** google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_mutable_params(google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg, size_t *len) {
730
+ return (google_api_expr_v1alpha1_Type**)_upb_array_mutable_accessor(msg, UPB_SIZE(24, 48), len);
731
+ }
732
+ UPB_INLINE google_api_expr_v1alpha1_Type** google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_resize_params(google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg, size_t len, upb_arena *arena) {
733
+ return (google_api_expr_v1alpha1_Type**)_upb_array_resize_accessor2(msg, UPB_SIZE(24, 48), len, UPB_SIZE(2, 3), arena);
734
+ }
735
+ UPB_INLINE struct google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_add_params(google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg, upb_arena *arena) {
736
+ struct google_api_expr_v1alpha1_Type* sub = (struct google_api_expr_v1alpha1_Type*)_upb_msg_new(&google_api_expr_v1alpha1_Type_msginit, arena);
737
+ bool ok = _upb_array_append_accessor2(
738
+ msg, UPB_SIZE(24, 48), UPB_SIZE(2, 3), &sub, arena);
739
+ if (!ok) return NULL;
740
+ return sub;
741
+ }
742
+ UPB_INLINE upb_strview* google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_mutable_type_params(google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg, size_t *len) {
743
+ return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(28, 56), len);
744
+ }
745
+ UPB_INLINE upb_strview* google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_resize_type_params(google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg, size_t len, upb_arena *arena) {
746
+ return (upb_strview*)_upb_array_resize_accessor2(msg, UPB_SIZE(28, 56), len, UPB_SIZE(3, 4), arena);
747
+ }
748
+ UPB_INLINE bool google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_add_type_params(google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg, upb_strview val, upb_arena *arena) {
749
+ return _upb_array_append_accessor2(msg, UPB_SIZE(28, 56), UPB_SIZE(3, 4), &val,
750
+ arena);
751
+ }
752
+ UPB_INLINE void google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_set_result_type(google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg, google_api_expr_v1alpha1_Type* value) {
753
+ _upb_sethas(msg, 1);
754
+ *UPB_PTR_AT(msg, UPB_SIZE(20, 40), google_api_expr_v1alpha1_Type*) = value;
755
+ }
756
+ UPB_INLINE struct google_api_expr_v1alpha1_Type* google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_mutable_result_type(google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg, upb_arena *arena) {
757
+ struct google_api_expr_v1alpha1_Type* sub = (struct google_api_expr_v1alpha1_Type*)google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_result_type(msg);
758
+ if (sub == NULL) {
759
+ sub = (struct google_api_expr_v1alpha1_Type*)_upb_msg_new(&google_api_expr_v1alpha1_Type_msginit, arena);
760
+ if (!sub) return NULL;
761
+ google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_set_result_type(msg, sub);
762
+ }
763
+ return sub;
764
+ }
765
+ UPB_INLINE void google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_set_is_instance_function(google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg, bool value) {
766
+ *UPB_PTR_AT(msg, UPB_SIZE(1, 1), bool) = value;
767
+ }
768
+ UPB_INLINE void google_api_expr_v1alpha1_Decl_FunctionDecl_Overload_set_doc(google_api_expr_v1alpha1_Decl_FunctionDecl_Overload *msg, upb_strview value) {
769
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), upb_strview) = value;
770
+ }
771
+
772
+ /* google.api.expr.v1alpha1.Reference */
773
+
774
+ UPB_INLINE google_api_expr_v1alpha1_Reference *google_api_expr_v1alpha1_Reference_new(upb_arena *arena) {
775
+ return (google_api_expr_v1alpha1_Reference *)_upb_msg_new(&google_api_expr_v1alpha1_Reference_msginit, arena);
776
+ }
777
+ UPB_INLINE google_api_expr_v1alpha1_Reference *google_api_expr_v1alpha1_Reference_parse(const char *buf, size_t size,
778
+ upb_arena *arena) {
779
+ google_api_expr_v1alpha1_Reference *ret = google_api_expr_v1alpha1_Reference_new(arena);
780
+ return (ret && upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Reference_msginit, arena)) ? ret : NULL;
781
+ }
782
+ UPB_INLINE google_api_expr_v1alpha1_Reference *google_api_expr_v1alpha1_Reference_parse_ex(const char *buf, size_t size,
783
+ upb_arena *arena, int options) {
784
+ google_api_expr_v1alpha1_Reference *ret = google_api_expr_v1alpha1_Reference_new(arena);
785
+ return (ret && _upb_decode(buf, size, ret, &google_api_expr_v1alpha1_Reference_msginit, arena, options))
786
+ ? ret : NULL;
787
+ }
788
+ UPB_INLINE char *google_api_expr_v1alpha1_Reference_serialize(const google_api_expr_v1alpha1_Reference *msg, upb_arena *arena, size_t *len) {
789
+ return upb_encode(msg, &google_api_expr_v1alpha1_Reference_msginit, arena, len);
790
+ }
791
+
792
+ UPB_INLINE upb_strview google_api_expr_v1alpha1_Reference_name(const google_api_expr_v1alpha1_Reference *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
793
+ UPB_INLINE upb_strview const* google_api_expr_v1alpha1_Reference_overload_id(const google_api_expr_v1alpha1_Reference *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(16, 32), len); }
794
+ UPB_INLINE bool google_api_expr_v1alpha1_Reference_has_value(const google_api_expr_v1alpha1_Reference *msg) { return _upb_hasbit(msg, 1); }
795
+ UPB_INLINE const struct google_api_expr_v1alpha1_Constant* google_api_expr_v1alpha1_Reference_value(const google_api_expr_v1alpha1_Reference *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), const struct google_api_expr_v1alpha1_Constant*); }
796
+
797
+ UPB_INLINE void google_api_expr_v1alpha1_Reference_set_name(google_api_expr_v1alpha1_Reference *msg, upb_strview value) {
798
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
799
+ }
800
+ UPB_INLINE upb_strview* google_api_expr_v1alpha1_Reference_mutable_overload_id(google_api_expr_v1alpha1_Reference *msg, size_t *len) {
801
+ return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(16, 32), len);
802
+ }
803
+ UPB_INLINE upb_strview* google_api_expr_v1alpha1_Reference_resize_overload_id(google_api_expr_v1alpha1_Reference *msg, size_t len, upb_arena *arena) {
804
+ return (upb_strview*)_upb_array_resize_accessor2(msg, UPB_SIZE(16, 32), len, UPB_SIZE(3, 4), arena);
805
+ }
806
+ UPB_INLINE bool google_api_expr_v1alpha1_Reference_add_overload_id(google_api_expr_v1alpha1_Reference *msg, upb_strview val, upb_arena *arena) {
807
+ return _upb_array_append_accessor2(msg, UPB_SIZE(16, 32), UPB_SIZE(3, 4), &val,
808
+ arena);
809
+ }
810
+ UPB_INLINE void google_api_expr_v1alpha1_Reference_set_value(google_api_expr_v1alpha1_Reference *msg, struct google_api_expr_v1alpha1_Constant* value) {
811
+ _upb_sethas(msg, 1);
812
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), struct google_api_expr_v1alpha1_Constant*) = value;
813
+ }
814
+ UPB_INLINE struct google_api_expr_v1alpha1_Constant* google_api_expr_v1alpha1_Reference_mutable_value(google_api_expr_v1alpha1_Reference *msg, upb_arena *arena) {
815
+ struct google_api_expr_v1alpha1_Constant* sub = (struct google_api_expr_v1alpha1_Constant*)google_api_expr_v1alpha1_Reference_value(msg);
816
+ if (sub == NULL) {
817
+ sub = (struct google_api_expr_v1alpha1_Constant*)_upb_msg_new(&google_api_expr_v1alpha1_Constant_msginit, arena);
818
+ if (!sub) return NULL;
819
+ google_api_expr_v1alpha1_Reference_set_value(msg, sub);
820
+ }
821
+ return sub;
822
+ }
823
+
824
+ #ifdef __cplusplus
825
+ } /* extern "C" */
826
+ #endif
827
+
828
+ #include "upb/port_undef.inc"
829
+
830
+ #endif /* GOOGLE_API_EXPR_V1ALPHA1_CHECKED_PROTO_UPB_H_ */