grpc 1.34.0 → 1.35.0.pre1

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 (458) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +808 -2787
  3. data/etc/roots.pem +257 -573
  4. data/include/grpc/compression.h +1 -1
  5. data/include/grpc/grpc.h +14 -0
  6. data/include/grpc/grpc_security.h +61 -3
  7. data/include/grpc/impl/codegen/atm_windows.h +4 -0
  8. data/include/grpc/impl/codegen/byte_buffer.h +1 -1
  9. data/include/grpc/impl/codegen/grpc_types.h +1 -1
  10. data/include/grpc/impl/codegen/log.h +0 -2
  11. data/include/grpc/impl/codegen/sync_windows.h +4 -0
  12. data/include/grpc/slice_buffer.h +3 -3
  13. data/include/grpc/support/sync.h +3 -3
  14. data/include/grpc/support/time.h +7 -7
  15. data/src/core/ext/filters/client_channel/backend_metric.cc +2 -4
  16. data/src/core/ext/filters/client_channel/client_channel.cc +2734 -1498
  17. data/src/core/ext/filters/client_channel/client_channel.h +0 -4
  18. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +1 -1
  19. data/src/core/ext/filters/client_channel/config_selector.h +4 -0
  20. data/src/core/ext/filters/client_channel/dynamic_filters.cc +186 -0
  21. data/src/core/ext/filters/client_channel/dynamic_filters.h +99 -0
  22. data/src/core/ext/filters/client_channel/health/health_check_client.cc +6 -6
  23. data/src/core/ext/filters/client_channel/health/health_check_client.h +2 -2
  24. data/src/core/ext/filters/client_channel/http_connect_handshaker.cc +4 -5
  25. data/src/core/ext/filters/client_channel/http_proxy.cc +21 -20
  26. data/src/core/ext/filters/client_channel/lb_policy.cc +1 -1
  27. data/src/core/ext/filters/client_channel/lb_policy.h +2 -3
  28. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +32 -30
  29. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +3 -3
  30. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +1 -1
  31. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +162 -20
  32. data/src/core/ext/filters/client_channel/lb_policy/xds/xds.h +0 -8
  33. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h +24 -0
  34. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +5 -2
  35. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +1 -1
  36. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +1262 -0
  37. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +7 -14
  38. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +1 -32
  39. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +2 -2
  40. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +454 -16
  41. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +5 -0
  42. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +6 -9
  43. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +2 -2
  44. data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +18 -31
  45. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +3 -5
  46. data/src/core/ext/filters/client_channel/resolver_factory.h +6 -6
  47. data/src/core/ext/filters/client_channel/resolver_registry.cc +40 -39
  48. data/src/core/ext/filters/client_channel/resolver_registry.h +2 -2
  49. data/src/core/ext/filters/client_channel/resolver_result_parsing.cc +11 -13
  50. data/src/core/ext/filters/client_channel/resolver_result_parsing.h +8 -8
  51. data/src/core/ext/filters/client_channel/retry_throttle.cc +5 -3
  52. data/src/core/ext/filters/client_channel/retry_throttle.h +3 -1
  53. data/src/core/ext/filters/client_channel/service_config_call_data.h +19 -1
  54. data/src/core/ext/filters/client_channel/subchannel.cc +34 -50
  55. data/src/core/ext/filters/client_channel/subchannel.h +12 -18
  56. data/src/core/ext/filters/deadline/deadline_filter.cc +4 -2
  57. data/src/core/ext/filters/http/client_authority_filter.cc +6 -6
  58. data/src/core/ext/filters/http/http_filters_plugin.cc +6 -3
  59. data/src/core/ext/filters/message_size/message_size_filter.cc +1 -1
  60. data/src/core/ext/filters/workarounds/workaround_utils.cc +1 -1
  61. data/src/core/ext/transport/chttp2/client/authority.cc +3 -3
  62. data/src/core/ext/transport/chttp2/client/insecure/channel_create.cc +20 -8
  63. data/src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc +21 -10
  64. data/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc +26 -14
  65. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +178 -86
  66. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc +12 -5
  67. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +7 -8
  68. data/src/core/ext/transport/chttp2/transport/flow_control.h +1 -1
  69. data/src/core/ext/transport/chttp2/transport/frame_settings.h +2 -1
  70. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +6 -6
  71. data/src/core/ext/transport/chttp2/transport/writing.cc +1 -1
  72. data/src/core/ext/transport/inproc/inproc_transport.cc +42 -8
  73. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +1 -0
  74. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +1 -1
  75. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +7 -0
  76. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +27 -27
  77. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +139 -40
  78. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +13 -13
  79. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +44 -17
  80. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +111 -111
  81. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +424 -241
  82. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +3 -3
  83. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +13 -5
  84. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +22 -22
  85. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +47 -21
  86. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +21 -21
  87. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +88 -39
  88. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +4 -4
  89. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +15 -6
  90. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +44 -44
  91. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +200 -78
  92. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +17 -17
  93. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +72 -35
  94. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +1 -1
  95. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +7 -0
  96. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +7 -7
  97. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +27 -11
  98. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +30 -30
  99. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +136 -49
  100. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +39 -39
  101. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +157 -89
  102. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +4 -4
  103. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +17 -9
  104. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +47 -47
  105. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +163 -78
  106. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +1 -1
  107. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +7 -0
  108. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +2 -2
  109. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +9 -2
  110. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +1 -1
  111. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +7 -0
  112. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +13 -13
  113. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +59 -36
  114. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +16 -16
  115. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +61 -29
  116. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +26 -26
  117. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +101 -66
  118. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +2 -2
  119. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +11 -3
  120. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +28 -28
  121. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +122 -77
  122. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +23 -23
  123. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +106 -54
  124. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +2 -2
  125. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +13 -0
  126. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +16 -16
  127. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +81 -35
  128. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +7 -7
  129. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +38 -22
  130. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +203 -203
  131. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +845 -495
  132. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +5 -5
  133. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +26 -6
  134. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +3 -3
  135. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +17 -3
  136. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +87 -87
  137. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +343 -204
  138. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +1 -0
  139. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +20 -20
  140. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +85 -46
  141. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +7 -7
  142. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +33 -11
  143. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +32 -32
  144. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +118 -67
  145. data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.c +1 -1
  146. data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.h +7 -0
  147. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +1 -1
  148. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +7 -0
  149. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +29 -29
  150. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +120 -82
  151. data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.c +1 -1
  152. data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.h +7 -0
  153. data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.c +1 -1
  154. data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.h +7 -0
  155. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +7 -7
  156. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +31 -16
  157. data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c +1 -1
  158. data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h +7 -0
  159. data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c +1 -1
  160. data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h +7 -0
  161. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +5 -5
  162. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +25 -11
  163. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +1 -1
  164. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +7 -0
  165. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +1 -1
  166. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +7 -0
  167. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +6 -6
  168. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +29 -8
  169. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +2 -2
  170. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +16 -3
  171. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +3 -3
  172. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +19 -0
  173. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +7 -7
  174. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +46 -3
  175. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +8 -8
  176. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +41 -8
  177. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.h +1 -0
  178. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +3 -3
  179. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +15 -2
  180. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +3 -3
  181. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +19 -0
  182. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +1 -1
  183. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +7 -0
  184. data/src/core/ext/upb-generated/google/api/annotations.upb.h +1 -0
  185. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +34 -34
  186. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +149 -72
  187. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +34 -34
  188. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +142 -59
  189. data/src/core/ext/upb-generated/google/api/http.upb.c +3 -3
  190. data/src/core/ext/upb-generated/google/api/http.upb.h +25 -6
  191. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +1 -1
  192. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +7 -0
  193. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +90 -90
  194. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +455 -292
  195. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +1 -1
  196. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +7 -0
  197. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +1 -1
  198. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +7 -0
  199. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +4 -4
  200. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +22 -3
  201. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +1 -1
  202. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +7 -0
  203. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +9 -9
  204. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +55 -0
  205. data/src/core/ext/upb-generated/google/rpc/status.upb.c +1 -1
  206. data/src/core/ext/upb-generated/google/rpc/status.upb.h +10 -3
  207. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +4 -4
  208. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +11 -3
  209. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +41 -41
  210. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +149 -76
  211. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +5 -5
  212. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +21 -6
  213. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +2 -2
  214. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +13 -0
  215. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +17 -17
  216. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +82 -25
  217. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +3 -3
  218. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +19 -0
  219. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +1 -1
  220. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +7 -0
  221. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +1 -0
  222. data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +2 -2
  223. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +9 -2
  224. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +1 -1
  225. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +7 -0
  226. data/src/core/ext/upb-generated/udpa/core/v1/authority.upb.c +1 -1
  227. data/src/core/ext/upb-generated/udpa/core/v1/authority.upb.h +7 -0
  228. data/src/core/ext/upb-generated/udpa/core/v1/collection_entry.upb.c +5 -5
  229. data/src/core/ext/upb-generated/udpa/core/v1/collection_entry.upb.h +21 -7
  230. data/src/core/ext/upb-generated/udpa/core/v1/context_params.upb.c +2 -2
  231. data/src/core/ext/upb-generated/udpa/core/v1/context_params.upb.h +7 -0
  232. data/src/core/ext/upb-generated/udpa/core/v1/resource.upb.c +4 -4
  233. data/src/core/ext/upb-generated/udpa/core/v1/resource.upb.h +17 -8
  234. data/src/core/ext/upb-generated/udpa/core/v1/resource_locator.upb.c +7 -7
  235. data/src/core/ext/upb-generated/udpa/core/v1/resource_locator.upb.h +31 -18
  236. data/src/core/ext/upb-generated/udpa/core/v1/resource_name.upb.c +5 -5
  237. data/src/core/ext/upb-generated/udpa/core/v1/resource_name.upb.h +19 -11
  238. data/src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c +3 -3
  239. data/src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h +7 -0
  240. data/src/core/ext/upb-generated/validate/validate.upb.c +64 -64
  241. data/src/core/ext/upb-generated/validate/validate.upb.h +296 -157
  242. data/src/core/ext/xds/certificate_provider_store.cc +10 -7
  243. data/src/core/ext/xds/certificate_provider_store.h +12 -7
  244. data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +25 -0
  245. data/src/core/ext/xds/file_watcher_certificate_provider_factory.h +1 -4
  246. data/src/core/ext/xds/xds_api.cc +220 -31
  247. data/src/core/ext/xds/xds_api.h +41 -10
  248. data/src/core/ext/xds/xds_bootstrap.h +0 -1
  249. data/src/core/ext/xds/xds_certificate_provider.cc +61 -2
  250. data/src/core/ext/xds/xds_certificate_provider.h +40 -2
  251. data/src/core/ext/xds/xds_client.cc +31 -29
  252. data/src/core/ext/xds/xds_client.h +6 -1
  253. data/src/core/ext/xds/xds_client_stats.cc +2 -2
  254. data/src/core/ext/xds/xds_server_config_fetcher.cc +131 -0
  255. data/src/core/lib/channel/channel_args.cc +8 -8
  256. data/src/core/lib/channel/channel_trace.h +1 -1
  257. data/src/core/lib/channel/channelz.cc +13 -14
  258. data/src/core/lib/channel/channelz.h +0 -1
  259. data/src/core/lib/channel/channelz_registry.h +0 -1
  260. data/src/core/lib/channel/handshaker.cc +2 -2
  261. data/src/core/lib/compression/compression_args.cc +3 -2
  262. data/src/core/lib/debug/stats.h +2 -2
  263. data/src/core/lib/debug/stats_data.h +13 -13
  264. data/src/core/lib/gpr/alloc.cc +3 -2
  265. data/src/core/lib/gpr/log.cc +53 -16
  266. data/src/core/lib/gpr/log_linux.cc +3 -1
  267. data/src/core/lib/gpr/log_posix.cc +3 -1
  268. data/src/core/lib/gpr/log_windows.cc +3 -1
  269. data/src/core/lib/gpr/spinlock.h +10 -2
  270. data/src/core/lib/gpr/string.cc +22 -21
  271. data/src/core/lib/gpr/string.h +5 -6
  272. data/src/core/lib/gpr/sync.cc +4 -4
  273. data/src/core/lib/gpr/time.cc +12 -12
  274. data/src/core/lib/gprpp/arena.h +3 -2
  275. data/src/core/lib/gprpp/ref_counted.h +2 -2
  276. data/src/core/lib/gprpp/ref_counted_ptr.h +9 -1
  277. data/src/core/lib/gprpp/thd_posix.cc +6 -1
  278. data/src/core/lib/gprpp/thd_windows.cc +3 -1
  279. data/src/core/lib/http/httpcli.cc +1 -1
  280. data/src/core/lib/http/httpcli.h +2 -3
  281. data/src/core/lib/http/httpcli_security_connector.cc +1 -1
  282. data/src/core/lib/http/parser.cc +1 -2
  283. data/src/core/lib/iomgr/call_combiner.cc +8 -5
  284. data/src/core/lib/iomgr/combiner.cc +2 -1
  285. data/src/core/lib/iomgr/endpoint.h +1 -1
  286. data/src/core/lib/iomgr/error.cc +15 -11
  287. data/src/core/lib/iomgr/error_internal.h +1 -1
  288. data/src/core/lib/iomgr/ev_epoll1_linux.cc +20 -13
  289. data/src/core/lib/iomgr/ev_epollex_linux.cc +17 -13
  290. data/src/core/lib/iomgr/ev_poll_posix.cc +9 -7
  291. data/src/core/lib/iomgr/exec_ctx.h +6 -4
  292. data/src/core/lib/iomgr/executor.cc +2 -1
  293. data/src/core/lib/iomgr/executor.h +1 -1
  294. data/src/core/lib/iomgr/executor/threadpool.h +1 -1
  295. data/src/core/lib/iomgr/iomgr.cc +1 -1
  296. data/src/core/lib/iomgr/load_file.h +1 -1
  297. data/src/core/lib/iomgr/lockfree_event.cc +19 -14
  298. data/src/core/lib/iomgr/lockfree_event.h +2 -2
  299. data/src/core/lib/iomgr/parse_address.cc +52 -46
  300. data/src/core/lib/iomgr/parse_address.h +13 -9
  301. data/src/core/lib/iomgr/poller/eventmanager_libuv.h +1 -1
  302. data/src/core/lib/iomgr/pollset_set_custom.cc +1 -1
  303. data/src/core/lib/iomgr/python_util.h +1 -1
  304. data/src/core/lib/iomgr/resolve_address.cc +4 -4
  305. data/src/core/lib/iomgr/resource_quota.cc +4 -4
  306. data/src/core/lib/iomgr/sockaddr_utils.cc +10 -10
  307. data/src/core/lib/iomgr/sockaddr_utils.h +1 -1
  308. data/src/core/lib/iomgr/socket_factory_posix.cc +3 -2
  309. data/src/core/lib/iomgr/socket_mutator.cc +3 -2
  310. data/src/core/lib/iomgr/tcp_client.cc +3 -3
  311. data/src/core/lib/iomgr/tcp_client_custom.cc +7 -6
  312. data/src/core/lib/iomgr/tcp_custom.cc +22 -17
  313. data/src/core/lib/iomgr/tcp_posix.cc +9 -6
  314. data/src/core/lib/iomgr/tcp_server_custom.cc +28 -22
  315. data/src/core/lib/iomgr/timer_custom.cc +3 -3
  316. data/src/core/lib/iomgr/timer_generic.cc +3 -3
  317. data/src/core/lib/iomgr/timer_manager.cc +2 -2
  318. data/src/core/lib/iomgr/udp_server.cc +1 -2
  319. data/src/core/lib/iomgr/udp_server.h +1 -2
  320. data/src/core/lib/iomgr/unix_sockets_posix.cc +17 -18
  321. data/src/core/lib/json/json.h +10 -0
  322. data/src/core/lib/security/authorization/evaluate_args.cc +5 -10
  323. data/src/core/lib/security/authorization/evaluate_args.h +1 -1
  324. data/src/core/lib/security/context/security_context.cc +4 -3
  325. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +1 -1
  326. data/src/core/lib/security/credentials/credentials.cc +6 -6
  327. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +413 -0
  328. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +80 -0
  329. data/src/core/lib/security/credentials/external/aws_request_signer.cc +15 -10
  330. data/src/core/lib/security/credentials/external/aws_request_signer.h +1 -2
  331. data/src/core/lib/security/credentials/external/external_account_credentials.cc +217 -31
  332. data/src/core/lib/security/credentials/external/external_account_credentials.h +7 -5
  333. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +5 -6
  334. data/src/core/lib/security/credentials/external/file_external_account_credentials.h +3 -4
  335. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +20 -18
  336. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +5 -6
  337. data/src/core/lib/security/credentials/fake/fake_credentials.cc +2 -1
  338. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +18 -12
  339. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +18 -5
  340. data/src/core/lib/security/credentials/jwt/json_token.cc +1 -1
  341. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +3 -3
  342. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +37 -44
  343. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +5 -4
  344. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +1 -1
  345. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +5 -5
  346. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +1 -1
  347. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +1 -6
  348. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h +1 -6
  349. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +326 -5
  350. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +64 -0
  351. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +1 -1
  352. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +0 -1
  353. data/src/core/lib/security/credentials/tls/tls_credentials.cc +1 -1
  354. data/src/core/lib/security/credentials/tls/tls_utils.cc +91 -0
  355. data/src/core/lib/security/credentials/tls/tls_utils.h +38 -0
  356. data/src/core/lib/security/credentials/xds/xds_credentials.cc +140 -10
  357. data/src/core/lib/security/credentials/xds/xds_credentials.h +27 -9
  358. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +1 -1
  359. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +1 -1
  360. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +46 -13
  361. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +23 -6
  362. data/src/core/lib/security/security_connector/local/local_security_connector.cc +1 -1
  363. data/src/core/lib/security/security_connector/security_connector.cc +3 -2
  364. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +4 -4
  365. data/src/core/lib/security/security_connector/ssl_utils.cc +2 -2
  366. data/src/core/lib/security/security_connector/ssl_utils.h +12 -19
  367. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +57 -12
  368. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +2 -3
  369. data/src/core/lib/security/transport/secure_endpoint.cc +2 -2
  370. data/src/core/lib/security/transport/security_handshaker.cc +2 -2
  371. data/src/core/lib/slice/slice_intern.cc +4 -5
  372. data/src/core/lib/slice/slice_internal.h +2 -2
  373. data/src/core/lib/surface/call.cc +32 -24
  374. data/src/core/lib/surface/call_details.cc +8 -8
  375. data/src/core/lib/surface/channel.cc +16 -10
  376. data/src/core/lib/surface/channel.h +3 -2
  377. data/src/core/lib/surface/channel_init.cc +1 -1
  378. data/src/core/lib/surface/completion_queue.cc +23 -18
  379. data/src/core/lib/surface/completion_queue.h +16 -16
  380. data/src/core/lib/surface/init.cc +6 -5
  381. data/src/core/lib/surface/lame_client.cc +20 -46
  382. data/src/core/lib/surface/lame_client.h +4 -0
  383. data/src/core/lib/surface/server.cc +59 -15
  384. data/src/core/lib/surface/server.h +37 -5
  385. data/src/core/lib/surface/version.cc +1 -1
  386. data/src/core/lib/transport/authority_override.cc +6 -4
  387. data/src/core/lib/transport/authority_override.h +5 -2
  388. data/src/core/lib/transport/connectivity_state.h +6 -4
  389. data/src/core/lib/transport/error_utils.h +1 -1
  390. data/src/core/lib/transport/metadata_batch.h +4 -4
  391. data/src/core/lib/transport/static_metadata.cc +1 -1
  392. data/src/core/lib/transport/status_metadata.cc +4 -3
  393. data/src/core/lib/transport/transport.h +7 -7
  394. data/src/core/lib/uri/uri_parser.cc +131 -249
  395. data/src/core/lib/uri/uri_parser.h +57 -21
  396. data/src/core/plugin_registry/grpc_plugin_registry.cc +10 -4
  397. data/src/core/tsi/alts/crypt/gsec.cc +5 -4
  398. data/src/core/tsi/alts/frame_protector/frame_handler.cc +8 -6
  399. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +1 -1
  400. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +23 -23
  401. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc +8 -6
  402. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +4 -4
  403. data/src/core/tsi/fake_transport_security.cc +5 -3
  404. data/src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc +1 -1
  405. data/src/core/tsi/ssl_transport_security.cc +62 -49
  406. data/src/core/tsi/ssl_transport_security.h +6 -6
  407. data/src/core/tsi/transport_security.cc +6 -6
  408. data/src/core/tsi/transport_security_interface.h +1 -1
  409. data/src/ruby/ext/grpc/rb_event_thread.c +2 -0
  410. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +12 -0
  411. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +31 -13
  412. data/src/ruby/lib/grpc/version.rb +1 -1
  413. data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +28 -0
  414. data/src/ruby/pb/src/proto/grpc/testing/test_services_pb.rb +18 -0
  415. data/src/ruby/spec/pb/codegen/package_option_spec.rb +2 -6
  416. data/third_party/abseil-cpp/absl/container/flat_hash_map.h +606 -0
  417. data/third_party/abseil-cpp/absl/container/internal/raw_hash_map.h +197 -0
  418. data/third_party/abseil-cpp/absl/status/internal/statusor_internal.h +399 -0
  419. data/third_party/abseil-cpp/absl/status/statusor.cc +71 -0
  420. data/third_party/abseil-cpp/absl/status/statusor.h +760 -0
  421. data/third_party/upb/third_party/wyhash/wyhash.h +145 -0
  422. data/third_party/upb/upb/decode.c +248 -167
  423. data/third_party/upb/upb/decode.h +20 -1
  424. data/third_party/upb/upb/decode.int.h +163 -0
  425. data/third_party/upb/upb/decode_fast.c +1040 -0
  426. data/third_party/upb/upb/decode_fast.h +126 -0
  427. data/third_party/upb/upb/def.c +525 -516
  428. data/third_party/upb/upb/def.h +16 -31
  429. data/third_party/upb/upb/def.hpp +37 -123
  430. data/third_party/upb/upb/encode.c +227 -169
  431. data/third_party/upb/upb/encode.h +27 -2
  432. data/third_party/upb/upb/json_decode.c +1443 -0
  433. data/third_party/upb/upb/json_decode.h +23 -0
  434. data/third_party/upb/upb/json_encode.c +713 -0
  435. data/third_party/upb/upb/json_encode.h +36 -0
  436. data/third_party/upb/upb/msg.c +167 -88
  437. data/third_party/upb/upb/msg.h +174 -34
  438. data/third_party/upb/upb/port_def.inc +74 -61
  439. data/third_party/upb/upb/port_undef.inc +3 -7
  440. data/third_party/upb/upb/reflection.c +36 -19
  441. data/third_party/upb/upb/table.c +34 -197
  442. data/third_party/upb/upb/table.int.h +14 -5
  443. data/third_party/upb/upb/text_encode.c +45 -22
  444. data/third_party/upb/upb/text_encode.h +4 -1
  445. data/third_party/upb/upb/upb.c +18 -41
  446. data/third_party/upb/upb/upb.h +36 -7
  447. data/third_party/upb/upb/upb.hpp +4 -4
  448. data/third_party/upb/upb/upb.int.h +29 -0
  449. metadata +60 -46
  450. data/src/core/ext/filters/client_channel/lb_policy/xds/eds.cc +0 -909
  451. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.cc +0 -485
  452. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc +0 -68
  453. data/src/core/ext/filters/client_channel/resolving_lb_policy.cc +0 -355
  454. data/src/core/ext/filters/client_channel/resolving_lb_policy.h +0 -138
  455. data/src/core/ext/xds/google_mesh_ca_certificate_provider_factory.cc +0 -265
  456. data/src/core/ext/xds/google_mesh_ca_certificate_provider_factory.h +0 -104
  457. data/src/core/lib/gprpp/map.h +0 -53
  458. data/third_party/upb/upb/port.c +0 -26
@@ -11,6 +11,7 @@
11
11
 
12
12
  #include "upb/msg.h"
13
13
  #include "upb/decode.h"
14
+ #include "upb/decode_fast.h"
14
15
  #include "upb/encode.h"
15
16
 
16
17
  #include "upb/port_def.inc"
@@ -45,6 +46,12 @@ UPB_INLINE udpa_core_v1_ResourceLocator *udpa_core_v1_ResourceLocator_parse(cons
45
46
  udpa_core_v1_ResourceLocator *ret = udpa_core_v1_ResourceLocator_new(arena);
46
47
  return (ret && upb_decode(buf, size, ret, &udpa_core_v1_ResourceLocator_msginit, arena)) ? ret : NULL;
47
48
  }
49
+ UPB_INLINE udpa_core_v1_ResourceLocator *udpa_core_v1_ResourceLocator_parse_ex(const char *buf, size_t size,
50
+ upb_arena *arena, int options) {
51
+ udpa_core_v1_ResourceLocator *ret = udpa_core_v1_ResourceLocator_new(arena);
52
+ return (ret && _upb_decode(buf, size, ret, &udpa_core_v1_ResourceLocator_msginit, arena, options))
53
+ ? ret : NULL;
54
+ }
48
55
  UPB_INLINE char *udpa_core_v1_ResourceLocator_serialize(const udpa_core_v1_ResourceLocator *msg, upb_arena *arena, size_t *len) {
49
56
  return upb_encode(msg, &udpa_core_v1_ResourceLocator_msginit, arena, len);
50
57
  }
@@ -53,38 +60,38 @@ typedef enum {
53
60
  udpa_core_v1_ResourceLocator_context_param_specifier_exact_context = 5,
54
61
  udpa_core_v1_ResourceLocator_context_param_specifier_NOT_SET = 0
55
62
  } udpa_core_v1_ResourceLocator_context_param_specifier_oneofcases;
56
- UPB_INLINE udpa_core_v1_ResourceLocator_context_param_specifier_oneofcases udpa_core_v1_ResourceLocator_context_param_specifier_case(const udpa_core_v1_ResourceLocator* msg) { return (udpa_core_v1_ResourceLocator_context_param_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(36, 64), int32_t); }
63
+ UPB_INLINE udpa_core_v1_ResourceLocator_context_param_specifier_oneofcases udpa_core_v1_ResourceLocator_context_param_specifier_case(const udpa_core_v1_ResourceLocator* msg) { return (udpa_core_v1_ResourceLocator_context_param_specifier_oneofcases)*UPB_PTR_AT(msg, UPB_SIZE(32, 64), int32_t); }
57
64
 
58
65
  UPB_INLINE int32_t udpa_core_v1_ResourceLocator_scheme(const udpa_core_v1_ResourceLocator *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t); }
59
- UPB_INLINE upb_strview const* udpa_core_v1_ResourceLocator_id(const udpa_core_v1_ResourceLocator *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(24, 40), len); }
60
- UPB_INLINE upb_strview udpa_core_v1_ResourceLocator_authority(const udpa_core_v1_ResourceLocator *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 8), upb_strview); }
61
- UPB_INLINE upb_strview udpa_core_v1_ResourceLocator_resource_type(const udpa_core_v1_ResourceLocator *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(16, 24), upb_strview); }
62
- UPB_INLINE bool udpa_core_v1_ResourceLocator_has_exact_context(const udpa_core_v1_ResourceLocator *msg) { return _upb_getoneofcase(msg, UPB_SIZE(36, 64)) == 5; }
63
- UPB_INLINE const struct udpa_core_v1_ContextParams* udpa_core_v1_ResourceLocator_exact_context(const udpa_core_v1_ResourceLocator *msg) { return UPB_READ_ONEOF(msg, const struct udpa_core_v1_ContextParams*, UPB_SIZE(32, 56), UPB_SIZE(36, 64), 5, NULL); }
64
- UPB_INLINE bool udpa_core_v1_ResourceLocator_has_directives(const udpa_core_v1_ResourceLocator *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(28, 48)); }
65
- UPB_INLINE const udpa_core_v1_ResourceLocator_Directive* const* udpa_core_v1_ResourceLocator_directives(const udpa_core_v1_ResourceLocator *msg, size_t *len) { return (const udpa_core_v1_ResourceLocator_Directive* const*)_upb_array_accessor(msg, UPB_SIZE(28, 48), len); }
66
+ UPB_INLINE upb_strview const* udpa_core_v1_ResourceLocator_id(const udpa_core_v1_ResourceLocator *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(20, 40), len); }
67
+ UPB_INLINE upb_strview udpa_core_v1_ResourceLocator_authority(const udpa_core_v1_ResourceLocator *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
68
+ UPB_INLINE upb_strview udpa_core_v1_ResourceLocator_resource_type(const udpa_core_v1_ResourceLocator *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), upb_strview); }
69
+ UPB_INLINE bool udpa_core_v1_ResourceLocator_has_exact_context(const udpa_core_v1_ResourceLocator *msg) { return _upb_getoneofcase(msg, UPB_SIZE(32, 64)) == 5; }
70
+ UPB_INLINE const struct udpa_core_v1_ContextParams* udpa_core_v1_ResourceLocator_exact_context(const udpa_core_v1_ResourceLocator *msg) { return UPB_READ_ONEOF(msg, const struct udpa_core_v1_ContextParams*, UPB_SIZE(28, 56), UPB_SIZE(32, 64), 5, NULL); }
71
+ UPB_INLINE bool udpa_core_v1_ResourceLocator_has_directives(const udpa_core_v1_ResourceLocator *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(24, 48)); }
72
+ UPB_INLINE const udpa_core_v1_ResourceLocator_Directive* const* udpa_core_v1_ResourceLocator_directives(const udpa_core_v1_ResourceLocator *msg, size_t *len) { return (const udpa_core_v1_ResourceLocator_Directive* const*)_upb_array_accessor(msg, UPB_SIZE(24, 48), len); }
66
73
 
67
74
  UPB_INLINE void udpa_core_v1_ResourceLocator_set_scheme(udpa_core_v1_ResourceLocator *msg, int32_t value) {
68
75
  *UPB_PTR_AT(msg, UPB_SIZE(0, 0), int32_t) = value;
69
76
  }
70
77
  UPB_INLINE upb_strview* udpa_core_v1_ResourceLocator_mutable_id(udpa_core_v1_ResourceLocator *msg, size_t *len) {
71
- return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(24, 40), len);
78
+ return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(20, 40), len);
72
79
  }
73
80
  UPB_INLINE upb_strview* udpa_core_v1_ResourceLocator_resize_id(udpa_core_v1_ResourceLocator *msg, size_t len, upb_arena *arena) {
74
- return (upb_strview*)_upb_array_resize_accessor(msg, UPB_SIZE(24, 40), len, UPB_TYPE_STRING, arena);
81
+ return (upb_strview*)_upb_array_resize_accessor2(msg, UPB_SIZE(20, 40), len, UPB_SIZE(3, 4), arena);
75
82
  }
76
83
  UPB_INLINE bool udpa_core_v1_ResourceLocator_add_id(udpa_core_v1_ResourceLocator *msg, upb_strview val, upb_arena *arena) {
77
- return _upb_array_append_accessor(msg, UPB_SIZE(24, 40), UPB_SIZE(8, 16), UPB_TYPE_STRING, &val,
84
+ return _upb_array_append_accessor2(msg, UPB_SIZE(20, 40), UPB_SIZE(3, 4), &val,
78
85
  arena);
79
86
  }
80
87
  UPB_INLINE void udpa_core_v1_ResourceLocator_set_authority(udpa_core_v1_ResourceLocator *msg, upb_strview value) {
81
- *UPB_PTR_AT(msg, UPB_SIZE(8, 8), upb_strview) = value;
88
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
82
89
  }
83
90
  UPB_INLINE void udpa_core_v1_ResourceLocator_set_resource_type(udpa_core_v1_ResourceLocator *msg, upb_strview value) {
84
- *UPB_PTR_AT(msg, UPB_SIZE(16, 24), upb_strview) = value;
91
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), upb_strview) = value;
85
92
  }
86
93
  UPB_INLINE void udpa_core_v1_ResourceLocator_set_exact_context(udpa_core_v1_ResourceLocator *msg, struct udpa_core_v1_ContextParams* value) {
87
- UPB_WRITE_ONEOF(msg, struct udpa_core_v1_ContextParams*, UPB_SIZE(32, 56), value, UPB_SIZE(36, 64), 5);
94
+ UPB_WRITE_ONEOF(msg, struct udpa_core_v1_ContextParams*, UPB_SIZE(28, 56), value, UPB_SIZE(32, 64), 5);
88
95
  }
89
96
  UPB_INLINE struct udpa_core_v1_ContextParams* udpa_core_v1_ResourceLocator_mutable_exact_context(udpa_core_v1_ResourceLocator *msg, upb_arena *arena) {
90
97
  struct udpa_core_v1_ContextParams* sub = (struct udpa_core_v1_ContextParams*)udpa_core_v1_ResourceLocator_exact_context(msg);
@@ -96,15 +103,15 @@ UPB_INLINE struct udpa_core_v1_ContextParams* udpa_core_v1_ResourceLocator_mutab
96
103
  return sub;
97
104
  }
98
105
  UPB_INLINE udpa_core_v1_ResourceLocator_Directive** udpa_core_v1_ResourceLocator_mutable_directives(udpa_core_v1_ResourceLocator *msg, size_t *len) {
99
- return (udpa_core_v1_ResourceLocator_Directive**)_upb_array_mutable_accessor(msg, UPB_SIZE(28, 48), len);
106
+ return (udpa_core_v1_ResourceLocator_Directive**)_upb_array_mutable_accessor(msg, UPB_SIZE(24, 48), len);
100
107
  }
101
108
  UPB_INLINE udpa_core_v1_ResourceLocator_Directive** udpa_core_v1_ResourceLocator_resize_directives(udpa_core_v1_ResourceLocator *msg, size_t len, upb_arena *arena) {
102
- return (udpa_core_v1_ResourceLocator_Directive**)_upb_array_resize_accessor(msg, UPB_SIZE(28, 48), len, UPB_TYPE_MESSAGE, arena);
109
+ return (udpa_core_v1_ResourceLocator_Directive**)_upb_array_resize_accessor2(msg, UPB_SIZE(24, 48), len, UPB_SIZE(2, 3), arena);
103
110
  }
104
111
  UPB_INLINE struct udpa_core_v1_ResourceLocator_Directive* udpa_core_v1_ResourceLocator_add_directives(udpa_core_v1_ResourceLocator *msg, upb_arena *arena) {
105
112
  struct udpa_core_v1_ResourceLocator_Directive* sub = (struct udpa_core_v1_ResourceLocator_Directive*)_upb_msg_new(&udpa_core_v1_ResourceLocator_Directive_msginit, arena);
106
- bool ok = _upb_array_append_accessor(
107
- msg, UPB_SIZE(28, 48), UPB_SIZE(4, 8), UPB_TYPE_MESSAGE, &sub, arena);
113
+ bool ok = _upb_array_append_accessor2(
114
+ msg, UPB_SIZE(24, 48), UPB_SIZE(2, 3), &sub, arena);
108
115
  if (!ok) return NULL;
109
116
  return sub;
110
117
  }
@@ -119,6 +126,12 @@ UPB_INLINE udpa_core_v1_ResourceLocator_Directive *udpa_core_v1_ResourceLocator_
119
126
  udpa_core_v1_ResourceLocator_Directive *ret = udpa_core_v1_ResourceLocator_Directive_new(arena);
120
127
  return (ret && upb_decode(buf, size, ret, &udpa_core_v1_ResourceLocator_Directive_msginit, arena)) ? ret : NULL;
121
128
  }
129
+ UPB_INLINE udpa_core_v1_ResourceLocator_Directive *udpa_core_v1_ResourceLocator_Directive_parse_ex(const char *buf, size_t size,
130
+ upb_arena *arena, int options) {
131
+ udpa_core_v1_ResourceLocator_Directive *ret = udpa_core_v1_ResourceLocator_Directive_new(arena);
132
+ return (ret && _upb_decode(buf, size, ret, &udpa_core_v1_ResourceLocator_Directive_msginit, arena, options))
133
+ ? ret : NULL;
134
+ }
122
135
  UPB_INLINE char *udpa_core_v1_ResourceLocator_Directive_serialize(const udpa_core_v1_ResourceLocator_Directive *msg, upb_arena *arena, size_t *len) {
123
136
  return upb_encode(msg, &udpa_core_v1_ResourceLocator_Directive_msginit, arena, len);
124
137
  }
@@ -20,16 +20,16 @@ static const upb_msglayout *const udpa_core_v1_ResourceName_submsgs[1] = {
20
20
  };
21
21
 
22
22
  static const upb_msglayout_field udpa_core_v1_ResourceName__fields[4] = {
23
- {1, UPB_SIZE(20, 40), 0, 0, 9, 3},
24
- {2, UPB_SIZE(0, 0), 0, 0, 9, 1},
25
- {3, UPB_SIZE(8, 16), 0, 0, 9, 1},
26
- {4, UPB_SIZE(16, 32), 0, 0, 11, 1},
23
+ {1, UPB_SIZE(24, 48), 0, 0, 9, 3},
24
+ {2, UPB_SIZE(4, 8), 0, 0, 9, 1},
25
+ {3, UPB_SIZE(12, 24), 0, 0, 9, 1},
26
+ {4, UPB_SIZE(20, 40), 1, 0, 11, 1},
27
27
  };
28
28
 
29
29
  const upb_msglayout udpa_core_v1_ResourceName_msginit = {
30
30
  &udpa_core_v1_ResourceName_submsgs[0],
31
31
  &udpa_core_v1_ResourceName__fields[0],
32
- UPB_SIZE(24, 48), 4, false,
32
+ UPB_SIZE(32, 64), 4, false, 255,
33
33
  };
34
34
 
35
35
  #include "upb/port_undef.inc"
@@ -11,6 +11,7 @@
11
11
 
12
12
  #include "upb/msg.h"
13
13
  #include "upb/decode.h"
14
+ #include "upb/decode_fast.h"
14
15
  #include "upb/encode.h"
15
16
 
16
17
  #include "upb/port_def.inc"
@@ -36,34 +37,41 @@ UPB_INLINE udpa_core_v1_ResourceName *udpa_core_v1_ResourceName_parse(const char
36
37
  udpa_core_v1_ResourceName *ret = udpa_core_v1_ResourceName_new(arena);
37
38
  return (ret && upb_decode(buf, size, ret, &udpa_core_v1_ResourceName_msginit, arena)) ? ret : NULL;
38
39
  }
40
+ UPB_INLINE udpa_core_v1_ResourceName *udpa_core_v1_ResourceName_parse_ex(const char *buf, size_t size,
41
+ upb_arena *arena, int options) {
42
+ udpa_core_v1_ResourceName *ret = udpa_core_v1_ResourceName_new(arena);
43
+ return (ret && _upb_decode(buf, size, ret, &udpa_core_v1_ResourceName_msginit, arena, options))
44
+ ? ret : NULL;
45
+ }
39
46
  UPB_INLINE char *udpa_core_v1_ResourceName_serialize(const udpa_core_v1_ResourceName *msg, upb_arena *arena, size_t *len) {
40
47
  return upb_encode(msg, &udpa_core_v1_ResourceName_msginit, arena, len);
41
48
  }
42
49
 
43
- UPB_INLINE upb_strview const* udpa_core_v1_ResourceName_id(const udpa_core_v1_ResourceName *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(20, 40), len); }
44
- UPB_INLINE upb_strview udpa_core_v1_ResourceName_authority(const udpa_core_v1_ResourceName *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview); }
45
- UPB_INLINE upb_strview udpa_core_v1_ResourceName_resource_type(const udpa_core_v1_ResourceName *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(8, 16), upb_strview); }
46
- UPB_INLINE bool udpa_core_v1_ResourceName_has_context(const udpa_core_v1_ResourceName *msg) { return _upb_has_submsg_nohasbit(msg, UPB_SIZE(16, 32)); }
47
- UPB_INLINE const struct udpa_core_v1_ContextParams* udpa_core_v1_ResourceName_context(const udpa_core_v1_ResourceName *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(16, 32), const struct udpa_core_v1_ContextParams*); }
50
+ UPB_INLINE upb_strview const* udpa_core_v1_ResourceName_id(const udpa_core_v1_ResourceName *msg, size_t *len) { return (upb_strview const*)_upb_array_accessor(msg, UPB_SIZE(24, 48), len); }
51
+ UPB_INLINE upb_strview udpa_core_v1_ResourceName_authority(const udpa_core_v1_ResourceName *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview); }
52
+ UPB_INLINE upb_strview udpa_core_v1_ResourceName_resource_type(const udpa_core_v1_ResourceName *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(12, 24), upb_strview); }
53
+ UPB_INLINE bool udpa_core_v1_ResourceName_has_context(const udpa_core_v1_ResourceName *msg) { return _upb_hasbit(msg, 1); }
54
+ UPB_INLINE const struct udpa_core_v1_ContextParams* udpa_core_v1_ResourceName_context(const udpa_core_v1_ResourceName *msg) { return *UPB_PTR_AT(msg, UPB_SIZE(20, 40), const struct udpa_core_v1_ContextParams*); }
48
55
 
49
56
  UPB_INLINE upb_strview* udpa_core_v1_ResourceName_mutable_id(udpa_core_v1_ResourceName *msg, size_t *len) {
50
- return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(20, 40), len);
57
+ return (upb_strview*)_upb_array_mutable_accessor(msg, UPB_SIZE(24, 48), len);
51
58
  }
52
59
  UPB_INLINE upb_strview* udpa_core_v1_ResourceName_resize_id(udpa_core_v1_ResourceName *msg, size_t len, upb_arena *arena) {
53
- return (upb_strview*)_upb_array_resize_accessor(msg, UPB_SIZE(20, 40), len, UPB_TYPE_STRING, arena);
60
+ return (upb_strview*)_upb_array_resize_accessor2(msg, UPB_SIZE(24, 48), len, UPB_SIZE(3, 4), arena);
54
61
  }
55
62
  UPB_INLINE bool udpa_core_v1_ResourceName_add_id(udpa_core_v1_ResourceName *msg, upb_strview val, upb_arena *arena) {
56
- return _upb_array_append_accessor(msg, UPB_SIZE(20, 40), UPB_SIZE(8, 16), UPB_TYPE_STRING, &val,
63
+ return _upb_array_append_accessor2(msg, UPB_SIZE(24, 48), UPB_SIZE(3, 4), &val,
57
64
  arena);
58
65
  }
59
66
  UPB_INLINE void udpa_core_v1_ResourceName_set_authority(udpa_core_v1_ResourceName *msg, upb_strview value) {
60
- *UPB_PTR_AT(msg, UPB_SIZE(0, 0), upb_strview) = value;
67
+ *UPB_PTR_AT(msg, UPB_SIZE(4, 8), upb_strview) = value;
61
68
  }
62
69
  UPB_INLINE void udpa_core_v1_ResourceName_set_resource_type(udpa_core_v1_ResourceName *msg, upb_strview value) {
63
- *UPB_PTR_AT(msg, UPB_SIZE(8, 16), upb_strview) = value;
70
+ *UPB_PTR_AT(msg, UPB_SIZE(12, 24), upb_strview) = value;
64
71
  }
65
72
  UPB_INLINE void udpa_core_v1_ResourceName_set_context(udpa_core_v1_ResourceName *msg, struct udpa_core_v1_ContextParams* value) {
66
- *UPB_PTR_AT(msg, UPB_SIZE(16, 32), struct udpa_core_v1_ContextParams*) = value;
73
+ _upb_sethas(msg, 1);
74
+ *UPB_PTR_AT(msg, UPB_SIZE(20, 40), struct udpa_core_v1_ContextParams*) = value;
67
75
  }
68
76
  UPB_INLINE struct udpa_core_v1_ContextParams* udpa_core_v1_ResourceName_mutable_context(udpa_core_v1_ResourceName *msg, upb_arena *arena) {
69
77
  struct udpa_core_v1_ContextParams* sub = (struct udpa_core_v1_ContextParams*)udpa_core_v1_ResourceName_context(msg);
@@ -29,7 +29,7 @@ static const upb_msglayout_field udpa_data_orca_v1_OrcaLoadReport__fields[5] = {
29
29
  const upb_msglayout udpa_data_orca_v1_OrcaLoadReport_msginit = {
30
30
  &udpa_data_orca_v1_OrcaLoadReport_submsgs[0],
31
31
  &udpa_data_orca_v1_OrcaLoadReport__fields[0],
32
- UPB_SIZE(32, 40), 5, false,
32
+ UPB_SIZE(32, 40), 5, false, 255,
33
33
  };
34
34
 
35
35
  static const upb_msglayout_field udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry__fields[2] = {
@@ -40,7 +40,7 @@ static const upb_msglayout_field udpa_data_orca_v1_OrcaLoadReport_RequestCostEnt
40
40
  const upb_msglayout udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry_msginit = {
41
41
  NULL,
42
42
  &udpa_data_orca_v1_OrcaLoadReport_RequestCostEntry__fields[0],
43
- UPB_SIZE(16, 32), 2, false,
43
+ UPB_SIZE(16, 32), 2, false, 255,
44
44
  };
45
45
 
46
46
  static const upb_msglayout_field udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry__fields[2] = {
@@ -51,7 +51,7 @@ static const upb_msglayout_field udpa_data_orca_v1_OrcaLoadReport_UtilizationEnt
51
51
  const upb_msglayout udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry_msginit = {
52
52
  NULL,
53
53
  &udpa_data_orca_v1_OrcaLoadReport_UtilizationEntry__fields[0],
54
- UPB_SIZE(16, 32), 2, false,
54
+ UPB_SIZE(16, 32), 2, false, 255,
55
55
  };
56
56
 
57
57
  #include "upb/port_undef.inc"
@@ -11,6 +11,7 @@
11
11
 
12
12
  #include "upb/msg.h"
13
13
  #include "upb/decode.h"
14
+ #include "upb/decode_fast.h"
14
15
  #include "upb/encode.h"
15
16
 
16
17
  #include "upb/port_def.inc"
@@ -40,6 +41,12 @@ UPB_INLINE udpa_data_orca_v1_OrcaLoadReport *udpa_data_orca_v1_OrcaLoadReport_pa
40
41
  udpa_data_orca_v1_OrcaLoadReport *ret = udpa_data_orca_v1_OrcaLoadReport_new(arena);
41
42
  return (ret && upb_decode(buf, size, ret, &udpa_data_orca_v1_OrcaLoadReport_msginit, arena)) ? ret : NULL;
42
43
  }
44
+ UPB_INLINE udpa_data_orca_v1_OrcaLoadReport *udpa_data_orca_v1_OrcaLoadReport_parse_ex(const char *buf, size_t size,
45
+ upb_arena *arena, int options) {
46
+ udpa_data_orca_v1_OrcaLoadReport *ret = udpa_data_orca_v1_OrcaLoadReport_new(arena);
47
+ return (ret && _upb_decode(buf, size, ret, &udpa_data_orca_v1_OrcaLoadReport_msginit, arena, options))
48
+ ? ret : NULL;
49
+ }
43
50
  UPB_INLINE char *udpa_data_orca_v1_OrcaLoadReport_serialize(const udpa_data_orca_v1_OrcaLoadReport *msg, upb_arena *arena, size_t *len) {
44
51
  return upb_encode(msg, &udpa_data_orca_v1_OrcaLoadReport_msginit, arena, len);
45
52
  }
@@ -68,7 +68,7 @@ static const upb_msglayout_field validate_FieldRules__fields[22] = {
68
68
  const upb_msglayout validate_FieldRules_msginit = {
69
69
  &validate_FieldRules_submsgs[0],
70
70
  &validate_FieldRules__fields[0],
71
- UPB_SIZE(16, 32), 22, false,
71
+ UPB_SIZE(16, 32), 22, false, 255,
72
72
  };
73
73
 
74
74
  static const upb_msglayout_field validate_FloatRules__fields[7] = {
@@ -84,7 +84,7 @@ static const upb_msglayout_field validate_FloatRules__fields[7] = {
84
84
  const upb_msglayout validate_FloatRules_msginit = {
85
85
  NULL,
86
86
  &validate_FloatRules__fields[0],
87
- UPB_SIZE(32, 40), 7, false,
87
+ UPB_SIZE(32, 40), 7, false, 255,
88
88
  };
89
89
 
90
90
  static const upb_msglayout_field validate_DoubleRules__fields[7] = {
@@ -100,7 +100,7 @@ static const upb_msglayout_field validate_DoubleRules__fields[7] = {
100
100
  const upb_msglayout validate_DoubleRules_msginit = {
101
101
  NULL,
102
102
  &validate_DoubleRules__fields[0],
103
- UPB_SIZE(56, 64), 7, false,
103
+ UPB_SIZE(56, 64), 7, false, 255,
104
104
  };
105
105
 
106
106
  static const upb_msglayout_field validate_Int32Rules__fields[7] = {
@@ -116,7 +116,7 @@ static const upb_msglayout_field validate_Int32Rules__fields[7] = {
116
116
  const upb_msglayout validate_Int32Rules_msginit = {
117
117
  NULL,
118
118
  &validate_Int32Rules__fields[0],
119
- UPB_SIZE(32, 40), 7, false,
119
+ UPB_SIZE(32, 40), 7, false, 255,
120
120
  };
121
121
 
122
122
  static const upb_msglayout_field validate_Int64Rules__fields[7] = {
@@ -132,7 +132,7 @@ static const upb_msglayout_field validate_Int64Rules__fields[7] = {
132
132
  const upb_msglayout validate_Int64Rules_msginit = {
133
133
  NULL,
134
134
  &validate_Int64Rules__fields[0],
135
- UPB_SIZE(56, 64), 7, false,
135
+ UPB_SIZE(56, 64), 7, false, 255,
136
136
  };
137
137
 
138
138
  static const upb_msglayout_field validate_UInt32Rules__fields[7] = {
@@ -148,7 +148,7 @@ static const upb_msglayout_field validate_UInt32Rules__fields[7] = {
148
148
  const upb_msglayout validate_UInt32Rules_msginit = {
149
149
  NULL,
150
150
  &validate_UInt32Rules__fields[0],
151
- UPB_SIZE(32, 40), 7, false,
151
+ UPB_SIZE(32, 40), 7, false, 255,
152
152
  };
153
153
 
154
154
  static const upb_msglayout_field validate_UInt64Rules__fields[7] = {
@@ -164,7 +164,7 @@ static const upb_msglayout_field validate_UInt64Rules__fields[7] = {
164
164
  const upb_msglayout validate_UInt64Rules_msginit = {
165
165
  NULL,
166
166
  &validate_UInt64Rules__fields[0],
167
- UPB_SIZE(56, 64), 7, false,
167
+ UPB_SIZE(56, 64), 7, false, 255,
168
168
  };
169
169
 
170
170
  static const upb_msglayout_field validate_SInt32Rules__fields[7] = {
@@ -180,7 +180,7 @@ static const upb_msglayout_field validate_SInt32Rules__fields[7] = {
180
180
  const upb_msglayout validate_SInt32Rules_msginit = {
181
181
  NULL,
182
182
  &validate_SInt32Rules__fields[0],
183
- UPB_SIZE(32, 40), 7, false,
183
+ UPB_SIZE(32, 40), 7, false, 255,
184
184
  };
185
185
 
186
186
  static const upb_msglayout_field validate_SInt64Rules__fields[7] = {
@@ -196,7 +196,7 @@ static const upb_msglayout_field validate_SInt64Rules__fields[7] = {
196
196
  const upb_msglayout validate_SInt64Rules_msginit = {
197
197
  NULL,
198
198
  &validate_SInt64Rules__fields[0],
199
- UPB_SIZE(56, 64), 7, false,
199
+ UPB_SIZE(56, 64), 7, false, 255,
200
200
  };
201
201
 
202
202
  static const upb_msglayout_field validate_Fixed32Rules__fields[7] = {
@@ -212,7 +212,7 @@ static const upb_msglayout_field validate_Fixed32Rules__fields[7] = {
212
212
  const upb_msglayout validate_Fixed32Rules_msginit = {
213
213
  NULL,
214
214
  &validate_Fixed32Rules__fields[0],
215
- UPB_SIZE(32, 40), 7, false,
215
+ UPB_SIZE(32, 40), 7, false, 255,
216
216
  };
217
217
 
218
218
  static const upb_msglayout_field validate_Fixed64Rules__fields[7] = {
@@ -228,7 +228,7 @@ static const upb_msglayout_field validate_Fixed64Rules__fields[7] = {
228
228
  const upb_msglayout validate_Fixed64Rules_msginit = {
229
229
  NULL,
230
230
  &validate_Fixed64Rules__fields[0],
231
- UPB_SIZE(56, 64), 7, false,
231
+ UPB_SIZE(56, 64), 7, false, 255,
232
232
  };
233
233
 
234
234
  static const upb_msglayout_field validate_SFixed32Rules__fields[7] = {
@@ -244,7 +244,7 @@ static const upb_msglayout_field validate_SFixed32Rules__fields[7] = {
244
244
  const upb_msglayout validate_SFixed32Rules_msginit = {
245
245
  NULL,
246
246
  &validate_SFixed32Rules__fields[0],
247
- UPB_SIZE(32, 40), 7, false,
247
+ UPB_SIZE(32, 40), 7, false, 255,
248
248
  };
249
249
 
250
250
  static const upb_msglayout_field validate_SFixed64Rules__fields[7] = {
@@ -260,7 +260,7 @@ static const upb_msglayout_field validate_SFixed64Rules__fields[7] = {
260
260
  const upb_msglayout validate_SFixed64Rules_msginit = {
261
261
  NULL,
262
262
  &validate_SFixed64Rules__fields[0],
263
- UPB_SIZE(56, 64), 7, false,
263
+ UPB_SIZE(56, 64), 7, false, 255,
264
264
  };
265
265
 
266
266
  static const upb_msglayout_field validate_BoolRules__fields[1] = {
@@ -270,63 +270,63 @@ static const upb_msglayout_field validate_BoolRules__fields[1] = {
270
270
  const upb_msglayout validate_BoolRules_msginit = {
271
271
  NULL,
272
272
  &validate_BoolRules__fields[0],
273
- UPB_SIZE(2, 2), 1, false,
273
+ UPB_SIZE(8, 8), 1, false, 255,
274
274
  };
275
275
 
276
276
  static const upb_msglayout_field validate_StringRules__fields[25] = {
277
- {1, UPB_SIZE(60, 64), 8, 0, 12, 1},
278
- {2, UPB_SIZE(8, 8), 1, 0, 4, 1},
279
- {3, UPB_SIZE(16, 16), 2, 0, 4, 1},
280
- {4, UPB_SIZE(24, 24), 3, 0, 4, 1},
281
- {5, UPB_SIZE(32, 32), 4, 0, 4, 1},
282
- {6, UPB_SIZE(68, 80), 9, 0, 12, 1},
283
- {7, UPB_SIZE(76, 96), 10, 0, 12, 1},
284
- {8, UPB_SIZE(84, 112), 11, 0, 12, 1},
285
- {9, UPB_SIZE(92, 128), 12, 0, 12, 1},
277
+ {1, UPB_SIZE(60, 64), 1, 0, 12, 1},
278
+ {2, UPB_SIZE(8, 8), 2, 0, 4, 1},
279
+ {3, UPB_SIZE(16, 16), 3, 0, 4, 1},
280
+ {4, UPB_SIZE(24, 24), 4, 0, 4, 1},
281
+ {5, UPB_SIZE(32, 32), 5, 0, 4, 1},
282
+ {6, UPB_SIZE(68, 80), 6, 0, 12, 1},
283
+ {7, UPB_SIZE(76, 96), 7, 0, 12, 1},
284
+ {8, UPB_SIZE(84, 112), 8, 0, 12, 1},
285
+ {9, UPB_SIZE(92, 128), 9, 0, 12, 1},
286
286
  {10, UPB_SIZE(108, 160), 0, 0, 12, 3},
287
287
  {11, UPB_SIZE(112, 168), 0, 0, 12, 3},
288
- {12, UPB_SIZE(120, 176), UPB_SIZE(-129, -185), 0, 8, 1},
289
- {13, UPB_SIZE(120, 176), UPB_SIZE(-129, -185), 0, 8, 1},
290
- {14, UPB_SIZE(120, 176), UPB_SIZE(-129, -185), 0, 8, 1},
291
- {15, UPB_SIZE(120, 176), UPB_SIZE(-129, -185), 0, 8, 1},
292
- {16, UPB_SIZE(120, 176), UPB_SIZE(-129, -185), 0, 8, 1},
293
- {17, UPB_SIZE(120, 176), UPB_SIZE(-129, -185), 0, 8, 1},
294
- {18, UPB_SIZE(120, 176), UPB_SIZE(-129, -185), 0, 8, 1},
295
- {19, UPB_SIZE(40, 40), 5, 0, 4, 1},
296
- {20, UPB_SIZE(48, 48), 6, 0, 4, 1},
297
- {21, UPB_SIZE(120, 176), UPB_SIZE(-129, -185), 0, 8, 1},
298
- {22, UPB_SIZE(120, 176), UPB_SIZE(-129, -185), 0, 8, 1},
299
- {23, UPB_SIZE(100, 144), 13, 0, 12, 1},
300
- {24, UPB_SIZE(120, 176), UPB_SIZE(-129, -185), 0, 14, 1},
301
- {25, UPB_SIZE(56, 56), 7, 0, 8, 1},
288
+ {12, UPB_SIZE(116, 176), UPB_SIZE(-121, -181), 0, 8, 1},
289
+ {13, UPB_SIZE(116, 176), UPB_SIZE(-121, -181), 0, 8, 1},
290
+ {14, UPB_SIZE(116, 176), UPB_SIZE(-121, -181), 0, 8, 1},
291
+ {15, UPB_SIZE(116, 176), UPB_SIZE(-121, -181), 0, 8, 1},
292
+ {16, UPB_SIZE(116, 176), UPB_SIZE(-121, -181), 0, 8, 1},
293
+ {17, UPB_SIZE(116, 176), UPB_SIZE(-121, -181), 0, 8, 1},
294
+ {18, UPB_SIZE(116, 176), UPB_SIZE(-121, -181), 0, 8, 1},
295
+ {19, UPB_SIZE(40, 40), 10, 0, 4, 1},
296
+ {20, UPB_SIZE(48, 48), 11, 0, 4, 1},
297
+ {21, UPB_SIZE(116, 176), UPB_SIZE(-121, -181), 0, 8, 1},
298
+ {22, UPB_SIZE(116, 176), UPB_SIZE(-121, -181), 0, 8, 1},
299
+ {23, UPB_SIZE(100, 144), 12, 0, 12, 1},
300
+ {24, UPB_SIZE(116, 176), UPB_SIZE(-121, -181), 0, 14, 1},
301
+ {25, UPB_SIZE(56, 56), 13, 0, 8, 1},
302
302
  };
303
303
 
304
304
  const upb_msglayout validate_StringRules_msginit = {
305
305
  NULL,
306
306
  &validate_StringRules__fields[0],
307
- UPB_SIZE(136, 192), 25, false,
307
+ UPB_SIZE(128, 192), 25, false, 255,
308
308
  };
309
309
 
310
310
  static const upb_msglayout_field validate_BytesRules__fields[13] = {
311
- {1, UPB_SIZE(32, 32), 4, 0, 12, 1},
312
- {2, UPB_SIZE(8, 8), 1, 0, 4, 1},
313
- {3, UPB_SIZE(16, 16), 2, 0, 4, 1},
314
- {4, UPB_SIZE(40, 48), 5, 0, 12, 1},
315
- {5, UPB_SIZE(48, 64), 6, 0, 12, 1},
316
- {6, UPB_SIZE(56, 80), 7, 0, 12, 1},
317
- {7, UPB_SIZE(64, 96), 8, 0, 12, 1},
311
+ {1, UPB_SIZE(32, 32), 1, 0, 12, 1},
312
+ {2, UPB_SIZE(8, 8), 2, 0, 4, 1},
313
+ {3, UPB_SIZE(16, 16), 3, 0, 4, 1},
314
+ {4, UPB_SIZE(40, 48), 4, 0, 12, 1},
315
+ {5, UPB_SIZE(48, 64), 5, 0, 12, 1},
316
+ {6, UPB_SIZE(56, 80), 6, 0, 12, 1},
317
+ {7, UPB_SIZE(64, 96), 7, 0, 12, 1},
318
318
  {8, UPB_SIZE(72, 112), 0, 0, 12, 3},
319
319
  {9, UPB_SIZE(76, 120), 0, 0, 12, 3},
320
320
  {10, UPB_SIZE(80, 128), UPB_SIZE(-85, -133), 0, 8, 1},
321
321
  {11, UPB_SIZE(80, 128), UPB_SIZE(-85, -133), 0, 8, 1},
322
322
  {12, UPB_SIZE(80, 128), UPB_SIZE(-85, -133), 0, 8, 1},
323
- {13, UPB_SIZE(24, 24), 3, 0, 4, 1},
323
+ {13, UPB_SIZE(24, 24), 8, 0, 4, 1},
324
324
  };
325
325
 
326
326
  const upb_msglayout validate_BytesRules_msginit = {
327
327
  NULL,
328
328
  &validate_BytesRules__fields[0],
329
- UPB_SIZE(88, 144), 13, false,
329
+ UPB_SIZE(88, 144), 13, false, 255,
330
330
  };
331
331
 
332
332
  static const upb_msglayout_field validate_EnumRules__fields[4] = {
@@ -339,7 +339,7 @@ static const upb_msglayout_field validate_EnumRules__fields[4] = {
339
339
  const upb_msglayout validate_EnumRules_msginit = {
340
340
  NULL,
341
341
  &validate_EnumRules__fields[0],
342
- UPB_SIZE(20, 32), 4, false,
342
+ UPB_SIZE(24, 32), 4, false, 255,
343
343
  };
344
344
 
345
345
  static const upb_msglayout_field validate_MessageRules__fields[2] = {
@@ -350,7 +350,7 @@ static const upb_msglayout_field validate_MessageRules__fields[2] = {
350
350
  const upb_msglayout validate_MessageRules_msginit = {
351
351
  NULL,
352
352
  &validate_MessageRules__fields[0],
353
- UPB_SIZE(3, 3), 2, false,
353
+ UPB_SIZE(8, 8), 2, false, 255,
354
354
  };
355
355
 
356
356
  static const upb_msglayout *const validate_RepeatedRules_submsgs[1] = {
@@ -367,10 +367,10 @@ static const upb_msglayout_field validate_RepeatedRules__fields[4] = {
367
367
  const upb_msglayout validate_RepeatedRules_msginit = {
368
368
  &validate_RepeatedRules_submsgs[0],
369
369
  &validate_RepeatedRules__fields[0],
370
- UPB_SIZE(32, 40), 4, false,
370
+ UPB_SIZE(32, 40), 4, false, 255,
371
371
  };
372
372
 
373
- static const upb_msglayout *const validate_MapRules_submsgs[2] = {
373
+ static const upb_msglayout *const validate_MapRules_submsgs[1] = {
374
374
  &validate_FieldRules_msginit,
375
375
  };
376
376
 
@@ -385,7 +385,7 @@ static const upb_msglayout_field validate_MapRules__fields[5] = {
385
385
  const upb_msglayout validate_MapRules_msginit = {
386
386
  &validate_MapRules_submsgs[0],
387
387
  &validate_MapRules__fields[0],
388
- UPB_SIZE(40, 48), 5, false,
388
+ UPB_SIZE(40, 48), 5, false, 255,
389
389
  };
390
390
 
391
391
  static const upb_msglayout_field validate_AnyRules__fields[3] = {
@@ -397,10 +397,10 @@ static const upb_msglayout_field validate_AnyRules__fields[3] = {
397
397
  const upb_msglayout validate_AnyRules_msginit = {
398
398
  NULL,
399
399
  &validate_AnyRules__fields[0],
400
- UPB_SIZE(12, 24), 3, false,
400
+ UPB_SIZE(16, 24), 3, false, 255,
401
401
  };
402
402
 
403
- static const upb_msglayout *const validate_DurationRules_submsgs[7] = {
403
+ static const upb_msglayout *const validate_DurationRules_submsgs[1] = {
404
404
  &google_protobuf_Duration_msginit,
405
405
  };
406
406
 
@@ -418,30 +418,30 @@ static const upb_msglayout_field validate_DurationRules__fields[8] = {
418
418
  const upb_msglayout validate_DurationRules_msginit = {
419
419
  &validate_DurationRules_submsgs[0],
420
420
  &validate_DurationRules__fields[0],
421
- UPB_SIZE(32, 64), 8, false,
421
+ UPB_SIZE(32, 64), 8, false, 255,
422
422
  };
423
423
 
424
- static const upb_msglayout *const validate_TimestampRules_submsgs[6] = {
424
+ static const upb_msglayout *const validate_TimestampRules_submsgs[2] = {
425
425
  &google_protobuf_Duration_msginit,
426
426
  &google_protobuf_Timestamp_msginit,
427
427
  };
428
428
 
429
429
  static const upb_msglayout_field validate_TimestampRules__fields[9] = {
430
430
  {1, UPB_SIZE(2, 2), 1, 0, 8, 1},
431
- {2, UPB_SIZE(8, 8), 4, 1, 11, 1},
432
- {3, UPB_SIZE(12, 16), 5, 1, 11, 1},
433
- {4, UPB_SIZE(16, 24), 6, 1, 11, 1},
434
- {5, UPB_SIZE(20, 32), 7, 1, 11, 1},
435
- {6, UPB_SIZE(24, 40), 8, 1, 11, 1},
436
- {7, UPB_SIZE(3, 3), 2, 0, 8, 1},
437
- {8, UPB_SIZE(4, 4), 3, 0, 8, 1},
431
+ {2, UPB_SIZE(8, 8), 2, 1, 11, 1},
432
+ {3, UPB_SIZE(12, 16), 3, 1, 11, 1},
433
+ {4, UPB_SIZE(16, 24), 4, 1, 11, 1},
434
+ {5, UPB_SIZE(20, 32), 5, 1, 11, 1},
435
+ {6, UPB_SIZE(24, 40), 6, 1, 11, 1},
436
+ {7, UPB_SIZE(3, 3), 7, 0, 8, 1},
437
+ {8, UPB_SIZE(4, 4), 8, 0, 8, 1},
438
438
  {9, UPB_SIZE(28, 48), 9, 0, 11, 1},
439
439
  };
440
440
 
441
441
  const upb_msglayout validate_TimestampRules_msginit = {
442
442
  &validate_TimestampRules_submsgs[0],
443
443
  &validate_TimestampRules__fields[0],
444
- UPB_SIZE(32, 56), 9, false,
444
+ UPB_SIZE(32, 56), 9, false, 255,
445
445
  };
446
446
 
447
447
  #include "upb/port_undef.inc"