grpc 1.42.0 → 1.43.1

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

Potentially problematic release.


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

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