grpc 1.66.0 → 1.67.0.pre1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (547) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +19 -10
  3. data/include/grpc/credentials.h +1 -1
  4. data/include/grpc/event_engine/README.md +1 -1
  5. data/include/grpc/event_engine/internal/slice_cast.h +1 -1
  6. data/include/grpc/event_engine/slice.h +0 -1
  7. data/include/grpc/event_engine/slice_buffer.h +0 -1
  8. data/include/grpc/grpc_crl_provider.h +1 -1
  9. data/include/grpc/impl/channel_arg_names.h +1 -1
  10. data/include/grpc/support/log.h +34 -32
  11. data/include/grpc/support/sync_generic.h +2 -4
  12. data/src/core/channelz/channelz.cc +0 -1
  13. data/src/core/channelz/channelz_registry.cc +0 -1
  14. data/src/core/client_channel/client_channel.cc +10 -7
  15. data/src/core/client_channel/client_channel.h +1 -1
  16. data/src/core/client_channel/client_channel_filter.cc +21 -18
  17. data/src/core/client_channel/client_channel_filter.h +1 -1
  18. data/src/core/client_channel/client_channel_internal.h +0 -2
  19. data/src/core/client_channel/config_selector.h +0 -1
  20. data/src/core/client_channel/dynamic_filters.cc +0 -2
  21. data/src/core/client_channel/local_subchannel_pool.cc +0 -2
  22. data/src/core/client_channel/retry_filter.h +0 -1
  23. data/src/core/client_channel/retry_filter_legacy_call_data.cc +175 -257
  24. data/src/core/client_channel/subchannel.cc +21 -27
  25. data/src/core/client_channel/subchannel_stream_client.cc +1 -1
  26. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +8 -9
  27. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +0 -1
  28. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +3 -4
  29. data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.cc +167 -0
  30. data/src/core/ext/filters/gcp_authentication/gcp_authentication_filter.h +82 -0
  31. data/src/core/ext/filters/gcp_authentication/gcp_authentication_service_config_parser.cc +81 -0
  32. data/src/core/ext/filters/gcp_authentication/gcp_authentication_service_config_parser.h +87 -0
  33. data/src/core/ext/filters/http/message_compress/compression_filter.cc +7 -9
  34. data/src/core/ext/filters/http/server/http_server_filter.cc +2 -4
  35. data/src/core/ext/filters/message_size/message_size_filter.cc +6 -7
  36. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +0 -2
  37. data/src/core/ext/transport/chttp2/alpn/alpn.cc +0 -1
  38. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +6 -8
  39. data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +0 -1
  40. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +288 -265
  41. data/src/core/ext/transport/chttp2/transport/flow_control.cc +3 -4
  42. data/src/core/ext/transport/chttp2/transport/flow_control.h +0 -1
  43. data/src/core/ext/transport/chttp2/transport/frame.cc +0 -1
  44. data/src/core/ext/transport/chttp2/transport/frame_data.cc +0 -1
  45. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +0 -1
  46. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +6 -6
  47. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +3 -4
  48. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +5 -6
  49. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +0 -1
  50. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +2 -3
  51. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +0 -1
  52. data/src/core/ext/transport/chttp2/transport/hpack_parse_result.h +0 -1
  53. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +3 -3
  54. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +37 -5
  55. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +27 -6
  56. data/src/core/ext/transport/chttp2/transport/internal.h +2 -3
  57. data/src/core/ext/transport/chttp2/transport/parsing.cc +21 -32
  58. data/src/core/ext/transport/chttp2/transport/ping_callbacks.cc +0 -1
  59. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +6 -8
  60. data/src/core/ext/transport/chttp2/transport/varint.h +0 -1
  61. data/src/core/ext/transport/chttp2/transport/write_size_policy.cc +0 -1
  62. data/src/core/ext/transport/chttp2/transport/writing.cc +22 -22
  63. data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb.h +431 -0
  64. data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb_minitable.c +129 -0
  65. data/src/core/ext/upb-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upb_minitable.h +33 -0
  66. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb.h +16 -0
  67. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.c +13 -2
  68. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb.h +397 -22
  69. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.c +94 -20
  70. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.h +2 -0
  71. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upbdefs.c +86 -0
  72. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/gcp_authn/v3/gcp_authn.upbdefs.h +47 -0
  73. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/checked.upbdefs.c +108 -107
  74. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/syntax.upbdefs.c +101 -78
  75. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/syntax.upbdefs.h +10 -0
  76. data/src/core/handshaker/handshaker.cc +21 -29
  77. data/src/core/handshaker/security/secure_endpoint.cc +3 -3
  78. data/src/core/handshaker/security/security_handshaker.cc +60 -72
  79. data/src/core/handshaker/tcp_connect/tcp_connect_handshaker.cc +0 -1
  80. data/src/core/lib/backoff/backoff.cc +7 -10
  81. data/src/core/lib/backoff/backoff.h +4 -6
  82. data/src/core/lib/channel/channel_stack.cc +0 -1
  83. data/src/core/lib/channel/channel_stack.h +0 -1
  84. data/src/core/lib/channel/channel_stack_builder_impl.cc +0 -1
  85. data/src/core/lib/channel/connected_channel.cc +0 -1
  86. data/src/core/lib/channel/promise_based_filter.cc +146 -194
  87. data/src/core/lib/channel/promise_based_filter.h +1 -1
  88. data/src/core/lib/compression/compression_internal.cc +0 -1
  89. data/src/core/lib/config/config_vars.cc +11 -1
  90. data/src/core/lib/config/config_vars.h +8 -0
  91. data/src/core/lib/config/core_configuration.cc +0 -1
  92. data/src/core/lib/config/core_configuration.h +0 -1
  93. data/src/core/lib/debug/event_log.cc +0 -1
  94. data/src/core/lib/debug/trace_flags.cc +4 -18
  95. data/src/core/lib/debug/trace_flags.h +2 -5
  96. data/src/core/lib/debug/trace_impl.h +6 -0
  97. data/src/core/lib/event_engine/ares_resolver.cc +89 -56
  98. data/src/core/lib/event_engine/ares_resolver.h +0 -9
  99. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.cc +14 -1
  100. data/src/core/lib/event_engine/cf_engine/cftype_unique_ref.h +1 -1
  101. data/src/core/lib/event_engine/forkable.cc +0 -1
  102. data/src/core/lib/event_engine/forkable.h +0 -1
  103. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +1 -1
  104. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h +4 -4
  105. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +0 -1
  106. data/src/core/lib/event_engine/posix_engine/lockfree_event.cc +0 -1
  107. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +9 -1
  108. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +0 -1
  109. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +2 -2
  110. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +1 -2
  111. data/src/core/lib/event_engine/posix_engine/timer_manager.cc +4 -9
  112. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +0 -1
  113. data/src/core/lib/event_engine/resolved_address.cc +0 -1
  114. data/src/core/lib/event_engine/slice.cc +0 -1
  115. data/src/core/lib/event_engine/thread_pool/thread_count.cc +0 -1
  116. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +3 -5
  117. data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.cc +121 -93
  118. data/src/core/lib/experiments/config.cc +12 -10
  119. data/src/core/lib/experiments/experiments.cc +45 -66
  120. data/src/core/lib/experiments/experiments.h +22 -27
  121. data/src/core/lib/gprpp/chunked_vector.h +0 -1
  122. data/src/core/lib/gprpp/down_cast.h +0 -1
  123. data/src/core/lib/gprpp/host_port.cc +0 -1
  124. data/src/core/lib/gprpp/load_file.cc +0 -1
  125. data/src/core/lib/gprpp/mpscq.h +0 -1
  126. data/src/core/lib/gprpp/single_set_ptr.h +0 -1
  127. data/src/core/lib/gprpp/status_helper.cc +0 -1
  128. data/src/core/lib/gprpp/sync.h +0 -1
  129. data/src/core/lib/gprpp/table.h +28 -0
  130. data/src/core/lib/gprpp/thd.h +0 -1
  131. data/src/core/lib/gprpp/time.h +0 -1
  132. data/src/core/lib/gprpp/time_util.cc +0 -1
  133. data/src/core/lib/gprpp/windows/directory_reader.cc +0 -2
  134. data/src/core/lib/gprpp/windows/thd.cc +0 -1
  135. data/src/core/lib/gprpp/work_serializer.cc +23 -34
  136. data/src/core/lib/iomgr/buffer_list.cc +0 -1
  137. data/src/core/lib/iomgr/call_combiner.h +6 -8
  138. data/src/core/lib/iomgr/cfstream_handle.cc +6 -8
  139. data/src/core/lib/iomgr/closure.h +5 -8
  140. data/src/core/lib/iomgr/combiner.cc +6 -8
  141. data/src/core/lib/iomgr/endpoint_cfstream.cc +17 -22
  142. data/src/core/lib/iomgr/endpoint_pair_posix.cc +0 -1
  143. data/src/core/lib/iomgr/error.h +0 -1
  144. data/src/core/lib/iomgr/ev_apple.cc +13 -18
  145. data/src/core/lib/iomgr/ev_epoll1_linux.cc +47 -85
  146. data/src/core/lib/iomgr/ev_poll_posix.cc +17 -24
  147. data/src/core/lib/iomgr/ev_posix.cc +55 -44
  148. data/src/core/lib/iomgr/ev_posix.h +0 -5
  149. data/src/core/lib/iomgr/event_engine_shims/closure.cc +7 -9
  150. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +3 -4
  151. data/src/core/lib/iomgr/exec_ctx.cc +6 -9
  152. data/src/core/lib/iomgr/exec_ctx.h +26 -16
  153. data/src/core/lib/iomgr/executor.cc +43 -33
  154. data/src/core/lib/iomgr/fork_windows.cc +0 -1
  155. data/src/core/lib/iomgr/internal_errqueue.cc +0 -1
  156. data/src/core/lib/iomgr/iocp_windows.cc +0 -1
  157. data/src/core/lib/iomgr/iomgr_windows.cc +0 -2
  158. data/src/core/lib/iomgr/lockfree_event.cc +7 -11
  159. data/src/core/lib/iomgr/polling_entity.cc +10 -3
  160. data/src/core/lib/iomgr/pollset_windows.cc +0 -2
  161. data/src/core/lib/iomgr/resolve_address.cc +0 -1
  162. data/src/core/lib/iomgr/resolve_address_posix.cc +0 -1
  163. data/src/core/lib/iomgr/resolve_address_windows.cc +0 -1
  164. data/src/core/lib/iomgr/sockaddr_utils_posix.cc +0 -1
  165. data/src/core/lib/iomgr/socket_mutator.cc +0 -1
  166. data/src/core/lib/iomgr/socket_utils_linux.cc +0 -2
  167. data/src/core/lib/iomgr/socket_utils_posix.cc +0 -1
  168. data/src/core/lib/iomgr/socket_utils_windows.cc +0 -2
  169. data/src/core/lib/iomgr/tcp_client_cfstream.cc +7 -12
  170. data/src/core/lib/iomgr/tcp_client_posix.cc +8 -12
  171. data/src/core/lib/iomgr/tcp_client_windows.cc +0 -1
  172. data/src/core/lib/iomgr/tcp_posix.cc +32 -68
  173. data/src/core/lib/iomgr/tcp_server_posix.cc +7 -11
  174. data/src/core/lib/iomgr/tcp_windows.cc +4 -12
  175. data/src/core/lib/iomgr/timer_generic.cc +46 -65
  176. data/src/core/lib/iomgr/timer_manager.cc +4 -5
  177. data/src/core/lib/iomgr/unix_sockets_posix.cc +0 -1
  178. data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +0 -2
  179. data/src/core/lib/iomgr/vsock.cc +0 -1
  180. data/src/core/lib/iomgr/wakeup_fd_eventfd.cc +0 -2
  181. data/src/core/lib/promise/activity.h +0 -1
  182. data/src/core/lib/promise/context.h +0 -1
  183. data/src/core/lib/promise/detail/join_state.h +44 -44
  184. data/src/core/lib/promise/detail/seq_state.h +1101 -1356
  185. data/src/core/lib/promise/for_each.h +8 -15
  186. data/src/core/lib/promise/interceptor_list.h +17 -27
  187. data/src/core/lib/promise/latch.h +16 -24
  188. data/src/core/lib/promise/map.h +1 -1
  189. data/src/core/lib/promise/party.cc +238 -114
  190. data/src/core/lib/promise/party.h +105 -308
  191. data/src/core/lib/promise/pipe.h +3 -4
  192. data/src/core/lib/promise/poll.h +0 -1
  193. data/src/core/lib/promise/status_flag.h +0 -1
  194. data/src/core/lib/resource_quota/connection_quota.cc +0 -1
  195. data/src/core/lib/resource_quota/memory_quota.cc +11 -19
  196. data/src/core/lib/resource_quota/memory_quota.h +2 -4
  197. data/src/core/lib/resource_quota/periodic_update.cc +2 -3
  198. data/src/core/lib/resource_quota/thread_quota.cc +0 -1
  199. data/src/core/lib/security/authorization/audit_logging.cc +0 -1
  200. data/src/core/lib/security/authorization/grpc_authorization_engine.cc +0 -1
  201. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +14 -19
  202. data/src/core/lib/security/authorization/stdout_logger.cc +0 -1
  203. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +0 -1
  204. data/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc +0 -1
  205. data/src/core/lib/security/credentials/call_creds_util.cc +0 -1
  206. data/src/core/lib/security/credentials/composite/composite_credentials.cc +0 -1
  207. data/src/core/lib/security/credentials/composite/composite_credentials.h +2 -0
  208. data/src/core/lib/security/credentials/credentials.h +1 -2
  209. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +322 -324
  210. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +53 -42
  211. data/src/core/lib/security/credentials/external/external_account_credentials.cc +391 -353
  212. data/src/core/lib/security/credentials/external/external_account_credentials.h +121 -51
  213. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +83 -44
  214. data/src/core/lib/security/credentials/external/file_external_account_credentials.h +27 -7
  215. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +91 -116
  216. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +14 -17
  217. data/src/core/lib/security/credentials/fake/fake_credentials.h +2 -0
  218. data/src/core/lib/security/credentials/gcp_service_account_identity/gcp_service_account_identity_credentials.cc +196 -0
  219. data/src/core/lib/security/credentials/gcp_service_account_identity/gcp_service_account_identity_credentials.h +90 -0
  220. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +27 -41
  221. data/src/core/lib/security/credentials/iam/iam_credentials.cc +0 -1
  222. data/src/core/lib/security/credentials/iam/iam_credentials.h +2 -0
  223. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +2 -0
  224. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +163 -259
  225. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +34 -56
  226. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +12 -16
  227. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +2 -0
  228. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +0 -1
  229. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +0 -1
  230. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +0 -1
  231. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.cc +0 -1
  232. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +0 -1
  233. data/src/core/lib/security/credentials/token_fetcher/token_fetcher_credentials.cc +298 -0
  234. data/src/core/lib/security/credentials/token_fetcher/token_fetcher_credentials.h +176 -0
  235. data/src/core/lib/security/credentials/xds/xds_credentials.cc +0 -1
  236. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +0 -1
  237. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +0 -1
  238. data/src/core/lib/security/security_connector/load_system_roots_windows.cc +0 -1
  239. data/src/core/lib/security/transport/server_auth_filter.cc +4 -6
  240. data/src/core/lib/slice/percent_encoding.cc +0 -1
  241. data/src/core/lib/slice/slice.cc +0 -1
  242. data/src/core/lib/slice/slice.h +0 -1
  243. data/src/core/lib/slice/slice_buffer.cc +0 -1
  244. data/src/core/lib/slice/slice_internal.h +0 -1
  245. data/src/core/lib/slice/slice_refcount.h +6 -8
  246. data/src/core/lib/surface/byte_buffer_reader.cc +0 -1
  247. data/src/core/lib/surface/call.cc +3 -5
  248. data/src/core/lib/surface/call_utils.h +0 -1
  249. data/src/core/lib/surface/channel.cc +0 -1
  250. data/src/core/lib/surface/channel_create.cc +0 -1
  251. data/src/core/lib/surface/channel_init.h +0 -1
  252. data/src/core/lib/surface/client_call.cc +0 -1
  253. data/src/core/lib/surface/client_call.h +0 -1
  254. data/src/core/lib/surface/completion_queue.cc +28 -4
  255. data/src/core/lib/surface/completion_queue_factory.cc +0 -1
  256. data/src/core/lib/surface/filter_stack_call.cc +9 -9
  257. data/src/core/lib/surface/filter_stack_call.h +0 -1
  258. data/src/core/lib/surface/lame_client.cc +0 -1
  259. data/src/core/lib/surface/server_call.cc +0 -1
  260. data/src/core/lib/surface/server_call.h +0 -1
  261. data/src/core/lib/surface/validate_metadata.h +0 -1
  262. data/src/core/lib/surface/version.cc +2 -2
  263. data/src/core/lib/transport/bdp_estimator.cc +9 -12
  264. data/src/core/lib/transport/bdp_estimator.h +6 -8
  265. data/src/core/lib/transport/call_arena_allocator.cc +2 -16
  266. data/src/core/lib/transport/call_arena_allocator.h +20 -5
  267. data/src/core/lib/transport/call_filters.cc +6 -9
  268. data/src/core/lib/transport/call_spine.h +24 -13
  269. data/src/core/lib/transport/connectivity_state.cc +34 -42
  270. data/src/core/lib/transport/metadata_batch.h +41 -1
  271. data/src/core/lib/transport/timeout_encoding.cc +0 -1
  272. data/src/core/lib/transport/transport.h +6 -8
  273. data/src/core/lib/transport/transport_op_string.cc +0 -1
  274. data/src/core/lib/uri/uri_parser.cc +0 -1
  275. data/src/core/load_balancing/grpclb/grpclb.cc +55 -71
  276. data/src/core/load_balancing/health_check_client.cc +31 -42
  277. data/src/core/load_balancing/oob_backend_metric.cc +2 -4
  278. data/src/core/load_balancing/outlier_detection/outlier_detection.cc +99 -129
  279. data/src/core/load_balancing/pick_first/pick_first.cc +168 -228
  280. data/src/core/load_balancing/priority/priority.cc +77 -106
  281. data/src/core/load_balancing/ring_hash/ring_hash.cc +32 -46
  282. data/src/core/load_balancing/rls/rls.cc +142 -187
  283. data/src/core/load_balancing/round_robin/round_robin.cc +36 -55
  284. data/src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc +0 -1
  285. data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +85 -110
  286. data/src/core/load_balancing/weighted_target/weighted_target.cc +52 -75
  287. data/src/core/load_balancing/xds/cds.cc +26 -43
  288. data/src/core/load_balancing/xds/xds_cluster_impl.cc +57 -54
  289. data/src/core/load_balancing/xds/xds_cluster_manager.cc +36 -50
  290. data/src/core/load_balancing/xds/xds_override_host.cc +95 -131
  291. data/src/core/load_balancing/xds/xds_wrr_locality.cc +15 -23
  292. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +3 -0
  293. data/src/core/resolver/binder/binder_resolver.cc +0 -2
  294. data/src/core/resolver/dns/c_ares/dns_resolver_ares.cc +62 -44
  295. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +0 -2
  296. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +110 -89
  297. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc +132 -96
  298. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.h +0 -7
  299. data/src/core/resolver/dns/dns_resolver_plugin.cc +0 -1
  300. data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +40 -39
  301. data/src/core/resolver/dns/native/dns_resolver.cc +8 -14
  302. data/src/core/resolver/endpoint_addresses.cc +0 -1
  303. data/src/core/resolver/fake/fake_resolver.cc +0 -1
  304. data/src/core/resolver/polling_resolver.cc +6 -15
  305. data/src/core/resolver/polling_resolver.h +1 -1
  306. data/src/core/resolver/xds/xds_config.cc +96 -0
  307. data/src/core/resolver/xds/xds_config.h +109 -0
  308. data/src/core/resolver/xds/xds_dependency_manager.cc +59 -154
  309. data/src/core/resolver/xds/xds_dependency_manager.h +1 -69
  310. data/src/core/resolver/xds/xds_resolver.cc +51 -55
  311. data/src/core/server/server.cc +2 -2
  312. data/src/core/server/server_config_selector_filter.cc +0 -1
  313. data/src/core/server/xds_server_config_fetcher.cc +4 -6
  314. data/src/core/service_config/service_config_call_data.h +2 -3
  315. data/src/core/service_config/service_config_channel_arg_filter.cc +0 -1
  316. data/src/core/service_config/service_config_impl.h +0 -1
  317. data/src/core/telemetry/call_tracer.cc +0 -1
  318. data/src/core/telemetry/metrics.h +0 -1
  319. data/src/core/telemetry/stats_data.cc +67 -0
  320. data/src/core/telemetry/stats_data.h +48 -0
  321. data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +0 -1
  322. data/src/core/tsi/alts/handshaker/transport_security_common_api.h +0 -1
  323. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc +0 -1
  324. data/src/core/tsi/fake_transport_security.cc +6 -5
  325. data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +0 -1
  326. data/src/core/util/alloc.cc +0 -1
  327. data/src/core/util/gcp_metadata_query.cc +0 -1
  328. data/src/core/util/http_client/httpcli.cc +12 -15
  329. data/src/core/util/http_client/httpcli.h +16 -11
  330. data/src/core/util/http_client/parser.cc +3 -4
  331. data/src/core/util/json/json_reader.cc +0 -1
  332. data/src/core/util/latent_see.cc +29 -9
  333. data/src/core/util/latent_see.h +122 -27
  334. data/src/core/util/log.cc +36 -55
  335. data/src/core/util/lru_cache.h +104 -0
  336. data/src/core/util/msys/tmpfile.cc +0 -1
  337. data/src/core/util/posix/sync.cc +0 -1
  338. data/src/core/util/posix/time.cc +0 -1
  339. data/src/core/util/ring_buffer.h +123 -0
  340. data/src/core/util/spinlock.h +1 -2
  341. data/src/core/util/string.cc +7 -7
  342. data/src/core/util/sync.cc +0 -1
  343. data/src/core/util/sync_abseil.cc +0 -1
  344. data/src/core/util/time.cc +0 -1
  345. data/src/core/util/unique_ptr_with_bitset.h +86 -0
  346. data/src/core/util/useful.h +0 -24
  347. data/src/core/util/windows/cpu.cc +0 -1
  348. data/src/core/util/windows/sync.cc +0 -1
  349. data/src/core/util/windows/time.cc +0 -1
  350. data/src/core/util/windows/tmpfile.cc +0 -1
  351. data/src/core/xds/grpc/xds_bootstrap_grpc.cc +0 -32
  352. data/src/core/xds/grpc/xds_bootstrap_grpc.h +0 -5
  353. data/src/core/xds/grpc/xds_certificate_provider.cc +0 -1
  354. data/src/core/xds/grpc/xds_client_grpc.cc +11 -16
  355. data/src/core/xds/grpc/xds_cluster.cc +2 -8
  356. data/src/core/xds/grpc/xds_cluster.h +4 -4
  357. data/src/core/xds/grpc/xds_cluster_parser.cc +58 -96
  358. data/src/core/xds/grpc/xds_cluster_specifier_plugin.cc +0 -1
  359. data/src/core/xds/grpc/xds_common_types_parser.cc +4 -4
  360. data/src/core/xds/grpc/xds_common_types_parser.h +17 -0
  361. data/src/core/xds/grpc/xds_endpoint_parser.cc +14 -14
  362. data/src/core/xds/grpc/xds_http_fault_filter.cc +15 -6
  363. data/src/core/xds/grpc/xds_http_fault_filter.h +5 -1
  364. data/src/core/xds/grpc/xds_http_filter.h +11 -1
  365. data/src/core/xds/grpc/xds_http_filter_registry.cc +7 -1
  366. data/src/core/xds/grpc/xds_http_filter_registry.h +8 -1
  367. data/src/core/xds/grpc/xds_http_gcp_authn_filter.cc +142 -0
  368. data/src/core/xds/grpc/xds_http_gcp_authn_filter.h +61 -0
  369. data/src/core/xds/grpc/xds_http_rbac_filter.cc +14 -6
  370. data/src/core/xds/grpc/xds_http_rbac_filter.h +5 -1
  371. data/src/core/xds/grpc/xds_http_stateful_session_filter.cc +9 -1
  372. data/src/core/xds/grpc/xds_http_stateful_session_filter.h +5 -1
  373. data/src/core/xds/grpc/xds_lb_policy_registry.cc +14 -16
  374. data/src/core/xds/grpc/xds_listener_parser.cc +10 -11
  375. data/src/core/xds/grpc/xds_metadata.cc +62 -0
  376. data/src/core/xds/grpc/xds_metadata.h +127 -0
  377. data/src/core/xds/grpc/xds_metadata_parser.cc +143 -0
  378. data/src/core/xds/grpc/xds_metadata_parser.h +36 -0
  379. data/src/core/xds/grpc/xds_route_config_parser.cc +12 -17
  380. data/src/core/xds/grpc/xds_routing.cc +57 -22
  381. data/src/core/xds/grpc/xds_routing.h +10 -2
  382. data/src/core/xds/grpc/xds_transport_grpc.cc +0 -1
  383. data/src/core/xds/xds_client/xds_client.cc +124 -165
  384. data/src/core/xds/xds_client/xds_client_stats.cc +20 -27
  385. data/src/ruby/ext/grpc/rb_call.c +1 -1
  386. data/src/ruby/ext/grpc/rb_call_credentials.c +34 -27
  387. data/src/ruby/ext/grpc/rb_channel.c +22 -16
  388. data/src/ruby/ext/grpc/rb_event_thread.c +3 -2
  389. data/src/ruby/ext/grpc/rb_grpc.c +9 -8
  390. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +6 -10
  391. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +9 -15
  392. data/src/ruby/ext/grpc/rb_server.c +10 -8
  393. data/src/ruby/lib/grpc/generic/active_call.rb +8 -5
  394. data/src/ruby/lib/grpc/version.rb +1 -1
  395. data/src/ruby/spec/call_spec.rb +53 -40
  396. data/src/ruby/spec/channel_spec.rb +4 -2
  397. data/src/ruby/spec/client_server_spec.rb +148 -507
  398. data/src/ruby/spec/generic/active_call_spec.rb +64 -86
  399. data/src/ruby/spec/support/services.rb +3 -0
  400. data/third_party/boringssl-with-bazel/src/crypto/{fipsmodule/rand/fork_detect.h → bcm_support.h} +51 -6
  401. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/internal.h +43 -0
  402. data/third_party/boringssl-with-bazel/src/crypto/cpu_intel.c +72 -23
  403. data/third_party/boringssl-with-bazel/src/crypto/crypto.c +1 -1
  404. data/third_party/boringssl-with-bazel/src/crypto/ecdsa_extra/ecdsa_asn1.c +160 -14
  405. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/internal.h +2 -0
  406. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +79 -78
  407. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm_interface.h +89 -0
  408. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{div.c → div.c.inc} +146 -179
  409. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{random.c → random.c.inc} +6 -8
  410. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{sqrt.c → sqrt.c.inc} +1 -1
  411. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/{e_aes.c → e_aes.c.inc} +9 -8
  412. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/{ec_key.c → ec_key.c.inc} +11 -7
  413. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/{p256-nistz.c → p256-nistz.c.inc} +104 -12
  414. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-nistz.h +65 -8
  415. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/{ecdsa.c → ecdsa.c.inc} +52 -107
  416. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/internal.h +28 -11
  417. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/internal.h +1 -80
  418. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/{rand.c → rand.c.inc} +26 -40
  419. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/{padding.c → padding.c.inc} +2 -5
  420. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/{rsa_impl.c → rsa_impl.c.inc} +1 -1
  421. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/{self_check.c → self_check.c.inc} +9 -35
  422. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/internal.h +2 -2
  423. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/{service_indicator.c → service_indicator.c.inc} +2 -2
  424. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +293 -2
  425. data/third_party/boringssl-with-bazel/src/crypto/internal.h +69 -14
  426. data/third_party/boringssl-with-bazel/src/crypto/mem.c +7 -3
  427. data/third_party/boringssl-with-bazel/src/crypto/mldsa/internal.h +73 -0
  428. data/third_party/boringssl-with-bazel/src/crypto/mldsa/mldsa.c +1687 -0
  429. data/third_party/boringssl-with-bazel/src/crypto/mlkem/internal.h +90 -0
  430. data/third_party/boringssl-with-bazel/src/crypto/mlkem/mlkem.cc +1097 -0
  431. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_dat.h +4 -1
  432. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.c +4 -5
  433. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pk8.c +2 -3
  434. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pkey.c +1 -1
  435. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/internal.h +1 -0
  436. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/deterministic.c +9 -1
  437. data/third_party/boringssl-with-bazel/src/crypto/{fipsmodule/rand → rand_extra}/fork_detect.c +26 -28
  438. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/getentropy.c +9 -1
  439. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/ios.c +9 -1
  440. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/passive.c +19 -3
  441. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/rand_extra.c +26 -23
  442. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/sysrand_internal.h +37 -0
  443. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/trusty.c +9 -1
  444. data/third_party/boringssl-with-bazel/src/crypto/{fipsmodule/rand → rand_extra}/urandom.c +19 -19
  445. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/windows.c +8 -1
  446. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/internal.h +2 -0
  447. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +14 -1
  448. data/third_party/boringssl-with-bazel/src/include/openssl/bn.h +14 -9
  449. data/third_party/boringssl-with-bazel/src/include/openssl/experimental/dilithium.h +13 -15
  450. data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +8 -6
  451. data/third_party/boringssl-with-bazel/src/include/openssl/mldsa.h +136 -0
  452. data/third_party/boringssl-with-bazel/src/include/openssl/mlkem.h +246 -0
  453. data/third_party/boringssl-with-bazel/src/include/openssl/nid.h +3 -0
  454. data/third_party/boringssl-with-bazel/src/include/openssl/pem.h +3 -4
  455. data/third_party/boringssl-with-bazel/src/include/openssl/service_indicator.h +2 -2
  456. data/third_party/boringssl-with-bazel/src/include/openssl/span.h +22 -0
  457. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +35 -5
  458. data/third_party/boringssl-with-bazel/src/ssl/d1_both.cc +5 -6
  459. data/third_party/boringssl-with-bazel/src/ssl/d1_lib.cc +6 -0
  460. data/third_party/boringssl-with-bazel/src/ssl/d1_pkt.cc +6 -1
  461. data/third_party/boringssl-with-bazel/src/ssl/dtls_method.cc +13 -1
  462. data/third_party/boringssl-with-bazel/src/ssl/dtls_record.cc +289 -55
  463. data/third_party/boringssl-with-bazel/src/ssl/extensions.cc +2 -0
  464. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +69 -38
  465. data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +14 -3
  466. data/third_party/boringssl-with-bazel/src/ssl/internal.h +107 -14
  467. data/third_party/boringssl-with-bazel/src/ssl/s3_both.cc +44 -16
  468. data/third_party/boringssl-with-bazel/src/ssl/s3_pkt.cc +21 -1
  469. data/third_party/boringssl-with-bazel/src/ssl/ssl_aead_ctx.cc +86 -1
  470. data/third_party/boringssl-with-bazel/src/ssl/ssl_buffer.cc +7 -4
  471. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +97 -3
  472. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +31 -2
  473. data/third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc +6 -0
  474. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +18 -4
  475. data/third_party/boringssl-with-bazel/src/ssl/tls13_enc.cc +96 -34
  476. data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +15 -5
  477. data/third_party/boringssl-with-bazel/src/ssl/tls_record.cc +3 -23
  478. metadata +113 -87
  479. data/src/core/ext/transport/chttp2/transport/max_concurrent_streams_policy.cc +0 -45
  480. data/src/core/ext/transport/chttp2/transport/max_concurrent_streams_policy.h +0 -67
  481. data/src/core/util/android/log.cc +0 -48
  482. data/src/core/util/linux/log.cc +0 -69
  483. data/src/core/util/posix/log.cc +0 -69
  484. data/src/core/util/windows/log.cc +0 -73
  485. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/{aes.c → aes.c.inc} +0 -0
  486. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/{aes_nohw.c → aes_nohw.c.inc} +0 -0
  487. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/{key_wrap.c → key_wrap.c.inc} +0 -0
  488. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/{mode_wrappers.c → mode_wrappers.c.inc} +0 -0
  489. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{add.c → add.c.inc} +0 -0
  490. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/asm/{x86_64-gcc.c → x86_64-gcc.c.inc} +0 -0
  491. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{bn.c → bn.c.inc} +0 -0
  492. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{bytes.c → bytes.c.inc} +0 -0
  493. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{cmp.c → cmp.c.inc} +0 -0
  494. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{ctx.c → ctx.c.inc} +0 -0
  495. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{div_extra.c → div_extra.c.inc} +0 -0
  496. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{exponentiation.c → exponentiation.c.inc} +0 -0
  497. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{gcd.c → gcd.c.inc} +0 -0
  498. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{gcd_extra.c → gcd_extra.c.inc} +0 -0
  499. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{generic.c → generic.c.inc} +0 -0
  500. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{jacobi.c → jacobi.c.inc} +0 -0
  501. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{montgomery.c → montgomery.c.inc} +0 -0
  502. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{montgomery_inv.c → montgomery_inv.c.inc} +0 -0
  503. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{mul.c → mul.c.inc} +0 -0
  504. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{prime.c → prime.c.inc} +0 -0
  505. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{rsaz_exp.c → rsaz_exp.c.inc} +0 -0
  506. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/{shift.c → shift.c.inc} +0 -0
  507. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/{aead.c → aead.c.inc} +0 -0
  508. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/{cipher.c → cipher.c.inc} +0 -0
  509. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/{e_aesccm.c → e_aesccm.c.inc} +0 -0
  510. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cmac/{cmac.c → cmac.c.inc} +0 -0
  511. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/{check.c → check.c.inc} +0 -0
  512. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/{dh.c → dh.c.inc} +0 -0
  513. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/{digest.c → digest.c.inc} +0 -0
  514. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/{digests.c → digests.c.inc} +0 -0
  515. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digestsign/{digestsign.c → digestsign.c.inc} +0 -0
  516. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/{ec.c → ec.c.inc} +0 -0
  517. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/{ec_montgomery.c → ec_montgomery.c.inc} +0 -0
  518. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/{felem.c → felem.c.inc} +0 -0
  519. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/{oct.c → oct.c.inc} +0 -0
  520. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/{p224-64.c → p224-64.c.inc} +0 -0
  521. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/{p256.c → p256.c.inc} +0 -0
  522. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/{scalar.c → scalar.c.inc} +0 -0
  523. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/{simple.c → simple.c.inc} +0 -0
  524. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/{simple_mul.c → simple_mul.c.inc} +0 -0
  525. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/{util.c → util.c.inc} +0 -0
  526. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/{wnaf.c → wnaf.c.inc} +0 -0
  527. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdh/{ecdh.c → ecdh.c.inc} +0 -0
  528. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hkdf/{hkdf.c → hkdf.c.inc} +0 -0
  529. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hmac/{hmac.c → hmac.c.inc} +0 -0
  530. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md4/{md4.c → md4.c.inc} +0 -0
  531. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md5/{md5.c → md5.c.inc} +0 -0
  532. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/{cbc.c → cbc.c.inc} +0 -0
  533. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/{cfb.c → cfb.c.inc} +0 -0
  534. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/{ctr.c → ctr.c.inc} +0 -0
  535. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/{gcm.c → gcm.c.inc} +0 -0
  536. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/{gcm_nohw.c → gcm_nohw.c.inc} +0 -0
  537. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/{ofb.c → ofb.c.inc} +0 -0
  538. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/{polyval.c → polyval.c.inc} +0 -0
  539. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/{ctrdrbg.c → ctrdrbg.c.inc} +0 -0
  540. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/{blinding.c → blinding.c.inc} +0 -0
  541. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/{rsa.c → rsa.c.inc} +0 -0
  542. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/{fips.c → fips.c.inc} +0 -0
  543. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/{sha1.c → sha1.c.inc} +0 -0
  544. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/{sha256.c → sha256.c.inc} +0 -0
  545. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/{sha512.c → sha512.c.inc} +0 -0
  546. /data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/{kdf.c → kdf.c.inc} +0 -0
  547. /data/third_party/boringssl-with-bazel/src/crypto/{fipsmodule/rand → rand_extra}/getrandom_fillin.h +0 -0
@@ -138,24 +138,21 @@ struct SeqState<Traits, P, F0> {
138
138
  GPR_ATTRIBUTE_ALWAYS_INLINE_FUNCTION Poll<Result> PollOnce() {
139
139
  switch (state) {
140
140
  case State::kState0: {
141
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
142
- VLOG(2).AtLocation(whence.file(), whence.line())
143
- << "seq[" << this << "]: begin poll step 1/2";
144
- }
141
+ GRPC_TRACE_VLOG(promise_primitives, 2)
142
+ .AtLocation(whence.file(), whence.line())
143
+ << "seq[" << this << "]: begin poll step 1/2";
145
144
  auto result = prior.current_promise();
146
145
  PromiseResult0* p = result.value_if_ready();
147
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
148
- VLOG(2).AtLocation(whence.file(), whence.line())
149
- << "seq[" << this << "]: poll step 1/2 gets "
150
- << (p != nullptr
151
- ? (PromiseResultTraits0::IsOk(*p)
152
- ? "ready"
153
- : absl::StrCat(
154
- "early-error:",
155
- PromiseResultTraits0::ErrorString(*p))
156
- .c_str())
157
- : "pending");
158
- }
146
+ GRPC_TRACE_VLOG(promise_primitives, 2)
147
+ .AtLocation(whence.file(), whence.line())
148
+ << "seq[" << this << "]: poll step 1/2 gets "
149
+ << (p != nullptr
150
+ ? (PromiseResultTraits0::IsOk(*p)
151
+ ? "ready"
152
+ : absl::StrCat("early-error:",
153
+ PromiseResultTraits0::ErrorString(*p))
154
+ .c_str())
155
+ : "pending");
159
156
  if (p == nullptr) return Pending{};
160
157
  if (!PromiseResultTraits0::IsOk(*p)) {
161
158
  return PromiseResultTraits0::template ReturnValue<Result>(
@@ -171,16 +168,14 @@ struct SeqState<Traits, P, F0> {
171
168
  ABSL_FALLTHROUGH_INTENDED;
172
169
  default:
173
170
  case State::kState1: {
174
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
175
- VLOG(2).AtLocation(whence.file(), whence.line())
176
- << "seq[" << this << "]: begin poll step 2/2";
177
- }
171
+ GRPC_TRACE_VLOG(promise_primitives, 2)
172
+ .AtLocation(whence.file(), whence.line())
173
+ << "seq[" << this << "]: begin poll step 2/2";
178
174
  auto result = current_promise();
179
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
180
- VLOG(2).AtLocation(whence.file(), whence.line())
181
- << "seq[" << this << "]: poll step 2/2 gets "
182
- << (result.ready() ? "ready" : "pending");
183
- }
175
+ GRPC_TRACE_VLOG(promise_primitives, 2)
176
+ .AtLocation(whence.file(), whence.line())
177
+ << "seq[" << this << "]: poll step 2/2 gets "
178
+ << (result.ready() ? "ready" : "pending");
184
179
  auto* p = result.value_if_ready();
185
180
  if (p == nullptr) return Pending{};
186
181
  return Result(std::move(*p));
@@ -271,24 +266,21 @@ struct SeqState<Traits, P, F0, F1> {
271
266
  GPR_ATTRIBUTE_ALWAYS_INLINE_FUNCTION Poll<Result> PollOnce() {
272
267
  switch (state) {
273
268
  case State::kState0: {
274
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
275
- VLOG(2).AtLocation(whence.file(), whence.line())
276
- << "seq[" << this << "]: begin poll step 1/3";
277
- }
269
+ GRPC_TRACE_VLOG(promise_primitives, 2)
270
+ .AtLocation(whence.file(), whence.line())
271
+ << "seq[" << this << "]: begin poll step 1/3";
278
272
  auto result = prior.prior.current_promise();
279
273
  PromiseResult0* p = result.value_if_ready();
280
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
281
- VLOG(2).AtLocation(whence.file(), whence.line())
282
- << "seq[" << this << "]: poll step 1/3 gets "
283
- << (p != nullptr
284
- ? (PromiseResultTraits0::IsOk(*p)
285
- ? "ready"
286
- : absl::StrCat(
287
- "early-error:",
288
- PromiseResultTraits0::ErrorString(*p))
289
- .c_str())
290
- : "pending");
291
- }
274
+ GRPC_TRACE_VLOG(promise_primitives, 2)
275
+ .AtLocation(whence.file(), whence.line())
276
+ << "seq[" << this << "]: poll step 1/3 gets "
277
+ << (p != nullptr
278
+ ? (PromiseResultTraits0::IsOk(*p)
279
+ ? "ready"
280
+ : absl::StrCat("early-error:",
281
+ PromiseResultTraits0::ErrorString(*p))
282
+ .c_str())
283
+ : "pending");
292
284
  if (p == nullptr) return Pending{};
293
285
  if (!PromiseResultTraits0::IsOk(*p)) {
294
286
  return PromiseResultTraits0::template ReturnValue<Result>(
@@ -303,24 +295,21 @@ struct SeqState<Traits, P, F0, F1> {
303
295
  }
304
296
  ABSL_FALLTHROUGH_INTENDED;
305
297
  case State::kState1: {
306
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
307
- VLOG(2).AtLocation(whence.file(), whence.line())
308
- << "seq[" << this << "]: begin poll step 2/3";
309
- }
298
+ GRPC_TRACE_VLOG(promise_primitives, 2)
299
+ .AtLocation(whence.file(), whence.line())
300
+ << "seq[" << this << "]: begin poll step 2/3";
310
301
  auto result = prior.current_promise();
311
302
  PromiseResult1* p = result.value_if_ready();
312
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
313
- VLOG(2).AtLocation(whence.file(), whence.line())
314
- << "seq[" << this << "]: poll step 2/3 gets "
315
- << (p != nullptr
316
- ? (PromiseResultTraits1::IsOk(*p)
317
- ? "ready"
318
- : absl::StrCat(
319
- "early-error:",
320
- PromiseResultTraits1::ErrorString(*p))
321
- .c_str())
322
- : "pending");
323
- }
303
+ GRPC_TRACE_VLOG(promise_primitives, 2)
304
+ .AtLocation(whence.file(), whence.line())
305
+ << "seq[" << this << "]: poll step 2/3 gets "
306
+ << (p != nullptr
307
+ ? (PromiseResultTraits1::IsOk(*p)
308
+ ? "ready"
309
+ : absl::StrCat("early-error:",
310
+ PromiseResultTraits1::ErrorString(*p))
311
+ .c_str())
312
+ : "pending");
324
313
  if (p == nullptr) return Pending{};
325
314
  if (!PromiseResultTraits1::IsOk(*p)) {
326
315
  return PromiseResultTraits1::template ReturnValue<Result>(
@@ -336,16 +325,14 @@ struct SeqState<Traits, P, F0, F1> {
336
325
  ABSL_FALLTHROUGH_INTENDED;
337
326
  default:
338
327
  case State::kState2: {
339
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
340
- VLOG(2).AtLocation(whence.file(), whence.line())
341
- << "seq[" << this << "]: begin poll step 3/3";
342
- }
328
+ GRPC_TRACE_VLOG(promise_primitives, 2)
329
+ .AtLocation(whence.file(), whence.line())
330
+ << "seq[" << this << "]: begin poll step 3/3";
343
331
  auto result = current_promise();
344
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
345
- VLOG(2).AtLocation(whence.file(), whence.line())
346
- << "seq[" << this << "]: poll step 3/3 gets "
347
- << (result.ready() ? "ready" : "pending");
348
- }
332
+ GRPC_TRACE_VLOG(promise_primitives, 2)
333
+ .AtLocation(whence.file(), whence.line())
334
+ << "seq[" << this << "]: poll step 3/3 gets "
335
+ << (result.ready() ? "ready" : "pending");
349
336
  auto* p = result.value_if_ready();
350
337
  if (p == nullptr) return Pending{};
351
338
  return Result(std::move(*p));
@@ -460,24 +447,21 @@ struct SeqState<Traits, P, F0, F1, F2> {
460
447
  GPR_ATTRIBUTE_ALWAYS_INLINE_FUNCTION Poll<Result> PollOnce() {
461
448
  switch (state) {
462
449
  case State::kState0: {
463
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
464
- VLOG(2).AtLocation(whence.file(), whence.line())
465
- << "seq[" << this << "]: begin poll step 1/4";
466
- }
450
+ GRPC_TRACE_VLOG(promise_primitives, 2)
451
+ .AtLocation(whence.file(), whence.line())
452
+ << "seq[" << this << "]: begin poll step 1/4";
467
453
  auto result = prior.prior.prior.current_promise();
468
454
  PromiseResult0* p = result.value_if_ready();
469
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
470
- VLOG(2).AtLocation(whence.file(), whence.line())
471
- << "seq[" << this << "]: poll step 1/4 gets "
472
- << (p != nullptr
473
- ? (PromiseResultTraits0::IsOk(*p)
474
- ? "ready"
475
- : absl::StrCat(
476
- "early-error:",
477
- PromiseResultTraits0::ErrorString(*p))
478
- .c_str())
479
- : "pending");
480
- }
455
+ GRPC_TRACE_VLOG(promise_primitives, 2)
456
+ .AtLocation(whence.file(), whence.line())
457
+ << "seq[" << this << "]: poll step 1/4 gets "
458
+ << (p != nullptr
459
+ ? (PromiseResultTraits0::IsOk(*p)
460
+ ? "ready"
461
+ : absl::StrCat("early-error:",
462
+ PromiseResultTraits0::ErrorString(*p))
463
+ .c_str())
464
+ : "pending");
481
465
  if (p == nullptr) return Pending{};
482
466
  if (!PromiseResultTraits0::IsOk(*p)) {
483
467
  return PromiseResultTraits0::template ReturnValue<Result>(
@@ -492,24 +476,21 @@ struct SeqState<Traits, P, F0, F1, F2> {
492
476
  }
493
477
  ABSL_FALLTHROUGH_INTENDED;
494
478
  case State::kState1: {
495
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
496
- VLOG(2).AtLocation(whence.file(), whence.line())
497
- << "seq[" << this << "]: begin poll step 2/4";
498
- }
479
+ GRPC_TRACE_VLOG(promise_primitives, 2)
480
+ .AtLocation(whence.file(), whence.line())
481
+ << "seq[" << this << "]: begin poll step 2/4";
499
482
  auto result = prior.prior.current_promise();
500
483
  PromiseResult1* p = result.value_if_ready();
501
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
502
- VLOG(2).AtLocation(whence.file(), whence.line())
503
- << "seq[" << this << "]: poll step 2/4 gets "
504
- << (p != nullptr
505
- ? (PromiseResultTraits1::IsOk(*p)
506
- ? "ready"
507
- : absl::StrCat(
508
- "early-error:",
509
- PromiseResultTraits1::ErrorString(*p))
510
- .c_str())
511
- : "pending");
512
- }
484
+ GRPC_TRACE_VLOG(promise_primitives, 2)
485
+ .AtLocation(whence.file(), whence.line())
486
+ << "seq[" << this << "]: poll step 2/4 gets "
487
+ << (p != nullptr
488
+ ? (PromiseResultTraits1::IsOk(*p)
489
+ ? "ready"
490
+ : absl::StrCat("early-error:",
491
+ PromiseResultTraits1::ErrorString(*p))
492
+ .c_str())
493
+ : "pending");
513
494
  if (p == nullptr) return Pending{};
514
495
  if (!PromiseResultTraits1::IsOk(*p)) {
515
496
  return PromiseResultTraits1::template ReturnValue<Result>(
@@ -524,24 +505,21 @@ struct SeqState<Traits, P, F0, F1, F2> {
524
505
  }
525
506
  ABSL_FALLTHROUGH_INTENDED;
526
507
  case State::kState2: {
527
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
528
- VLOG(2).AtLocation(whence.file(), whence.line())
529
- << "seq[" << this << "]: begin poll step 3/4";
530
- }
508
+ GRPC_TRACE_VLOG(promise_primitives, 2)
509
+ .AtLocation(whence.file(), whence.line())
510
+ << "seq[" << this << "]: begin poll step 3/4";
531
511
  auto result = prior.current_promise();
532
512
  PromiseResult2* p = result.value_if_ready();
533
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
534
- VLOG(2).AtLocation(whence.file(), whence.line())
535
- << "seq[" << this << "]: poll step 3/4 gets "
536
- << (p != nullptr
537
- ? (PromiseResultTraits2::IsOk(*p)
538
- ? "ready"
539
- : absl::StrCat(
540
- "early-error:",
541
- PromiseResultTraits2::ErrorString(*p))
542
- .c_str())
543
- : "pending");
544
- }
513
+ GRPC_TRACE_VLOG(promise_primitives, 2)
514
+ .AtLocation(whence.file(), whence.line())
515
+ << "seq[" << this << "]: poll step 3/4 gets "
516
+ << (p != nullptr
517
+ ? (PromiseResultTraits2::IsOk(*p)
518
+ ? "ready"
519
+ : absl::StrCat("early-error:",
520
+ PromiseResultTraits2::ErrorString(*p))
521
+ .c_str())
522
+ : "pending");
545
523
  if (p == nullptr) return Pending{};
546
524
  if (!PromiseResultTraits2::IsOk(*p)) {
547
525
  return PromiseResultTraits2::template ReturnValue<Result>(
@@ -557,16 +535,14 @@ struct SeqState<Traits, P, F0, F1, F2> {
557
535
  ABSL_FALLTHROUGH_INTENDED;
558
536
  default:
559
537
  case State::kState3: {
560
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
561
- VLOG(2).AtLocation(whence.file(), whence.line())
562
- << "seq[" << this << "]: begin poll step 4/4";
563
- }
538
+ GRPC_TRACE_VLOG(promise_primitives, 2)
539
+ .AtLocation(whence.file(), whence.line())
540
+ << "seq[" << this << "]: begin poll step 4/4";
564
541
  auto result = current_promise();
565
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
566
- VLOG(2).AtLocation(whence.file(), whence.line())
567
- << "seq[" << this << "]: poll step 4/4 gets "
568
- << (result.ready() ? "ready" : "pending");
569
- }
542
+ GRPC_TRACE_VLOG(promise_primitives, 2)
543
+ .AtLocation(whence.file(), whence.line())
544
+ << "seq[" << this << "]: poll step 4/4 gets "
545
+ << (result.ready() ? "ready" : "pending");
570
546
  auto* p = result.value_if_ready();
571
547
  if (p == nullptr) return Pending{};
572
548
  return Result(std::move(*p));
@@ -703,24 +679,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3> {
703
679
  GPR_ATTRIBUTE_ALWAYS_INLINE_FUNCTION Poll<Result> PollOnce() {
704
680
  switch (state) {
705
681
  case State::kState0: {
706
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
707
- VLOG(2).AtLocation(whence.file(), whence.line())
708
- << "seq[" << this << "]: begin poll step 1/5";
709
- }
682
+ GRPC_TRACE_VLOG(promise_primitives, 2)
683
+ .AtLocation(whence.file(), whence.line())
684
+ << "seq[" << this << "]: begin poll step 1/5";
710
685
  auto result = prior.prior.prior.prior.current_promise();
711
686
  PromiseResult0* p = result.value_if_ready();
712
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
713
- VLOG(2).AtLocation(whence.file(), whence.line())
714
- << "seq[" << this << "]: poll step 1/5 gets "
715
- << (p != nullptr
716
- ? (PromiseResultTraits0::IsOk(*p)
717
- ? "ready"
718
- : absl::StrCat(
719
- "early-error:",
720
- PromiseResultTraits0::ErrorString(*p))
721
- .c_str())
722
- : "pending");
723
- }
687
+ GRPC_TRACE_VLOG(promise_primitives, 2)
688
+ .AtLocation(whence.file(), whence.line())
689
+ << "seq[" << this << "]: poll step 1/5 gets "
690
+ << (p != nullptr
691
+ ? (PromiseResultTraits0::IsOk(*p)
692
+ ? "ready"
693
+ : absl::StrCat("early-error:",
694
+ PromiseResultTraits0::ErrorString(*p))
695
+ .c_str())
696
+ : "pending");
724
697
  if (p == nullptr) return Pending{};
725
698
  if (!PromiseResultTraits0::IsOk(*p)) {
726
699
  return PromiseResultTraits0::template ReturnValue<Result>(
@@ -735,24 +708,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3> {
735
708
  }
736
709
  ABSL_FALLTHROUGH_INTENDED;
737
710
  case State::kState1: {
738
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
739
- VLOG(2).AtLocation(whence.file(), whence.line())
740
- << "seq[" << this << "]: begin poll step 2/5";
741
- }
711
+ GRPC_TRACE_VLOG(promise_primitives, 2)
712
+ .AtLocation(whence.file(), whence.line())
713
+ << "seq[" << this << "]: begin poll step 2/5";
742
714
  auto result = prior.prior.prior.current_promise();
743
715
  PromiseResult1* p = result.value_if_ready();
744
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
745
- VLOG(2).AtLocation(whence.file(), whence.line())
746
- << "seq[" << this << "]: poll step 2/5 gets "
747
- << (p != nullptr
748
- ? (PromiseResultTraits1::IsOk(*p)
749
- ? "ready"
750
- : absl::StrCat(
751
- "early-error:",
752
- PromiseResultTraits1::ErrorString(*p))
753
- .c_str())
754
- : "pending");
755
- }
716
+ GRPC_TRACE_VLOG(promise_primitives, 2)
717
+ .AtLocation(whence.file(), whence.line())
718
+ << "seq[" << this << "]: poll step 2/5 gets "
719
+ << (p != nullptr
720
+ ? (PromiseResultTraits1::IsOk(*p)
721
+ ? "ready"
722
+ : absl::StrCat("early-error:",
723
+ PromiseResultTraits1::ErrorString(*p))
724
+ .c_str())
725
+ : "pending");
756
726
  if (p == nullptr) return Pending{};
757
727
  if (!PromiseResultTraits1::IsOk(*p)) {
758
728
  return PromiseResultTraits1::template ReturnValue<Result>(
@@ -767,24 +737,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3> {
767
737
  }
768
738
  ABSL_FALLTHROUGH_INTENDED;
769
739
  case State::kState2: {
770
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
771
- VLOG(2).AtLocation(whence.file(), whence.line())
772
- << "seq[" << this << "]: begin poll step 3/5";
773
- }
740
+ GRPC_TRACE_VLOG(promise_primitives, 2)
741
+ .AtLocation(whence.file(), whence.line())
742
+ << "seq[" << this << "]: begin poll step 3/5";
774
743
  auto result = prior.prior.current_promise();
775
744
  PromiseResult2* p = result.value_if_ready();
776
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
777
- VLOG(2).AtLocation(whence.file(), whence.line())
778
- << "seq[" << this << "]: poll step 3/5 gets "
779
- << (p != nullptr
780
- ? (PromiseResultTraits2::IsOk(*p)
781
- ? "ready"
782
- : absl::StrCat(
783
- "early-error:",
784
- PromiseResultTraits2::ErrorString(*p))
785
- .c_str())
786
- : "pending");
787
- }
745
+ GRPC_TRACE_VLOG(promise_primitives, 2)
746
+ .AtLocation(whence.file(), whence.line())
747
+ << "seq[" << this << "]: poll step 3/5 gets "
748
+ << (p != nullptr
749
+ ? (PromiseResultTraits2::IsOk(*p)
750
+ ? "ready"
751
+ : absl::StrCat("early-error:",
752
+ PromiseResultTraits2::ErrorString(*p))
753
+ .c_str())
754
+ : "pending");
788
755
  if (p == nullptr) return Pending{};
789
756
  if (!PromiseResultTraits2::IsOk(*p)) {
790
757
  return PromiseResultTraits2::template ReturnValue<Result>(
@@ -799,24 +766,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3> {
799
766
  }
800
767
  ABSL_FALLTHROUGH_INTENDED;
801
768
  case State::kState3: {
802
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
803
- VLOG(2).AtLocation(whence.file(), whence.line())
804
- << "seq[" << this << "]: begin poll step 4/5";
805
- }
769
+ GRPC_TRACE_VLOG(promise_primitives, 2)
770
+ .AtLocation(whence.file(), whence.line())
771
+ << "seq[" << this << "]: begin poll step 4/5";
806
772
  auto result = prior.current_promise();
807
773
  PromiseResult3* p = result.value_if_ready();
808
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
809
- VLOG(2).AtLocation(whence.file(), whence.line())
810
- << "seq[" << this << "]: poll step 4/5 gets "
811
- << (p != nullptr
812
- ? (PromiseResultTraits3::IsOk(*p)
813
- ? "ready"
814
- : absl::StrCat(
815
- "early-error:",
816
- PromiseResultTraits3::ErrorString(*p))
817
- .c_str())
818
- : "pending");
819
- }
774
+ GRPC_TRACE_VLOG(promise_primitives, 2)
775
+ .AtLocation(whence.file(), whence.line())
776
+ << "seq[" << this << "]: poll step 4/5 gets "
777
+ << (p != nullptr
778
+ ? (PromiseResultTraits3::IsOk(*p)
779
+ ? "ready"
780
+ : absl::StrCat("early-error:",
781
+ PromiseResultTraits3::ErrorString(*p))
782
+ .c_str())
783
+ : "pending");
820
784
  if (p == nullptr) return Pending{};
821
785
  if (!PromiseResultTraits3::IsOk(*p)) {
822
786
  return PromiseResultTraits3::template ReturnValue<Result>(
@@ -832,16 +796,14 @@ struct SeqState<Traits, P, F0, F1, F2, F3> {
832
796
  ABSL_FALLTHROUGH_INTENDED;
833
797
  default:
834
798
  case State::kState4: {
835
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
836
- VLOG(2).AtLocation(whence.file(), whence.line())
837
- << "seq[" << this << "]: begin poll step 5/5";
838
- }
799
+ GRPC_TRACE_VLOG(promise_primitives, 2)
800
+ .AtLocation(whence.file(), whence.line())
801
+ << "seq[" << this << "]: begin poll step 5/5";
839
802
  auto result = current_promise();
840
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
841
- VLOG(2).AtLocation(whence.file(), whence.line())
842
- << "seq[" << this << "]: poll step 5/5 gets "
843
- << (result.ready() ? "ready" : "pending");
844
- }
803
+ GRPC_TRACE_VLOG(promise_primitives, 2)
804
+ .AtLocation(whence.file(), whence.line())
805
+ << "seq[" << this << "]: poll step 5/5 gets "
806
+ << (result.ready() ? "ready" : "pending");
845
807
  auto* p = result.value_if_ready();
846
808
  if (p == nullptr) return Pending{};
847
809
  return Result(std::move(*p));
@@ -1009,24 +971,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4> {
1009
971
  GPR_ATTRIBUTE_ALWAYS_INLINE_FUNCTION Poll<Result> PollOnce() {
1010
972
  switch (state) {
1011
973
  case State::kState0: {
1012
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1013
- VLOG(2).AtLocation(whence.file(), whence.line())
1014
- << "seq[" << this << "]: begin poll step 1/6";
1015
- }
974
+ GRPC_TRACE_VLOG(promise_primitives, 2)
975
+ .AtLocation(whence.file(), whence.line())
976
+ << "seq[" << this << "]: begin poll step 1/6";
1016
977
  auto result = prior.prior.prior.prior.prior.current_promise();
1017
978
  PromiseResult0* p = result.value_if_ready();
1018
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1019
- VLOG(2).AtLocation(whence.file(), whence.line())
1020
- << "seq[" << this << "]: poll step 1/6 gets "
1021
- << (p != nullptr
1022
- ? (PromiseResultTraits0::IsOk(*p)
1023
- ? "ready"
1024
- : absl::StrCat(
1025
- "early-error:",
1026
- PromiseResultTraits0::ErrorString(*p))
1027
- .c_str())
1028
- : "pending");
1029
- }
979
+ GRPC_TRACE_VLOG(promise_primitives, 2)
980
+ .AtLocation(whence.file(), whence.line())
981
+ << "seq[" << this << "]: poll step 1/6 gets "
982
+ << (p != nullptr
983
+ ? (PromiseResultTraits0::IsOk(*p)
984
+ ? "ready"
985
+ : absl::StrCat("early-error:",
986
+ PromiseResultTraits0::ErrorString(*p))
987
+ .c_str())
988
+ : "pending");
1030
989
  if (p == nullptr) return Pending{};
1031
990
  if (!PromiseResultTraits0::IsOk(*p)) {
1032
991
  return PromiseResultTraits0::template ReturnValue<Result>(
@@ -1042,24 +1001,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4> {
1042
1001
  }
1043
1002
  ABSL_FALLTHROUGH_INTENDED;
1044
1003
  case State::kState1: {
1045
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1046
- VLOG(2).AtLocation(whence.file(), whence.line())
1047
- << "seq[" << this << "]: begin poll step 2/6";
1048
- }
1004
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1005
+ .AtLocation(whence.file(), whence.line())
1006
+ << "seq[" << this << "]: begin poll step 2/6";
1049
1007
  auto result = prior.prior.prior.prior.current_promise();
1050
1008
  PromiseResult1* p = result.value_if_ready();
1051
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1052
- VLOG(2).AtLocation(whence.file(), whence.line())
1053
- << "seq[" << this << "]: poll step 2/6 gets "
1054
- << (p != nullptr
1055
- ? (PromiseResultTraits1::IsOk(*p)
1056
- ? "ready"
1057
- : absl::StrCat(
1058
- "early-error:",
1059
- PromiseResultTraits1::ErrorString(*p))
1060
- .c_str())
1061
- : "pending");
1062
- }
1009
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1010
+ .AtLocation(whence.file(), whence.line())
1011
+ << "seq[" << this << "]: poll step 2/6 gets "
1012
+ << (p != nullptr
1013
+ ? (PromiseResultTraits1::IsOk(*p)
1014
+ ? "ready"
1015
+ : absl::StrCat("early-error:",
1016
+ PromiseResultTraits1::ErrorString(*p))
1017
+ .c_str())
1018
+ : "pending");
1063
1019
  if (p == nullptr) return Pending{};
1064
1020
  if (!PromiseResultTraits1::IsOk(*p)) {
1065
1021
  return PromiseResultTraits1::template ReturnValue<Result>(
@@ -1074,24 +1030,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4> {
1074
1030
  }
1075
1031
  ABSL_FALLTHROUGH_INTENDED;
1076
1032
  case State::kState2: {
1077
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1078
- VLOG(2).AtLocation(whence.file(), whence.line())
1079
- << "seq[" << this << "]: begin poll step 3/6";
1080
- }
1033
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1034
+ .AtLocation(whence.file(), whence.line())
1035
+ << "seq[" << this << "]: begin poll step 3/6";
1081
1036
  auto result = prior.prior.prior.current_promise();
1082
1037
  PromiseResult2* p = result.value_if_ready();
1083
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1084
- VLOG(2).AtLocation(whence.file(), whence.line())
1085
- << "seq[" << this << "]: poll step 3/6 gets "
1086
- << (p != nullptr
1087
- ? (PromiseResultTraits2::IsOk(*p)
1088
- ? "ready"
1089
- : absl::StrCat(
1090
- "early-error:",
1091
- PromiseResultTraits2::ErrorString(*p))
1092
- .c_str())
1093
- : "pending");
1094
- }
1038
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1039
+ .AtLocation(whence.file(), whence.line())
1040
+ << "seq[" << this << "]: poll step 3/6 gets "
1041
+ << (p != nullptr
1042
+ ? (PromiseResultTraits2::IsOk(*p)
1043
+ ? "ready"
1044
+ : absl::StrCat("early-error:",
1045
+ PromiseResultTraits2::ErrorString(*p))
1046
+ .c_str())
1047
+ : "pending");
1095
1048
  if (p == nullptr) return Pending{};
1096
1049
  if (!PromiseResultTraits2::IsOk(*p)) {
1097
1050
  return PromiseResultTraits2::template ReturnValue<Result>(
@@ -1106,24 +1059,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4> {
1106
1059
  }
1107
1060
  ABSL_FALLTHROUGH_INTENDED;
1108
1061
  case State::kState3: {
1109
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1110
- VLOG(2).AtLocation(whence.file(), whence.line())
1111
- << "seq[" << this << "]: begin poll step 4/6";
1112
- }
1062
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1063
+ .AtLocation(whence.file(), whence.line())
1064
+ << "seq[" << this << "]: begin poll step 4/6";
1113
1065
  auto result = prior.prior.current_promise();
1114
1066
  PromiseResult3* p = result.value_if_ready();
1115
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1116
- VLOG(2).AtLocation(whence.file(), whence.line())
1117
- << "seq[" << this << "]: poll step 4/6 gets "
1118
- << (p != nullptr
1119
- ? (PromiseResultTraits3::IsOk(*p)
1120
- ? "ready"
1121
- : absl::StrCat(
1122
- "early-error:",
1123
- PromiseResultTraits3::ErrorString(*p))
1124
- .c_str())
1125
- : "pending");
1126
- }
1067
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1068
+ .AtLocation(whence.file(), whence.line())
1069
+ << "seq[" << this << "]: poll step 4/6 gets "
1070
+ << (p != nullptr
1071
+ ? (PromiseResultTraits3::IsOk(*p)
1072
+ ? "ready"
1073
+ : absl::StrCat("early-error:",
1074
+ PromiseResultTraits3::ErrorString(*p))
1075
+ .c_str())
1076
+ : "pending");
1127
1077
  if (p == nullptr) return Pending{};
1128
1078
  if (!PromiseResultTraits3::IsOk(*p)) {
1129
1079
  return PromiseResultTraits3::template ReturnValue<Result>(
@@ -1138,24 +1088,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4> {
1138
1088
  }
1139
1089
  ABSL_FALLTHROUGH_INTENDED;
1140
1090
  case State::kState4: {
1141
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1142
- VLOG(2).AtLocation(whence.file(), whence.line())
1143
- << "seq[" << this << "]: begin poll step 5/6";
1144
- }
1091
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1092
+ .AtLocation(whence.file(), whence.line())
1093
+ << "seq[" << this << "]: begin poll step 5/6";
1145
1094
  auto result = prior.current_promise();
1146
1095
  PromiseResult4* p = result.value_if_ready();
1147
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1148
- VLOG(2).AtLocation(whence.file(), whence.line())
1149
- << "seq[" << this << "]: poll step 5/6 gets "
1150
- << (p != nullptr
1151
- ? (PromiseResultTraits4::IsOk(*p)
1152
- ? "ready"
1153
- : absl::StrCat(
1154
- "early-error:",
1155
- PromiseResultTraits4::ErrorString(*p))
1156
- .c_str())
1157
- : "pending");
1158
- }
1096
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1097
+ .AtLocation(whence.file(), whence.line())
1098
+ << "seq[" << this << "]: poll step 5/6 gets "
1099
+ << (p != nullptr
1100
+ ? (PromiseResultTraits4::IsOk(*p)
1101
+ ? "ready"
1102
+ : absl::StrCat("early-error:",
1103
+ PromiseResultTraits4::ErrorString(*p))
1104
+ .c_str())
1105
+ : "pending");
1159
1106
  if (p == nullptr) return Pending{};
1160
1107
  if (!PromiseResultTraits4::IsOk(*p)) {
1161
1108
  return PromiseResultTraits4::template ReturnValue<Result>(
@@ -1171,16 +1118,14 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4> {
1171
1118
  ABSL_FALLTHROUGH_INTENDED;
1172
1119
  default:
1173
1120
  case State::kState5: {
1174
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1175
- VLOG(2).AtLocation(whence.file(), whence.line())
1176
- << "seq[" << this << "]: begin poll step 6/6";
1177
- }
1121
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1122
+ .AtLocation(whence.file(), whence.line())
1123
+ << "seq[" << this << "]: begin poll step 6/6";
1178
1124
  auto result = current_promise();
1179
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1180
- VLOG(2).AtLocation(whence.file(), whence.line())
1181
- << "seq[" << this << "]: poll step 6/6 gets "
1182
- << (result.ready() ? "ready" : "pending");
1183
- }
1125
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1126
+ .AtLocation(whence.file(), whence.line())
1127
+ << "seq[" << this << "]: poll step 6/6 gets "
1128
+ << (result.ready() ? "ready" : "pending");
1184
1129
  auto* p = result.value_if_ready();
1185
1130
  if (p == nullptr) return Pending{};
1186
1131
  return Result(std::move(*p));
@@ -1375,24 +1320,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5> {
1375
1320
  GPR_ATTRIBUTE_ALWAYS_INLINE_FUNCTION Poll<Result> PollOnce() {
1376
1321
  switch (state) {
1377
1322
  case State::kState0: {
1378
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1379
- VLOG(2).AtLocation(whence.file(), whence.line())
1380
- << "seq[" << this << "]: begin poll step 1/7";
1381
- }
1323
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1324
+ .AtLocation(whence.file(), whence.line())
1325
+ << "seq[" << this << "]: begin poll step 1/7";
1382
1326
  auto result = prior.prior.prior.prior.prior.prior.current_promise();
1383
1327
  PromiseResult0* p = result.value_if_ready();
1384
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1385
- VLOG(2).AtLocation(whence.file(), whence.line())
1386
- << "seq[" << this << "]: poll step 1/7 gets "
1387
- << (p != nullptr
1388
- ? (PromiseResultTraits0::IsOk(*p)
1389
- ? "ready"
1390
- : absl::StrCat(
1391
- "early-error:",
1392
- PromiseResultTraits0::ErrorString(*p))
1393
- .c_str())
1394
- : "pending");
1395
- }
1328
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1329
+ .AtLocation(whence.file(), whence.line())
1330
+ << "seq[" << this << "]: poll step 1/7 gets "
1331
+ << (p != nullptr
1332
+ ? (PromiseResultTraits0::IsOk(*p)
1333
+ ? "ready"
1334
+ : absl::StrCat("early-error:",
1335
+ PromiseResultTraits0::ErrorString(*p))
1336
+ .c_str())
1337
+ : "pending");
1396
1338
  if (p == nullptr) return Pending{};
1397
1339
  if (!PromiseResultTraits0::IsOk(*p)) {
1398
1340
  return PromiseResultTraits0::template ReturnValue<Result>(
@@ -1408,24 +1350,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5> {
1408
1350
  }
1409
1351
  ABSL_FALLTHROUGH_INTENDED;
1410
1352
  case State::kState1: {
1411
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1412
- VLOG(2).AtLocation(whence.file(), whence.line())
1413
- << "seq[" << this << "]: begin poll step 2/7";
1414
- }
1353
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1354
+ .AtLocation(whence.file(), whence.line())
1355
+ << "seq[" << this << "]: begin poll step 2/7";
1415
1356
  auto result = prior.prior.prior.prior.prior.current_promise();
1416
1357
  PromiseResult1* p = result.value_if_ready();
1417
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1418
- VLOG(2).AtLocation(whence.file(), whence.line())
1419
- << "seq[" << this << "]: poll step 2/7 gets "
1420
- << (p != nullptr
1421
- ? (PromiseResultTraits1::IsOk(*p)
1422
- ? "ready"
1423
- : absl::StrCat(
1424
- "early-error:",
1425
- PromiseResultTraits1::ErrorString(*p))
1426
- .c_str())
1427
- : "pending");
1428
- }
1358
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1359
+ .AtLocation(whence.file(), whence.line())
1360
+ << "seq[" << this << "]: poll step 2/7 gets "
1361
+ << (p != nullptr
1362
+ ? (PromiseResultTraits1::IsOk(*p)
1363
+ ? "ready"
1364
+ : absl::StrCat("early-error:",
1365
+ PromiseResultTraits1::ErrorString(*p))
1366
+ .c_str())
1367
+ : "pending");
1429
1368
  if (p == nullptr) return Pending{};
1430
1369
  if (!PromiseResultTraits1::IsOk(*p)) {
1431
1370
  return PromiseResultTraits1::template ReturnValue<Result>(
@@ -1441,24 +1380,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5> {
1441
1380
  }
1442
1381
  ABSL_FALLTHROUGH_INTENDED;
1443
1382
  case State::kState2: {
1444
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1445
- VLOG(2).AtLocation(whence.file(), whence.line())
1446
- << "seq[" << this << "]: begin poll step 3/7";
1447
- }
1383
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1384
+ .AtLocation(whence.file(), whence.line())
1385
+ << "seq[" << this << "]: begin poll step 3/7";
1448
1386
  auto result = prior.prior.prior.prior.current_promise();
1449
1387
  PromiseResult2* p = result.value_if_ready();
1450
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1451
- VLOG(2).AtLocation(whence.file(), whence.line())
1452
- << "seq[" << this << "]: poll step 3/7 gets "
1453
- << (p != nullptr
1454
- ? (PromiseResultTraits2::IsOk(*p)
1455
- ? "ready"
1456
- : absl::StrCat(
1457
- "early-error:",
1458
- PromiseResultTraits2::ErrorString(*p))
1459
- .c_str())
1460
- : "pending");
1461
- }
1388
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1389
+ .AtLocation(whence.file(), whence.line())
1390
+ << "seq[" << this << "]: poll step 3/7 gets "
1391
+ << (p != nullptr
1392
+ ? (PromiseResultTraits2::IsOk(*p)
1393
+ ? "ready"
1394
+ : absl::StrCat("early-error:",
1395
+ PromiseResultTraits2::ErrorString(*p))
1396
+ .c_str())
1397
+ : "pending");
1462
1398
  if (p == nullptr) return Pending{};
1463
1399
  if (!PromiseResultTraits2::IsOk(*p)) {
1464
1400
  return PromiseResultTraits2::template ReturnValue<Result>(
@@ -1473,24 +1409,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5> {
1473
1409
  }
1474
1410
  ABSL_FALLTHROUGH_INTENDED;
1475
1411
  case State::kState3: {
1476
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1477
- VLOG(2).AtLocation(whence.file(), whence.line())
1478
- << "seq[" << this << "]: begin poll step 4/7";
1479
- }
1412
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1413
+ .AtLocation(whence.file(), whence.line())
1414
+ << "seq[" << this << "]: begin poll step 4/7";
1480
1415
  auto result = prior.prior.prior.current_promise();
1481
1416
  PromiseResult3* p = result.value_if_ready();
1482
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1483
- VLOG(2).AtLocation(whence.file(), whence.line())
1484
- << "seq[" << this << "]: poll step 4/7 gets "
1485
- << (p != nullptr
1486
- ? (PromiseResultTraits3::IsOk(*p)
1487
- ? "ready"
1488
- : absl::StrCat(
1489
- "early-error:",
1490
- PromiseResultTraits3::ErrorString(*p))
1491
- .c_str())
1492
- : "pending");
1493
- }
1417
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1418
+ .AtLocation(whence.file(), whence.line())
1419
+ << "seq[" << this << "]: poll step 4/7 gets "
1420
+ << (p != nullptr
1421
+ ? (PromiseResultTraits3::IsOk(*p)
1422
+ ? "ready"
1423
+ : absl::StrCat("early-error:",
1424
+ PromiseResultTraits3::ErrorString(*p))
1425
+ .c_str())
1426
+ : "pending");
1494
1427
  if (p == nullptr) return Pending{};
1495
1428
  if (!PromiseResultTraits3::IsOk(*p)) {
1496
1429
  return PromiseResultTraits3::template ReturnValue<Result>(
@@ -1505,24 +1438,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5> {
1505
1438
  }
1506
1439
  ABSL_FALLTHROUGH_INTENDED;
1507
1440
  case State::kState4: {
1508
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1509
- VLOG(2).AtLocation(whence.file(), whence.line())
1510
- << "seq[" << this << "]: begin poll step 5/7";
1511
- }
1441
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1442
+ .AtLocation(whence.file(), whence.line())
1443
+ << "seq[" << this << "]: begin poll step 5/7";
1512
1444
  auto result = prior.prior.current_promise();
1513
1445
  PromiseResult4* p = result.value_if_ready();
1514
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1515
- VLOG(2).AtLocation(whence.file(), whence.line())
1516
- << "seq[" << this << "]: poll step 5/7 gets "
1517
- << (p != nullptr
1518
- ? (PromiseResultTraits4::IsOk(*p)
1519
- ? "ready"
1520
- : absl::StrCat(
1521
- "early-error:",
1522
- PromiseResultTraits4::ErrorString(*p))
1523
- .c_str())
1524
- : "pending");
1525
- }
1446
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1447
+ .AtLocation(whence.file(), whence.line())
1448
+ << "seq[" << this << "]: poll step 5/7 gets "
1449
+ << (p != nullptr
1450
+ ? (PromiseResultTraits4::IsOk(*p)
1451
+ ? "ready"
1452
+ : absl::StrCat("early-error:",
1453
+ PromiseResultTraits4::ErrorString(*p))
1454
+ .c_str())
1455
+ : "pending");
1526
1456
  if (p == nullptr) return Pending{};
1527
1457
  if (!PromiseResultTraits4::IsOk(*p)) {
1528
1458
  return PromiseResultTraits4::template ReturnValue<Result>(
@@ -1537,24 +1467,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5> {
1537
1467
  }
1538
1468
  ABSL_FALLTHROUGH_INTENDED;
1539
1469
  case State::kState5: {
1540
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1541
- VLOG(2).AtLocation(whence.file(), whence.line())
1542
- << "seq[" << this << "]: begin poll step 6/7";
1543
- }
1470
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1471
+ .AtLocation(whence.file(), whence.line())
1472
+ << "seq[" << this << "]: begin poll step 6/7";
1544
1473
  auto result = prior.current_promise();
1545
1474
  PromiseResult5* p = result.value_if_ready();
1546
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1547
- VLOG(2).AtLocation(whence.file(), whence.line())
1548
- << "seq[" << this << "]: poll step 6/7 gets "
1549
- << (p != nullptr
1550
- ? (PromiseResultTraits5::IsOk(*p)
1551
- ? "ready"
1552
- : absl::StrCat(
1553
- "early-error:",
1554
- PromiseResultTraits5::ErrorString(*p))
1555
- .c_str())
1556
- : "pending");
1557
- }
1475
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1476
+ .AtLocation(whence.file(), whence.line())
1477
+ << "seq[" << this << "]: poll step 6/7 gets "
1478
+ << (p != nullptr
1479
+ ? (PromiseResultTraits5::IsOk(*p)
1480
+ ? "ready"
1481
+ : absl::StrCat("early-error:",
1482
+ PromiseResultTraits5::ErrorString(*p))
1483
+ .c_str())
1484
+ : "pending");
1558
1485
  if (p == nullptr) return Pending{};
1559
1486
  if (!PromiseResultTraits5::IsOk(*p)) {
1560
1487
  return PromiseResultTraits5::template ReturnValue<Result>(
@@ -1570,16 +1497,14 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5> {
1570
1497
  ABSL_FALLTHROUGH_INTENDED;
1571
1498
  default:
1572
1499
  case State::kState6: {
1573
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1574
- VLOG(2).AtLocation(whence.file(), whence.line())
1575
- << "seq[" << this << "]: begin poll step 7/7";
1576
- }
1500
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1501
+ .AtLocation(whence.file(), whence.line())
1502
+ << "seq[" << this << "]: begin poll step 7/7";
1577
1503
  auto result = current_promise();
1578
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1579
- VLOG(2).AtLocation(whence.file(), whence.line())
1580
- << "seq[" << this << "]: poll step 7/7 gets "
1581
- << (result.ready() ? "ready" : "pending");
1582
- }
1504
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1505
+ .AtLocation(whence.file(), whence.line())
1506
+ << "seq[" << this << "]: poll step 7/7 gets "
1507
+ << (result.ready() ? "ready" : "pending");
1583
1508
  auto* p = result.value_if_ready();
1584
1509
  if (p == nullptr) return Pending{};
1585
1510
  return Result(std::move(*p));
@@ -1802,25 +1727,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6> {
1802
1727
  GPR_ATTRIBUTE_ALWAYS_INLINE_FUNCTION Poll<Result> PollOnce() {
1803
1728
  switch (state) {
1804
1729
  case State::kState0: {
1805
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1806
- VLOG(2).AtLocation(whence.file(), whence.line())
1807
- << "seq[" << this << "]: begin poll step 1/8";
1808
- }
1730
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1731
+ .AtLocation(whence.file(), whence.line())
1732
+ << "seq[" << this << "]: begin poll step 1/8";
1809
1733
  auto result =
1810
1734
  prior.prior.prior.prior.prior.prior.prior.current_promise();
1811
1735
  PromiseResult0* p = result.value_if_ready();
1812
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1813
- VLOG(2).AtLocation(whence.file(), whence.line())
1814
- << "seq[" << this << "]: poll step 1/8 gets "
1815
- << (p != nullptr
1816
- ? (PromiseResultTraits0::IsOk(*p)
1817
- ? "ready"
1818
- : absl::StrCat(
1819
- "early-error:",
1820
- PromiseResultTraits0::ErrorString(*p))
1821
- .c_str())
1822
- : "pending");
1823
- }
1736
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1737
+ .AtLocation(whence.file(), whence.line())
1738
+ << "seq[" << this << "]: poll step 1/8 gets "
1739
+ << (p != nullptr
1740
+ ? (PromiseResultTraits0::IsOk(*p)
1741
+ ? "ready"
1742
+ : absl::StrCat("early-error:",
1743
+ PromiseResultTraits0::ErrorString(*p))
1744
+ .c_str())
1745
+ : "pending");
1824
1746
  if (p == nullptr) return Pending{};
1825
1747
  if (!PromiseResultTraits0::IsOk(*p)) {
1826
1748
  return PromiseResultTraits0::template ReturnValue<Result>(
@@ -1837,24 +1759,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6> {
1837
1759
  }
1838
1760
  ABSL_FALLTHROUGH_INTENDED;
1839
1761
  case State::kState1: {
1840
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1841
- VLOG(2).AtLocation(whence.file(), whence.line())
1842
- << "seq[" << this << "]: begin poll step 2/8";
1843
- }
1762
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1763
+ .AtLocation(whence.file(), whence.line())
1764
+ << "seq[" << this << "]: begin poll step 2/8";
1844
1765
  auto result = prior.prior.prior.prior.prior.prior.current_promise();
1845
1766
  PromiseResult1* p = result.value_if_ready();
1846
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1847
- VLOG(2).AtLocation(whence.file(), whence.line())
1848
- << "seq[" << this << "]: poll step 2/8 gets "
1849
- << (p != nullptr
1850
- ? (PromiseResultTraits1::IsOk(*p)
1851
- ? "ready"
1852
- : absl::StrCat(
1853
- "early-error:",
1854
- PromiseResultTraits1::ErrorString(*p))
1855
- .c_str())
1856
- : "pending");
1857
- }
1767
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1768
+ .AtLocation(whence.file(), whence.line())
1769
+ << "seq[" << this << "]: poll step 2/8 gets "
1770
+ << (p != nullptr
1771
+ ? (PromiseResultTraits1::IsOk(*p)
1772
+ ? "ready"
1773
+ : absl::StrCat("early-error:",
1774
+ PromiseResultTraits1::ErrorString(*p))
1775
+ .c_str())
1776
+ : "pending");
1858
1777
  if (p == nullptr) return Pending{};
1859
1778
  if (!PromiseResultTraits1::IsOk(*p)) {
1860
1779
  return PromiseResultTraits1::template ReturnValue<Result>(
@@ -1870,24 +1789,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6> {
1870
1789
  }
1871
1790
  ABSL_FALLTHROUGH_INTENDED;
1872
1791
  case State::kState2: {
1873
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1874
- VLOG(2).AtLocation(whence.file(), whence.line())
1875
- << "seq[" << this << "]: begin poll step 3/8";
1876
- }
1792
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1793
+ .AtLocation(whence.file(), whence.line())
1794
+ << "seq[" << this << "]: begin poll step 3/8";
1877
1795
  auto result = prior.prior.prior.prior.prior.current_promise();
1878
1796
  PromiseResult2* p = result.value_if_ready();
1879
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1880
- VLOG(2).AtLocation(whence.file(), whence.line())
1881
- << "seq[" << this << "]: poll step 3/8 gets "
1882
- << (p != nullptr
1883
- ? (PromiseResultTraits2::IsOk(*p)
1884
- ? "ready"
1885
- : absl::StrCat(
1886
- "early-error:",
1887
- PromiseResultTraits2::ErrorString(*p))
1888
- .c_str())
1889
- : "pending");
1890
- }
1797
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1798
+ .AtLocation(whence.file(), whence.line())
1799
+ << "seq[" << this << "]: poll step 3/8 gets "
1800
+ << (p != nullptr
1801
+ ? (PromiseResultTraits2::IsOk(*p)
1802
+ ? "ready"
1803
+ : absl::StrCat("early-error:",
1804
+ PromiseResultTraits2::ErrorString(*p))
1805
+ .c_str())
1806
+ : "pending");
1891
1807
  if (p == nullptr) return Pending{};
1892
1808
  if (!PromiseResultTraits2::IsOk(*p)) {
1893
1809
  return PromiseResultTraits2::template ReturnValue<Result>(
@@ -1903,24 +1819,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6> {
1903
1819
  }
1904
1820
  ABSL_FALLTHROUGH_INTENDED;
1905
1821
  case State::kState3: {
1906
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1907
- VLOG(2).AtLocation(whence.file(), whence.line())
1908
- << "seq[" << this << "]: begin poll step 4/8";
1909
- }
1822
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1823
+ .AtLocation(whence.file(), whence.line())
1824
+ << "seq[" << this << "]: begin poll step 4/8";
1910
1825
  auto result = prior.prior.prior.prior.current_promise();
1911
1826
  PromiseResult3* p = result.value_if_ready();
1912
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1913
- VLOG(2).AtLocation(whence.file(), whence.line())
1914
- << "seq[" << this << "]: poll step 4/8 gets "
1915
- << (p != nullptr
1916
- ? (PromiseResultTraits3::IsOk(*p)
1917
- ? "ready"
1918
- : absl::StrCat(
1919
- "early-error:",
1920
- PromiseResultTraits3::ErrorString(*p))
1921
- .c_str())
1922
- : "pending");
1923
- }
1827
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1828
+ .AtLocation(whence.file(), whence.line())
1829
+ << "seq[" << this << "]: poll step 4/8 gets "
1830
+ << (p != nullptr
1831
+ ? (PromiseResultTraits3::IsOk(*p)
1832
+ ? "ready"
1833
+ : absl::StrCat("early-error:",
1834
+ PromiseResultTraits3::ErrorString(*p))
1835
+ .c_str())
1836
+ : "pending");
1924
1837
  if (p == nullptr) return Pending{};
1925
1838
  if (!PromiseResultTraits3::IsOk(*p)) {
1926
1839
  return PromiseResultTraits3::template ReturnValue<Result>(
@@ -1935,24 +1848,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6> {
1935
1848
  }
1936
1849
  ABSL_FALLTHROUGH_INTENDED;
1937
1850
  case State::kState4: {
1938
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1939
- VLOG(2).AtLocation(whence.file(), whence.line())
1940
- << "seq[" << this << "]: begin poll step 5/8";
1941
- }
1851
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1852
+ .AtLocation(whence.file(), whence.line())
1853
+ << "seq[" << this << "]: begin poll step 5/8";
1942
1854
  auto result = prior.prior.prior.current_promise();
1943
1855
  PromiseResult4* p = result.value_if_ready();
1944
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1945
- VLOG(2).AtLocation(whence.file(), whence.line())
1946
- << "seq[" << this << "]: poll step 5/8 gets "
1947
- << (p != nullptr
1948
- ? (PromiseResultTraits4::IsOk(*p)
1949
- ? "ready"
1950
- : absl::StrCat(
1951
- "early-error:",
1952
- PromiseResultTraits4::ErrorString(*p))
1953
- .c_str())
1954
- : "pending");
1955
- }
1856
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1857
+ .AtLocation(whence.file(), whence.line())
1858
+ << "seq[" << this << "]: poll step 5/8 gets "
1859
+ << (p != nullptr
1860
+ ? (PromiseResultTraits4::IsOk(*p)
1861
+ ? "ready"
1862
+ : absl::StrCat("early-error:",
1863
+ PromiseResultTraits4::ErrorString(*p))
1864
+ .c_str())
1865
+ : "pending");
1956
1866
  if (p == nullptr) return Pending{};
1957
1867
  if (!PromiseResultTraits4::IsOk(*p)) {
1958
1868
  return PromiseResultTraits4::template ReturnValue<Result>(
@@ -1967,24 +1877,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6> {
1967
1877
  }
1968
1878
  ABSL_FALLTHROUGH_INTENDED;
1969
1879
  case State::kState5: {
1970
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1971
- VLOG(2).AtLocation(whence.file(), whence.line())
1972
- << "seq[" << this << "]: begin poll step 6/8";
1973
- }
1880
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1881
+ .AtLocation(whence.file(), whence.line())
1882
+ << "seq[" << this << "]: begin poll step 6/8";
1974
1883
  auto result = prior.prior.current_promise();
1975
1884
  PromiseResult5* p = result.value_if_ready();
1976
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
1977
- VLOG(2).AtLocation(whence.file(), whence.line())
1978
- << "seq[" << this << "]: poll step 6/8 gets "
1979
- << (p != nullptr
1980
- ? (PromiseResultTraits5::IsOk(*p)
1981
- ? "ready"
1982
- : absl::StrCat(
1983
- "early-error:",
1984
- PromiseResultTraits5::ErrorString(*p))
1985
- .c_str())
1986
- : "pending");
1987
- }
1885
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1886
+ .AtLocation(whence.file(), whence.line())
1887
+ << "seq[" << this << "]: poll step 6/8 gets "
1888
+ << (p != nullptr
1889
+ ? (PromiseResultTraits5::IsOk(*p)
1890
+ ? "ready"
1891
+ : absl::StrCat("early-error:",
1892
+ PromiseResultTraits5::ErrorString(*p))
1893
+ .c_str())
1894
+ : "pending");
1988
1895
  if (p == nullptr) return Pending{};
1989
1896
  if (!PromiseResultTraits5::IsOk(*p)) {
1990
1897
  return PromiseResultTraits5::template ReturnValue<Result>(
@@ -1999,24 +1906,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6> {
1999
1906
  }
2000
1907
  ABSL_FALLTHROUGH_INTENDED;
2001
1908
  case State::kState6: {
2002
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2003
- VLOG(2).AtLocation(whence.file(), whence.line())
2004
- << "seq[" << this << "]: begin poll step 7/8";
2005
- }
1909
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1910
+ .AtLocation(whence.file(), whence.line())
1911
+ << "seq[" << this << "]: begin poll step 7/8";
2006
1912
  auto result = prior.current_promise();
2007
1913
  PromiseResult6* p = result.value_if_ready();
2008
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2009
- VLOG(2).AtLocation(whence.file(), whence.line())
2010
- << "seq[" << this << "]: poll step 7/8 gets "
2011
- << (p != nullptr
2012
- ? (PromiseResultTraits6::IsOk(*p)
2013
- ? "ready"
2014
- : absl::StrCat(
2015
- "early-error:",
2016
- PromiseResultTraits6::ErrorString(*p))
2017
- .c_str())
2018
- : "pending");
2019
- }
1914
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1915
+ .AtLocation(whence.file(), whence.line())
1916
+ << "seq[" << this << "]: poll step 7/8 gets "
1917
+ << (p != nullptr
1918
+ ? (PromiseResultTraits6::IsOk(*p)
1919
+ ? "ready"
1920
+ : absl::StrCat("early-error:",
1921
+ PromiseResultTraits6::ErrorString(*p))
1922
+ .c_str())
1923
+ : "pending");
2020
1924
  if (p == nullptr) return Pending{};
2021
1925
  if (!PromiseResultTraits6::IsOk(*p)) {
2022
1926
  return PromiseResultTraits6::template ReturnValue<Result>(
@@ -2032,16 +1936,14 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6> {
2032
1936
  ABSL_FALLTHROUGH_INTENDED;
2033
1937
  default:
2034
1938
  case State::kState7: {
2035
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2036
- VLOG(2).AtLocation(whence.file(), whence.line())
2037
- << "seq[" << this << "]: begin poll step 8/8";
2038
- }
1939
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1940
+ .AtLocation(whence.file(), whence.line())
1941
+ << "seq[" << this << "]: begin poll step 8/8";
2039
1942
  auto result = current_promise();
2040
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2041
- VLOG(2).AtLocation(whence.file(), whence.line())
2042
- << "seq[" << this << "]: poll step 8/8 gets "
2043
- << (result.ready() ? "ready" : "pending");
2044
- }
1943
+ GRPC_TRACE_VLOG(promise_primitives, 2)
1944
+ .AtLocation(whence.file(), whence.line())
1945
+ << "seq[" << this << "]: poll step 8/8 gets "
1946
+ << (result.ready() ? "ready" : "pending");
2045
1947
  auto* p = result.value_if_ready();
2046
1948
  if (p == nullptr) return Pending{};
2047
1949
  return Result(std::move(*p));
@@ -2291,25 +2193,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2291
2193
  GPR_ATTRIBUTE_ALWAYS_INLINE_FUNCTION Poll<Result> PollOnce() {
2292
2194
  switch (state) {
2293
2195
  case State::kState0: {
2294
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2295
- VLOG(2).AtLocation(whence.file(), whence.line())
2296
- << "seq[" << this << "]: begin poll step 1/9";
2297
- }
2196
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2197
+ .AtLocation(whence.file(), whence.line())
2198
+ << "seq[" << this << "]: begin poll step 1/9";
2298
2199
  auto result =
2299
2200
  prior.prior.prior.prior.prior.prior.prior.prior.current_promise();
2300
2201
  PromiseResult0* p = result.value_if_ready();
2301
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2302
- VLOG(2).AtLocation(whence.file(), whence.line())
2303
- << "seq[" << this << "]: poll step 1/9 gets "
2304
- << (p != nullptr
2305
- ? (PromiseResultTraits0::IsOk(*p)
2306
- ? "ready"
2307
- : absl::StrCat(
2308
- "early-error:",
2309
- PromiseResultTraits0::ErrorString(*p))
2310
- .c_str())
2311
- : "pending");
2312
- }
2202
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2203
+ .AtLocation(whence.file(), whence.line())
2204
+ << "seq[" << this << "]: poll step 1/9 gets "
2205
+ << (p != nullptr
2206
+ ? (PromiseResultTraits0::IsOk(*p)
2207
+ ? "ready"
2208
+ : absl::StrCat("early-error:",
2209
+ PromiseResultTraits0::ErrorString(*p))
2210
+ .c_str())
2211
+ : "pending");
2313
2212
  if (p == nullptr) return Pending{};
2314
2213
  if (!PromiseResultTraits0::IsOk(*p)) {
2315
2214
  return PromiseResultTraits0::template ReturnValue<Result>(
@@ -2327,25 +2226,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2327
2226
  }
2328
2227
  ABSL_FALLTHROUGH_INTENDED;
2329
2228
  case State::kState1: {
2330
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2331
- VLOG(2).AtLocation(whence.file(), whence.line())
2332
- << "seq[" << this << "]: begin poll step 2/9";
2333
- }
2229
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2230
+ .AtLocation(whence.file(), whence.line())
2231
+ << "seq[" << this << "]: begin poll step 2/9";
2334
2232
  auto result =
2335
2233
  prior.prior.prior.prior.prior.prior.prior.current_promise();
2336
2234
  PromiseResult1* p = result.value_if_ready();
2337
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2338
- VLOG(2).AtLocation(whence.file(), whence.line())
2339
- << "seq[" << this << "]: poll step 2/9 gets "
2340
- << (p != nullptr
2341
- ? (PromiseResultTraits1::IsOk(*p)
2342
- ? "ready"
2343
- : absl::StrCat(
2344
- "early-error:",
2345
- PromiseResultTraits1::ErrorString(*p))
2346
- .c_str())
2347
- : "pending");
2348
- }
2235
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2236
+ .AtLocation(whence.file(), whence.line())
2237
+ << "seq[" << this << "]: poll step 2/9 gets "
2238
+ << (p != nullptr
2239
+ ? (PromiseResultTraits1::IsOk(*p)
2240
+ ? "ready"
2241
+ : absl::StrCat("early-error:",
2242
+ PromiseResultTraits1::ErrorString(*p))
2243
+ .c_str())
2244
+ : "pending");
2349
2245
  if (p == nullptr) return Pending{};
2350
2246
  if (!PromiseResultTraits1::IsOk(*p)) {
2351
2247
  return PromiseResultTraits1::template ReturnValue<Result>(
@@ -2362,24 +2258,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2362
2258
  }
2363
2259
  ABSL_FALLTHROUGH_INTENDED;
2364
2260
  case State::kState2: {
2365
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2366
- VLOG(2).AtLocation(whence.file(), whence.line())
2367
- << "seq[" << this << "]: begin poll step 3/9";
2368
- }
2261
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2262
+ .AtLocation(whence.file(), whence.line())
2263
+ << "seq[" << this << "]: begin poll step 3/9";
2369
2264
  auto result = prior.prior.prior.prior.prior.prior.current_promise();
2370
2265
  PromiseResult2* p = result.value_if_ready();
2371
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2372
- VLOG(2).AtLocation(whence.file(), whence.line())
2373
- << "seq[" << this << "]: poll step 3/9 gets "
2374
- << (p != nullptr
2375
- ? (PromiseResultTraits2::IsOk(*p)
2376
- ? "ready"
2377
- : absl::StrCat(
2378
- "early-error:",
2379
- PromiseResultTraits2::ErrorString(*p))
2380
- .c_str())
2381
- : "pending");
2382
- }
2266
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2267
+ .AtLocation(whence.file(), whence.line())
2268
+ << "seq[" << this << "]: poll step 3/9 gets "
2269
+ << (p != nullptr
2270
+ ? (PromiseResultTraits2::IsOk(*p)
2271
+ ? "ready"
2272
+ : absl::StrCat("early-error:",
2273
+ PromiseResultTraits2::ErrorString(*p))
2274
+ .c_str())
2275
+ : "pending");
2383
2276
  if (p == nullptr) return Pending{};
2384
2277
  if (!PromiseResultTraits2::IsOk(*p)) {
2385
2278
  return PromiseResultTraits2::template ReturnValue<Result>(
@@ -2395,24 +2288,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2395
2288
  }
2396
2289
  ABSL_FALLTHROUGH_INTENDED;
2397
2290
  case State::kState3: {
2398
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2399
- VLOG(2).AtLocation(whence.file(), whence.line())
2400
- << "seq[" << this << "]: begin poll step 4/9";
2401
- }
2291
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2292
+ .AtLocation(whence.file(), whence.line())
2293
+ << "seq[" << this << "]: begin poll step 4/9";
2402
2294
  auto result = prior.prior.prior.prior.prior.current_promise();
2403
2295
  PromiseResult3* p = result.value_if_ready();
2404
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2405
- VLOG(2).AtLocation(whence.file(), whence.line())
2406
- << "seq[" << this << "]: poll step 4/9 gets "
2407
- << (p != nullptr
2408
- ? (PromiseResultTraits3::IsOk(*p)
2409
- ? "ready"
2410
- : absl::StrCat(
2411
- "early-error:",
2412
- PromiseResultTraits3::ErrorString(*p))
2413
- .c_str())
2414
- : "pending");
2415
- }
2296
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2297
+ .AtLocation(whence.file(), whence.line())
2298
+ << "seq[" << this << "]: poll step 4/9 gets "
2299
+ << (p != nullptr
2300
+ ? (PromiseResultTraits3::IsOk(*p)
2301
+ ? "ready"
2302
+ : absl::StrCat("early-error:",
2303
+ PromiseResultTraits3::ErrorString(*p))
2304
+ .c_str())
2305
+ : "pending");
2416
2306
  if (p == nullptr) return Pending{};
2417
2307
  if (!PromiseResultTraits3::IsOk(*p)) {
2418
2308
  return PromiseResultTraits3::template ReturnValue<Result>(
@@ -2428,24 +2318,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2428
2318
  }
2429
2319
  ABSL_FALLTHROUGH_INTENDED;
2430
2320
  case State::kState4: {
2431
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2432
- VLOG(2).AtLocation(whence.file(), whence.line())
2433
- << "seq[" << this << "]: begin poll step 5/9";
2434
- }
2321
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2322
+ .AtLocation(whence.file(), whence.line())
2323
+ << "seq[" << this << "]: begin poll step 5/9";
2435
2324
  auto result = prior.prior.prior.prior.current_promise();
2436
2325
  PromiseResult4* p = result.value_if_ready();
2437
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2438
- VLOG(2).AtLocation(whence.file(), whence.line())
2439
- << "seq[" << this << "]: poll step 5/9 gets "
2440
- << (p != nullptr
2441
- ? (PromiseResultTraits4::IsOk(*p)
2442
- ? "ready"
2443
- : absl::StrCat(
2444
- "early-error:",
2445
- PromiseResultTraits4::ErrorString(*p))
2446
- .c_str())
2447
- : "pending");
2448
- }
2326
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2327
+ .AtLocation(whence.file(), whence.line())
2328
+ << "seq[" << this << "]: poll step 5/9 gets "
2329
+ << (p != nullptr
2330
+ ? (PromiseResultTraits4::IsOk(*p)
2331
+ ? "ready"
2332
+ : absl::StrCat("early-error:",
2333
+ PromiseResultTraits4::ErrorString(*p))
2334
+ .c_str())
2335
+ : "pending");
2449
2336
  if (p == nullptr) return Pending{};
2450
2337
  if (!PromiseResultTraits4::IsOk(*p)) {
2451
2338
  return PromiseResultTraits4::template ReturnValue<Result>(
@@ -2460,24 +2347,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2460
2347
  }
2461
2348
  ABSL_FALLTHROUGH_INTENDED;
2462
2349
  case State::kState5: {
2463
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2464
- VLOG(2).AtLocation(whence.file(), whence.line())
2465
- << "seq[" << this << "]: begin poll step 6/9";
2466
- }
2350
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2351
+ .AtLocation(whence.file(), whence.line())
2352
+ << "seq[" << this << "]: begin poll step 6/9";
2467
2353
  auto result = prior.prior.prior.current_promise();
2468
2354
  PromiseResult5* p = result.value_if_ready();
2469
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2470
- VLOG(2).AtLocation(whence.file(), whence.line())
2471
- << "seq[" << this << "]: poll step 6/9 gets "
2472
- << (p != nullptr
2473
- ? (PromiseResultTraits5::IsOk(*p)
2474
- ? "ready"
2475
- : absl::StrCat(
2476
- "early-error:",
2477
- PromiseResultTraits5::ErrorString(*p))
2478
- .c_str())
2479
- : "pending");
2480
- }
2355
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2356
+ .AtLocation(whence.file(), whence.line())
2357
+ << "seq[" << this << "]: poll step 6/9 gets "
2358
+ << (p != nullptr
2359
+ ? (PromiseResultTraits5::IsOk(*p)
2360
+ ? "ready"
2361
+ : absl::StrCat("early-error:",
2362
+ PromiseResultTraits5::ErrorString(*p))
2363
+ .c_str())
2364
+ : "pending");
2481
2365
  if (p == nullptr) return Pending{};
2482
2366
  if (!PromiseResultTraits5::IsOk(*p)) {
2483
2367
  return PromiseResultTraits5::template ReturnValue<Result>(
@@ -2492,24 +2376,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2492
2376
  }
2493
2377
  ABSL_FALLTHROUGH_INTENDED;
2494
2378
  case State::kState6: {
2495
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2496
- VLOG(2).AtLocation(whence.file(), whence.line())
2497
- << "seq[" << this << "]: begin poll step 7/9";
2498
- }
2379
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2380
+ .AtLocation(whence.file(), whence.line())
2381
+ << "seq[" << this << "]: begin poll step 7/9";
2499
2382
  auto result = prior.prior.current_promise();
2500
2383
  PromiseResult6* p = result.value_if_ready();
2501
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2502
- VLOG(2).AtLocation(whence.file(), whence.line())
2503
- << "seq[" << this << "]: poll step 7/9 gets "
2504
- << (p != nullptr
2505
- ? (PromiseResultTraits6::IsOk(*p)
2506
- ? "ready"
2507
- : absl::StrCat(
2508
- "early-error:",
2509
- PromiseResultTraits6::ErrorString(*p))
2510
- .c_str())
2511
- : "pending");
2512
- }
2384
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2385
+ .AtLocation(whence.file(), whence.line())
2386
+ << "seq[" << this << "]: poll step 7/9 gets "
2387
+ << (p != nullptr
2388
+ ? (PromiseResultTraits6::IsOk(*p)
2389
+ ? "ready"
2390
+ : absl::StrCat("early-error:",
2391
+ PromiseResultTraits6::ErrorString(*p))
2392
+ .c_str())
2393
+ : "pending");
2513
2394
  if (p == nullptr) return Pending{};
2514
2395
  if (!PromiseResultTraits6::IsOk(*p)) {
2515
2396
  return PromiseResultTraits6::template ReturnValue<Result>(
@@ -2524,24 +2405,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2524
2405
  }
2525
2406
  ABSL_FALLTHROUGH_INTENDED;
2526
2407
  case State::kState7: {
2527
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2528
- VLOG(2).AtLocation(whence.file(), whence.line())
2529
- << "seq[" << this << "]: begin poll step 8/9";
2530
- }
2408
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2409
+ .AtLocation(whence.file(), whence.line())
2410
+ << "seq[" << this << "]: begin poll step 8/9";
2531
2411
  auto result = prior.current_promise();
2532
2412
  PromiseResult7* p = result.value_if_ready();
2533
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2534
- VLOG(2).AtLocation(whence.file(), whence.line())
2535
- << "seq[" << this << "]: poll step 8/9 gets "
2536
- << (p != nullptr
2537
- ? (PromiseResultTraits7::IsOk(*p)
2538
- ? "ready"
2539
- : absl::StrCat(
2540
- "early-error:",
2541
- PromiseResultTraits7::ErrorString(*p))
2542
- .c_str())
2543
- : "pending");
2544
- }
2413
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2414
+ .AtLocation(whence.file(), whence.line())
2415
+ << "seq[" << this << "]: poll step 8/9 gets "
2416
+ << (p != nullptr
2417
+ ? (PromiseResultTraits7::IsOk(*p)
2418
+ ? "ready"
2419
+ : absl::StrCat("early-error:",
2420
+ PromiseResultTraits7::ErrorString(*p))
2421
+ .c_str())
2422
+ : "pending");
2545
2423
  if (p == nullptr) return Pending{};
2546
2424
  if (!PromiseResultTraits7::IsOk(*p)) {
2547
2425
  return PromiseResultTraits7::template ReturnValue<Result>(
@@ -2557,16 +2435,14 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7> {
2557
2435
  ABSL_FALLTHROUGH_INTENDED;
2558
2436
  default:
2559
2437
  case State::kState8: {
2560
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2561
- VLOG(2).AtLocation(whence.file(), whence.line())
2562
- << "seq[" << this << "]: begin poll step 9/9";
2563
- }
2438
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2439
+ .AtLocation(whence.file(), whence.line())
2440
+ << "seq[" << this << "]: begin poll step 9/9";
2564
2441
  auto result = current_promise();
2565
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2566
- VLOG(2).AtLocation(whence.file(), whence.line())
2567
- << "seq[" << this << "]: poll step 9/9 gets "
2568
- << (result.ready() ? "ready" : "pending");
2569
- }
2442
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2443
+ .AtLocation(whence.file(), whence.line())
2444
+ << "seq[" << this << "]: poll step 9/9 gets "
2445
+ << (result.ready() ? "ready" : "pending");
2570
2446
  auto* p = result.value_if_ready();
2571
2447
  if (p == nullptr) return Pending{};
2572
2448
  return Result(std::move(*p));
@@ -2851,25 +2727,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
2851
2727
  GPR_ATTRIBUTE_ALWAYS_INLINE_FUNCTION Poll<Result> PollOnce() {
2852
2728
  switch (state) {
2853
2729
  case State::kState0: {
2854
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2855
- VLOG(2).AtLocation(whence.file(), whence.line())
2856
- << "seq[" << this << "]: begin poll step 1/10";
2857
- }
2730
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2731
+ .AtLocation(whence.file(), whence.line())
2732
+ << "seq[" << this << "]: begin poll step 1/10";
2858
2733
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
2859
2734
  .current_promise();
2860
2735
  PromiseResult0* p = result.value_if_ready();
2861
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2862
- VLOG(2).AtLocation(whence.file(), whence.line())
2863
- << "seq[" << this << "]: poll step 1/10 gets "
2864
- << (p != nullptr
2865
- ? (PromiseResultTraits0::IsOk(*p)
2866
- ? "ready"
2867
- : absl::StrCat(
2868
- "early-error:",
2869
- PromiseResultTraits0::ErrorString(*p))
2870
- .c_str())
2871
- : "pending");
2872
- }
2736
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2737
+ .AtLocation(whence.file(), whence.line())
2738
+ << "seq[" << this << "]: poll step 1/10 gets "
2739
+ << (p != nullptr
2740
+ ? (PromiseResultTraits0::IsOk(*p)
2741
+ ? "ready"
2742
+ : absl::StrCat("early-error:",
2743
+ PromiseResultTraits0::ErrorString(*p))
2744
+ .c_str())
2745
+ : "pending");
2873
2746
  if (p == nullptr) return Pending{};
2874
2747
  if (!PromiseResultTraits0::IsOk(*p)) {
2875
2748
  return PromiseResultTraits0::template ReturnValue<Result>(
@@ -2889,25 +2762,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
2889
2762
  }
2890
2763
  ABSL_FALLTHROUGH_INTENDED;
2891
2764
  case State::kState1: {
2892
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2893
- VLOG(2).AtLocation(whence.file(), whence.line())
2894
- << "seq[" << this << "]: begin poll step 2/10";
2895
- }
2765
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2766
+ .AtLocation(whence.file(), whence.line())
2767
+ << "seq[" << this << "]: begin poll step 2/10";
2896
2768
  auto result =
2897
2769
  prior.prior.prior.prior.prior.prior.prior.prior.current_promise();
2898
2770
  PromiseResult1* p = result.value_if_ready();
2899
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2900
- VLOG(2).AtLocation(whence.file(), whence.line())
2901
- << "seq[" << this << "]: poll step 2/10 gets "
2902
- << (p != nullptr
2903
- ? (PromiseResultTraits1::IsOk(*p)
2904
- ? "ready"
2905
- : absl::StrCat(
2906
- "early-error:",
2907
- PromiseResultTraits1::ErrorString(*p))
2908
- .c_str())
2909
- : "pending");
2910
- }
2771
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2772
+ .AtLocation(whence.file(), whence.line())
2773
+ << "seq[" << this << "]: poll step 2/10 gets "
2774
+ << (p != nullptr
2775
+ ? (PromiseResultTraits1::IsOk(*p)
2776
+ ? "ready"
2777
+ : absl::StrCat("early-error:",
2778
+ PromiseResultTraits1::ErrorString(*p))
2779
+ .c_str())
2780
+ : "pending");
2911
2781
  if (p == nullptr) return Pending{};
2912
2782
  if (!PromiseResultTraits1::IsOk(*p)) {
2913
2783
  return PromiseResultTraits1::template ReturnValue<Result>(
@@ -2925,25 +2795,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
2925
2795
  }
2926
2796
  ABSL_FALLTHROUGH_INTENDED;
2927
2797
  case State::kState2: {
2928
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2929
- VLOG(2).AtLocation(whence.file(), whence.line())
2930
- << "seq[" << this << "]: begin poll step 3/10";
2931
- }
2798
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2799
+ .AtLocation(whence.file(), whence.line())
2800
+ << "seq[" << this << "]: begin poll step 3/10";
2932
2801
  auto result =
2933
2802
  prior.prior.prior.prior.prior.prior.prior.current_promise();
2934
2803
  PromiseResult2* p = result.value_if_ready();
2935
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2936
- VLOG(2).AtLocation(whence.file(), whence.line())
2937
- << "seq[" << this << "]: poll step 3/10 gets "
2938
- << (p != nullptr
2939
- ? (PromiseResultTraits2::IsOk(*p)
2940
- ? "ready"
2941
- : absl::StrCat(
2942
- "early-error:",
2943
- PromiseResultTraits2::ErrorString(*p))
2944
- .c_str())
2945
- : "pending");
2946
- }
2804
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2805
+ .AtLocation(whence.file(), whence.line())
2806
+ << "seq[" << this << "]: poll step 3/10 gets "
2807
+ << (p != nullptr
2808
+ ? (PromiseResultTraits2::IsOk(*p)
2809
+ ? "ready"
2810
+ : absl::StrCat("early-error:",
2811
+ PromiseResultTraits2::ErrorString(*p))
2812
+ .c_str())
2813
+ : "pending");
2947
2814
  if (p == nullptr) return Pending{};
2948
2815
  if (!PromiseResultTraits2::IsOk(*p)) {
2949
2816
  return PromiseResultTraits2::template ReturnValue<Result>(
@@ -2960,24 +2827,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
2960
2827
  }
2961
2828
  ABSL_FALLTHROUGH_INTENDED;
2962
2829
  case State::kState3: {
2963
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2964
- VLOG(2).AtLocation(whence.file(), whence.line())
2965
- << "seq[" << this << "]: begin poll step 4/10";
2966
- }
2830
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2831
+ .AtLocation(whence.file(), whence.line())
2832
+ << "seq[" << this << "]: begin poll step 4/10";
2967
2833
  auto result = prior.prior.prior.prior.prior.prior.current_promise();
2968
2834
  PromiseResult3* p = result.value_if_ready();
2969
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2970
- VLOG(2).AtLocation(whence.file(), whence.line())
2971
- << "seq[" << this << "]: poll step 4/10 gets "
2972
- << (p != nullptr
2973
- ? (PromiseResultTraits3::IsOk(*p)
2974
- ? "ready"
2975
- : absl::StrCat(
2976
- "early-error:",
2977
- PromiseResultTraits3::ErrorString(*p))
2978
- .c_str())
2979
- : "pending");
2980
- }
2835
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2836
+ .AtLocation(whence.file(), whence.line())
2837
+ << "seq[" << this << "]: poll step 4/10 gets "
2838
+ << (p != nullptr
2839
+ ? (PromiseResultTraits3::IsOk(*p)
2840
+ ? "ready"
2841
+ : absl::StrCat("early-error:",
2842
+ PromiseResultTraits3::ErrorString(*p))
2843
+ .c_str())
2844
+ : "pending");
2981
2845
  if (p == nullptr) return Pending{};
2982
2846
  if (!PromiseResultTraits3::IsOk(*p)) {
2983
2847
  return PromiseResultTraits3::template ReturnValue<Result>(
@@ -2993,24 +2857,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
2993
2857
  }
2994
2858
  ABSL_FALLTHROUGH_INTENDED;
2995
2859
  case State::kState4: {
2996
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
2997
- VLOG(2).AtLocation(whence.file(), whence.line())
2998
- << "seq[" << this << "]: begin poll step 5/10";
2999
- }
2860
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2861
+ .AtLocation(whence.file(), whence.line())
2862
+ << "seq[" << this << "]: begin poll step 5/10";
3000
2863
  auto result = prior.prior.prior.prior.prior.current_promise();
3001
2864
  PromiseResult4* p = result.value_if_ready();
3002
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3003
- VLOG(2).AtLocation(whence.file(), whence.line())
3004
- << "seq[" << this << "]: poll step 5/10 gets "
3005
- << (p != nullptr
3006
- ? (PromiseResultTraits4::IsOk(*p)
3007
- ? "ready"
3008
- : absl::StrCat(
3009
- "early-error:",
3010
- PromiseResultTraits4::ErrorString(*p))
3011
- .c_str())
3012
- : "pending");
3013
- }
2865
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2866
+ .AtLocation(whence.file(), whence.line())
2867
+ << "seq[" << this << "]: poll step 5/10 gets "
2868
+ << (p != nullptr
2869
+ ? (PromiseResultTraits4::IsOk(*p)
2870
+ ? "ready"
2871
+ : absl::StrCat("early-error:",
2872
+ PromiseResultTraits4::ErrorString(*p))
2873
+ .c_str())
2874
+ : "pending");
3014
2875
  if (p == nullptr) return Pending{};
3015
2876
  if (!PromiseResultTraits4::IsOk(*p)) {
3016
2877
  return PromiseResultTraits4::template ReturnValue<Result>(
@@ -3026,24 +2887,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
3026
2887
  }
3027
2888
  ABSL_FALLTHROUGH_INTENDED;
3028
2889
  case State::kState5: {
3029
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3030
- VLOG(2).AtLocation(whence.file(), whence.line())
3031
- << "seq[" << this << "]: begin poll step 6/10";
3032
- }
2890
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2891
+ .AtLocation(whence.file(), whence.line())
2892
+ << "seq[" << this << "]: begin poll step 6/10";
3033
2893
  auto result = prior.prior.prior.prior.current_promise();
3034
2894
  PromiseResult5* p = result.value_if_ready();
3035
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3036
- VLOG(2).AtLocation(whence.file(), whence.line())
3037
- << "seq[" << this << "]: poll step 6/10 gets "
3038
- << (p != nullptr
3039
- ? (PromiseResultTraits5::IsOk(*p)
3040
- ? "ready"
3041
- : absl::StrCat(
3042
- "early-error:",
3043
- PromiseResultTraits5::ErrorString(*p))
3044
- .c_str())
3045
- : "pending");
3046
- }
2895
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2896
+ .AtLocation(whence.file(), whence.line())
2897
+ << "seq[" << this << "]: poll step 6/10 gets "
2898
+ << (p != nullptr
2899
+ ? (PromiseResultTraits5::IsOk(*p)
2900
+ ? "ready"
2901
+ : absl::StrCat("early-error:",
2902
+ PromiseResultTraits5::ErrorString(*p))
2903
+ .c_str())
2904
+ : "pending");
3047
2905
  if (p == nullptr) return Pending{};
3048
2906
  if (!PromiseResultTraits5::IsOk(*p)) {
3049
2907
  return PromiseResultTraits5::template ReturnValue<Result>(
@@ -3058,24 +2916,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
3058
2916
  }
3059
2917
  ABSL_FALLTHROUGH_INTENDED;
3060
2918
  case State::kState6: {
3061
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3062
- VLOG(2).AtLocation(whence.file(), whence.line())
3063
- << "seq[" << this << "]: begin poll step 7/10";
3064
- }
2919
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2920
+ .AtLocation(whence.file(), whence.line())
2921
+ << "seq[" << this << "]: begin poll step 7/10";
3065
2922
  auto result = prior.prior.prior.current_promise();
3066
2923
  PromiseResult6* p = result.value_if_ready();
3067
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3068
- VLOG(2).AtLocation(whence.file(), whence.line())
3069
- << "seq[" << this << "]: poll step 7/10 gets "
3070
- << (p != nullptr
3071
- ? (PromiseResultTraits6::IsOk(*p)
3072
- ? "ready"
3073
- : absl::StrCat(
3074
- "early-error:",
3075
- PromiseResultTraits6::ErrorString(*p))
3076
- .c_str())
3077
- : "pending");
3078
- }
2924
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2925
+ .AtLocation(whence.file(), whence.line())
2926
+ << "seq[" << this << "]: poll step 7/10 gets "
2927
+ << (p != nullptr
2928
+ ? (PromiseResultTraits6::IsOk(*p)
2929
+ ? "ready"
2930
+ : absl::StrCat("early-error:",
2931
+ PromiseResultTraits6::ErrorString(*p))
2932
+ .c_str())
2933
+ : "pending");
3079
2934
  if (p == nullptr) return Pending{};
3080
2935
  if (!PromiseResultTraits6::IsOk(*p)) {
3081
2936
  return PromiseResultTraits6::template ReturnValue<Result>(
@@ -3090,24 +2945,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
3090
2945
  }
3091
2946
  ABSL_FALLTHROUGH_INTENDED;
3092
2947
  case State::kState7: {
3093
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3094
- VLOG(2).AtLocation(whence.file(), whence.line())
3095
- << "seq[" << this << "]: begin poll step 8/10";
3096
- }
2948
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2949
+ .AtLocation(whence.file(), whence.line())
2950
+ << "seq[" << this << "]: begin poll step 8/10";
3097
2951
  auto result = prior.prior.current_promise();
3098
2952
  PromiseResult7* p = result.value_if_ready();
3099
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3100
- VLOG(2).AtLocation(whence.file(), whence.line())
3101
- << "seq[" << this << "]: poll step 8/10 gets "
3102
- << (p != nullptr
3103
- ? (PromiseResultTraits7::IsOk(*p)
3104
- ? "ready"
3105
- : absl::StrCat(
3106
- "early-error:",
3107
- PromiseResultTraits7::ErrorString(*p))
3108
- .c_str())
3109
- : "pending");
3110
- }
2953
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2954
+ .AtLocation(whence.file(), whence.line())
2955
+ << "seq[" << this << "]: poll step 8/10 gets "
2956
+ << (p != nullptr
2957
+ ? (PromiseResultTraits7::IsOk(*p)
2958
+ ? "ready"
2959
+ : absl::StrCat("early-error:",
2960
+ PromiseResultTraits7::ErrorString(*p))
2961
+ .c_str())
2962
+ : "pending");
3111
2963
  if (p == nullptr) return Pending{};
3112
2964
  if (!PromiseResultTraits7::IsOk(*p)) {
3113
2965
  return PromiseResultTraits7::template ReturnValue<Result>(
@@ -3122,24 +2974,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
3122
2974
  }
3123
2975
  ABSL_FALLTHROUGH_INTENDED;
3124
2976
  case State::kState8: {
3125
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3126
- VLOG(2).AtLocation(whence.file(), whence.line())
3127
- << "seq[" << this << "]: begin poll step 9/10";
3128
- }
2977
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2978
+ .AtLocation(whence.file(), whence.line())
2979
+ << "seq[" << this << "]: begin poll step 9/10";
3129
2980
  auto result = prior.current_promise();
3130
2981
  PromiseResult8* p = result.value_if_ready();
3131
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3132
- VLOG(2).AtLocation(whence.file(), whence.line())
3133
- << "seq[" << this << "]: poll step 9/10 gets "
3134
- << (p != nullptr
3135
- ? (PromiseResultTraits8::IsOk(*p)
3136
- ? "ready"
3137
- : absl::StrCat(
3138
- "early-error:",
3139
- PromiseResultTraits8::ErrorString(*p))
3140
- .c_str())
3141
- : "pending");
3142
- }
2982
+ GRPC_TRACE_VLOG(promise_primitives, 2)
2983
+ .AtLocation(whence.file(), whence.line())
2984
+ << "seq[" << this << "]: poll step 9/10 gets "
2985
+ << (p != nullptr
2986
+ ? (PromiseResultTraits8::IsOk(*p)
2987
+ ? "ready"
2988
+ : absl::StrCat("early-error:",
2989
+ PromiseResultTraits8::ErrorString(*p))
2990
+ .c_str())
2991
+ : "pending");
3143
2992
  if (p == nullptr) return Pending{};
3144
2993
  if (!PromiseResultTraits8::IsOk(*p)) {
3145
2994
  return PromiseResultTraits8::template ReturnValue<Result>(
@@ -3155,16 +3004,14 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8> {
3155
3004
  ABSL_FALLTHROUGH_INTENDED;
3156
3005
  default:
3157
3006
  case State::kState9: {
3158
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3159
- VLOG(2).AtLocation(whence.file(), whence.line())
3160
- << "seq[" << this << "]: begin poll step 10/10";
3161
- }
3007
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3008
+ .AtLocation(whence.file(), whence.line())
3009
+ << "seq[" << this << "]: begin poll step 10/10";
3162
3010
  auto result = current_promise();
3163
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3164
- VLOG(2).AtLocation(whence.file(), whence.line())
3165
- << "seq[" << this << "]: poll step 10/10 gets "
3166
- << (result.ready() ? "ready" : "pending");
3167
- }
3011
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3012
+ .AtLocation(whence.file(), whence.line())
3013
+ << "seq[" << this << "]: poll step 10/10 gets "
3014
+ << (result.ready() ? "ready" : "pending");
3168
3015
  auto* p = result.value_if_ready();
3169
3016
  if (p == nullptr) return Pending{};
3170
3017
  return Result(std::move(*p));
@@ -3480,25 +3327,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3480
3327
  GPR_ATTRIBUTE_ALWAYS_INLINE_FUNCTION Poll<Result> PollOnce() {
3481
3328
  switch (state) {
3482
3329
  case State::kState0: {
3483
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3484
- VLOG(2).AtLocation(whence.file(), whence.line())
3485
- << "seq[" << this << "]: begin poll step 1/11";
3486
- }
3330
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3331
+ .AtLocation(whence.file(), whence.line())
3332
+ << "seq[" << this << "]: begin poll step 1/11";
3487
3333
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
3488
3334
  .prior.current_promise();
3489
3335
  PromiseResult0* p = result.value_if_ready();
3490
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3491
- VLOG(2).AtLocation(whence.file(), whence.line())
3492
- << "seq[" << this << "]: poll step 1/11 gets "
3493
- << (p != nullptr
3494
- ? (PromiseResultTraits0::IsOk(*p)
3495
- ? "ready"
3496
- : absl::StrCat(
3497
- "early-error:",
3498
- PromiseResultTraits0::ErrorString(*p))
3499
- .c_str())
3500
- : "pending");
3501
- }
3336
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3337
+ .AtLocation(whence.file(), whence.line())
3338
+ << "seq[" << this << "]: poll step 1/11 gets "
3339
+ << (p != nullptr
3340
+ ? (PromiseResultTraits0::IsOk(*p)
3341
+ ? "ready"
3342
+ : absl::StrCat("early-error:",
3343
+ PromiseResultTraits0::ErrorString(*p))
3344
+ .c_str())
3345
+ : "pending");
3502
3346
  if (p == nullptr) return Pending{};
3503
3347
  if (!PromiseResultTraits0::IsOk(*p)) {
3504
3348
  return PromiseResultTraits0::template ReturnValue<Result>(
@@ -3519,25 +3363,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3519
3363
  }
3520
3364
  ABSL_FALLTHROUGH_INTENDED;
3521
3365
  case State::kState1: {
3522
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3523
- VLOG(2).AtLocation(whence.file(), whence.line())
3524
- << "seq[" << this << "]: begin poll step 2/11";
3525
- }
3366
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3367
+ .AtLocation(whence.file(), whence.line())
3368
+ << "seq[" << this << "]: begin poll step 2/11";
3526
3369
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
3527
3370
  .current_promise();
3528
3371
  PromiseResult1* p = result.value_if_ready();
3529
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3530
- VLOG(2).AtLocation(whence.file(), whence.line())
3531
- << "seq[" << this << "]: poll step 2/11 gets "
3532
- << (p != nullptr
3533
- ? (PromiseResultTraits1::IsOk(*p)
3534
- ? "ready"
3535
- : absl::StrCat(
3536
- "early-error:",
3537
- PromiseResultTraits1::ErrorString(*p))
3538
- .c_str())
3539
- : "pending");
3540
- }
3372
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3373
+ .AtLocation(whence.file(), whence.line())
3374
+ << "seq[" << this << "]: poll step 2/11 gets "
3375
+ << (p != nullptr
3376
+ ? (PromiseResultTraits1::IsOk(*p)
3377
+ ? "ready"
3378
+ : absl::StrCat("early-error:",
3379
+ PromiseResultTraits1::ErrorString(*p))
3380
+ .c_str())
3381
+ : "pending");
3541
3382
  if (p == nullptr) return Pending{};
3542
3383
  if (!PromiseResultTraits1::IsOk(*p)) {
3543
3384
  return PromiseResultTraits1::template ReturnValue<Result>(
@@ -3557,25 +3398,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3557
3398
  }
3558
3399
  ABSL_FALLTHROUGH_INTENDED;
3559
3400
  case State::kState2: {
3560
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3561
- VLOG(2).AtLocation(whence.file(), whence.line())
3562
- << "seq[" << this << "]: begin poll step 3/11";
3563
- }
3401
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3402
+ .AtLocation(whence.file(), whence.line())
3403
+ << "seq[" << this << "]: begin poll step 3/11";
3564
3404
  auto result =
3565
3405
  prior.prior.prior.prior.prior.prior.prior.prior.current_promise();
3566
3406
  PromiseResult2* p = result.value_if_ready();
3567
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3568
- VLOG(2).AtLocation(whence.file(), whence.line())
3569
- << "seq[" << this << "]: poll step 3/11 gets "
3570
- << (p != nullptr
3571
- ? (PromiseResultTraits2::IsOk(*p)
3572
- ? "ready"
3573
- : absl::StrCat(
3574
- "early-error:",
3575
- PromiseResultTraits2::ErrorString(*p))
3576
- .c_str())
3577
- : "pending");
3578
- }
3407
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3408
+ .AtLocation(whence.file(), whence.line())
3409
+ << "seq[" << this << "]: poll step 3/11 gets "
3410
+ << (p != nullptr
3411
+ ? (PromiseResultTraits2::IsOk(*p)
3412
+ ? "ready"
3413
+ : absl::StrCat("early-error:",
3414
+ PromiseResultTraits2::ErrorString(*p))
3415
+ .c_str())
3416
+ : "pending");
3579
3417
  if (p == nullptr) return Pending{};
3580
3418
  if (!PromiseResultTraits2::IsOk(*p)) {
3581
3419
  return PromiseResultTraits2::template ReturnValue<Result>(
@@ -3593,25 +3431,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3593
3431
  }
3594
3432
  ABSL_FALLTHROUGH_INTENDED;
3595
3433
  case State::kState3: {
3596
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3597
- VLOG(2).AtLocation(whence.file(), whence.line())
3598
- << "seq[" << this << "]: begin poll step 4/11";
3599
- }
3434
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3435
+ .AtLocation(whence.file(), whence.line())
3436
+ << "seq[" << this << "]: begin poll step 4/11";
3600
3437
  auto result =
3601
3438
  prior.prior.prior.prior.prior.prior.prior.current_promise();
3602
3439
  PromiseResult3* p = result.value_if_ready();
3603
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3604
- VLOG(2).AtLocation(whence.file(), whence.line())
3605
- << "seq[" << this << "]: poll step 4/11 gets "
3606
- << (p != nullptr
3607
- ? (PromiseResultTraits3::IsOk(*p)
3608
- ? "ready"
3609
- : absl::StrCat(
3610
- "early-error:",
3611
- PromiseResultTraits3::ErrorString(*p))
3612
- .c_str())
3613
- : "pending");
3614
- }
3440
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3441
+ .AtLocation(whence.file(), whence.line())
3442
+ << "seq[" << this << "]: poll step 4/11 gets "
3443
+ << (p != nullptr
3444
+ ? (PromiseResultTraits3::IsOk(*p)
3445
+ ? "ready"
3446
+ : absl::StrCat("early-error:",
3447
+ PromiseResultTraits3::ErrorString(*p))
3448
+ .c_str())
3449
+ : "pending");
3615
3450
  if (p == nullptr) return Pending{};
3616
3451
  if (!PromiseResultTraits3::IsOk(*p)) {
3617
3452
  return PromiseResultTraits3::template ReturnValue<Result>(
@@ -3628,24 +3463,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3628
3463
  }
3629
3464
  ABSL_FALLTHROUGH_INTENDED;
3630
3465
  case State::kState4: {
3631
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3632
- VLOG(2).AtLocation(whence.file(), whence.line())
3633
- << "seq[" << this << "]: begin poll step 5/11";
3634
- }
3466
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3467
+ .AtLocation(whence.file(), whence.line())
3468
+ << "seq[" << this << "]: begin poll step 5/11";
3635
3469
  auto result = prior.prior.prior.prior.prior.prior.current_promise();
3636
3470
  PromiseResult4* p = result.value_if_ready();
3637
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3638
- VLOG(2).AtLocation(whence.file(), whence.line())
3639
- << "seq[" << this << "]: poll step 5/11 gets "
3640
- << (p != nullptr
3641
- ? (PromiseResultTraits4::IsOk(*p)
3642
- ? "ready"
3643
- : absl::StrCat(
3644
- "early-error:",
3645
- PromiseResultTraits4::ErrorString(*p))
3646
- .c_str())
3647
- : "pending");
3648
- }
3471
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3472
+ .AtLocation(whence.file(), whence.line())
3473
+ << "seq[" << this << "]: poll step 5/11 gets "
3474
+ << (p != nullptr
3475
+ ? (PromiseResultTraits4::IsOk(*p)
3476
+ ? "ready"
3477
+ : absl::StrCat("early-error:",
3478
+ PromiseResultTraits4::ErrorString(*p))
3479
+ .c_str())
3480
+ : "pending");
3649
3481
  if (p == nullptr) return Pending{};
3650
3482
  if (!PromiseResultTraits4::IsOk(*p)) {
3651
3483
  return PromiseResultTraits4::template ReturnValue<Result>(
@@ -3661,24 +3493,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3661
3493
  }
3662
3494
  ABSL_FALLTHROUGH_INTENDED;
3663
3495
  case State::kState5: {
3664
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3665
- VLOG(2).AtLocation(whence.file(), whence.line())
3666
- << "seq[" << this << "]: begin poll step 6/11";
3667
- }
3496
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3497
+ .AtLocation(whence.file(), whence.line())
3498
+ << "seq[" << this << "]: begin poll step 6/11";
3668
3499
  auto result = prior.prior.prior.prior.prior.current_promise();
3669
3500
  PromiseResult5* p = result.value_if_ready();
3670
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3671
- VLOG(2).AtLocation(whence.file(), whence.line())
3672
- << "seq[" << this << "]: poll step 6/11 gets "
3673
- << (p != nullptr
3674
- ? (PromiseResultTraits5::IsOk(*p)
3675
- ? "ready"
3676
- : absl::StrCat(
3677
- "early-error:",
3678
- PromiseResultTraits5::ErrorString(*p))
3679
- .c_str())
3680
- : "pending");
3681
- }
3501
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3502
+ .AtLocation(whence.file(), whence.line())
3503
+ << "seq[" << this << "]: poll step 6/11 gets "
3504
+ << (p != nullptr
3505
+ ? (PromiseResultTraits5::IsOk(*p)
3506
+ ? "ready"
3507
+ : absl::StrCat("early-error:",
3508
+ PromiseResultTraits5::ErrorString(*p))
3509
+ .c_str())
3510
+ : "pending");
3682
3511
  if (p == nullptr) return Pending{};
3683
3512
  if (!PromiseResultTraits5::IsOk(*p)) {
3684
3513
  return PromiseResultTraits5::template ReturnValue<Result>(
@@ -3694,24 +3523,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3694
3523
  }
3695
3524
  ABSL_FALLTHROUGH_INTENDED;
3696
3525
  case State::kState6: {
3697
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3698
- VLOG(2).AtLocation(whence.file(), whence.line())
3699
- << "seq[" << this << "]: begin poll step 7/11";
3700
- }
3526
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3527
+ .AtLocation(whence.file(), whence.line())
3528
+ << "seq[" << this << "]: begin poll step 7/11";
3701
3529
  auto result = prior.prior.prior.prior.current_promise();
3702
3530
  PromiseResult6* p = result.value_if_ready();
3703
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3704
- VLOG(2).AtLocation(whence.file(), whence.line())
3705
- << "seq[" << this << "]: poll step 7/11 gets "
3706
- << (p != nullptr
3707
- ? (PromiseResultTraits6::IsOk(*p)
3708
- ? "ready"
3709
- : absl::StrCat(
3710
- "early-error:",
3711
- PromiseResultTraits6::ErrorString(*p))
3712
- .c_str())
3713
- : "pending");
3714
- }
3531
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3532
+ .AtLocation(whence.file(), whence.line())
3533
+ << "seq[" << this << "]: poll step 7/11 gets "
3534
+ << (p != nullptr
3535
+ ? (PromiseResultTraits6::IsOk(*p)
3536
+ ? "ready"
3537
+ : absl::StrCat("early-error:",
3538
+ PromiseResultTraits6::ErrorString(*p))
3539
+ .c_str())
3540
+ : "pending");
3715
3541
  if (p == nullptr) return Pending{};
3716
3542
  if (!PromiseResultTraits6::IsOk(*p)) {
3717
3543
  return PromiseResultTraits6::template ReturnValue<Result>(
@@ -3726,24 +3552,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3726
3552
  }
3727
3553
  ABSL_FALLTHROUGH_INTENDED;
3728
3554
  case State::kState7: {
3729
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3730
- VLOG(2).AtLocation(whence.file(), whence.line())
3731
- << "seq[" << this << "]: begin poll step 8/11";
3732
- }
3555
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3556
+ .AtLocation(whence.file(), whence.line())
3557
+ << "seq[" << this << "]: begin poll step 8/11";
3733
3558
  auto result = prior.prior.prior.current_promise();
3734
3559
  PromiseResult7* p = result.value_if_ready();
3735
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3736
- VLOG(2).AtLocation(whence.file(), whence.line())
3737
- << "seq[" << this << "]: poll step 8/11 gets "
3738
- << (p != nullptr
3739
- ? (PromiseResultTraits7::IsOk(*p)
3740
- ? "ready"
3741
- : absl::StrCat(
3742
- "early-error:",
3743
- PromiseResultTraits7::ErrorString(*p))
3744
- .c_str())
3745
- : "pending");
3746
- }
3560
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3561
+ .AtLocation(whence.file(), whence.line())
3562
+ << "seq[" << this << "]: poll step 8/11 gets "
3563
+ << (p != nullptr
3564
+ ? (PromiseResultTraits7::IsOk(*p)
3565
+ ? "ready"
3566
+ : absl::StrCat("early-error:",
3567
+ PromiseResultTraits7::ErrorString(*p))
3568
+ .c_str())
3569
+ : "pending");
3747
3570
  if (p == nullptr) return Pending{};
3748
3571
  if (!PromiseResultTraits7::IsOk(*p)) {
3749
3572
  return PromiseResultTraits7::template ReturnValue<Result>(
@@ -3758,24 +3581,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3758
3581
  }
3759
3582
  ABSL_FALLTHROUGH_INTENDED;
3760
3583
  case State::kState8: {
3761
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3762
- VLOG(2).AtLocation(whence.file(), whence.line())
3763
- << "seq[" << this << "]: begin poll step 9/11";
3764
- }
3584
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3585
+ .AtLocation(whence.file(), whence.line())
3586
+ << "seq[" << this << "]: begin poll step 9/11";
3765
3587
  auto result = prior.prior.current_promise();
3766
3588
  PromiseResult8* p = result.value_if_ready();
3767
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3768
- VLOG(2).AtLocation(whence.file(), whence.line())
3769
- << "seq[" << this << "]: poll step 9/11 gets "
3770
- << (p != nullptr
3771
- ? (PromiseResultTraits8::IsOk(*p)
3772
- ? "ready"
3773
- : absl::StrCat(
3774
- "early-error:",
3775
- PromiseResultTraits8::ErrorString(*p))
3776
- .c_str())
3777
- : "pending");
3778
- }
3589
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3590
+ .AtLocation(whence.file(), whence.line())
3591
+ << "seq[" << this << "]: poll step 9/11 gets "
3592
+ << (p != nullptr
3593
+ ? (PromiseResultTraits8::IsOk(*p)
3594
+ ? "ready"
3595
+ : absl::StrCat("early-error:",
3596
+ PromiseResultTraits8::ErrorString(*p))
3597
+ .c_str())
3598
+ : "pending");
3779
3599
  if (p == nullptr) return Pending{};
3780
3600
  if (!PromiseResultTraits8::IsOk(*p)) {
3781
3601
  return PromiseResultTraits8::template ReturnValue<Result>(
@@ -3790,24 +3610,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3790
3610
  }
3791
3611
  ABSL_FALLTHROUGH_INTENDED;
3792
3612
  case State::kState9: {
3793
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3794
- VLOG(2).AtLocation(whence.file(), whence.line())
3795
- << "seq[" << this << "]: begin poll step 10/11";
3796
- }
3613
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3614
+ .AtLocation(whence.file(), whence.line())
3615
+ << "seq[" << this << "]: begin poll step 10/11";
3797
3616
  auto result = prior.current_promise();
3798
3617
  PromiseResult9* p = result.value_if_ready();
3799
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3800
- VLOG(2).AtLocation(whence.file(), whence.line())
3801
- << "seq[" << this << "]: poll step 10/11 gets "
3802
- << (p != nullptr
3803
- ? (PromiseResultTraits9::IsOk(*p)
3804
- ? "ready"
3805
- : absl::StrCat(
3806
- "early-error:",
3807
- PromiseResultTraits9::ErrorString(*p))
3808
- .c_str())
3809
- : "pending");
3810
- }
3618
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3619
+ .AtLocation(whence.file(), whence.line())
3620
+ << "seq[" << this << "]: poll step 10/11 gets "
3621
+ << (p != nullptr
3622
+ ? (PromiseResultTraits9::IsOk(*p)
3623
+ ? "ready"
3624
+ : absl::StrCat("early-error:",
3625
+ PromiseResultTraits9::ErrorString(*p))
3626
+ .c_str())
3627
+ : "pending");
3811
3628
  if (p == nullptr) return Pending{};
3812
3629
  if (!PromiseResultTraits9::IsOk(*p)) {
3813
3630
  return PromiseResultTraits9::template ReturnValue<Result>(
@@ -3823,16 +3640,14 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9> {
3823
3640
  ABSL_FALLTHROUGH_INTENDED;
3824
3641
  default:
3825
3642
  case State::kState10: {
3826
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3827
- VLOG(2).AtLocation(whence.file(), whence.line())
3828
- << "seq[" << this << "]: begin poll step 11/11";
3829
- }
3643
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3644
+ .AtLocation(whence.file(), whence.line())
3645
+ << "seq[" << this << "]: begin poll step 11/11";
3830
3646
  auto result = current_promise();
3831
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
3832
- VLOG(2).AtLocation(whence.file(), whence.line())
3833
- << "seq[" << this << "]: poll step 11/11 gets "
3834
- << (result.ready() ? "ready" : "pending");
3835
- }
3647
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3648
+ .AtLocation(whence.file(), whence.line())
3649
+ << "seq[" << this << "]: poll step 11/11 gets "
3650
+ << (result.ready() ? "ready" : "pending");
3836
3651
  auto* p = result.value_if_ready();
3837
3652
  if (p == nullptr) return Pending{};
3838
3653
  return Result(std::move(*p));
@@ -4179,25 +3994,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4179
3994
  GPR_ATTRIBUTE_ALWAYS_INLINE_FUNCTION Poll<Result> PollOnce() {
4180
3995
  switch (state) {
4181
3996
  case State::kState0: {
4182
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4183
- VLOG(2).AtLocation(whence.file(), whence.line())
4184
- << "seq[" << this << "]: begin poll step 1/12";
4185
- }
3997
+ GRPC_TRACE_VLOG(promise_primitives, 2)
3998
+ .AtLocation(whence.file(), whence.line())
3999
+ << "seq[" << this << "]: begin poll step 1/12";
4186
4000
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
4187
4001
  .prior.prior.current_promise();
4188
4002
  PromiseResult0* p = result.value_if_ready();
4189
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4190
- VLOG(2).AtLocation(whence.file(), whence.line())
4191
- << "seq[" << this << "]: poll step 1/12 gets "
4192
- << (p != nullptr
4193
- ? (PromiseResultTraits0::IsOk(*p)
4194
- ? "ready"
4195
- : absl::StrCat(
4196
- "early-error:",
4197
- PromiseResultTraits0::ErrorString(*p))
4198
- .c_str())
4199
- : "pending");
4200
- }
4003
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4004
+ .AtLocation(whence.file(), whence.line())
4005
+ << "seq[" << this << "]: poll step 1/12 gets "
4006
+ << (p != nullptr
4007
+ ? (PromiseResultTraits0::IsOk(*p)
4008
+ ? "ready"
4009
+ : absl::StrCat("early-error:",
4010
+ PromiseResultTraits0::ErrorString(*p))
4011
+ .c_str())
4012
+ : "pending");
4201
4013
  if (p == nullptr) return Pending{};
4202
4014
  if (!PromiseResultTraits0::IsOk(*p)) {
4203
4015
  return PromiseResultTraits0::template ReturnValue<Result>(
@@ -4218,25 +4030,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4218
4030
  }
4219
4031
  ABSL_FALLTHROUGH_INTENDED;
4220
4032
  case State::kState1: {
4221
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4222
- VLOG(2).AtLocation(whence.file(), whence.line())
4223
- << "seq[" << this << "]: begin poll step 2/12";
4224
- }
4033
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4034
+ .AtLocation(whence.file(), whence.line())
4035
+ << "seq[" << this << "]: begin poll step 2/12";
4225
4036
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
4226
4037
  .prior.current_promise();
4227
4038
  PromiseResult1* p = result.value_if_ready();
4228
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4229
- VLOG(2).AtLocation(whence.file(), whence.line())
4230
- << "seq[" << this << "]: poll step 2/12 gets "
4231
- << (p != nullptr
4232
- ? (PromiseResultTraits1::IsOk(*p)
4233
- ? "ready"
4234
- : absl::StrCat(
4235
- "early-error:",
4236
- PromiseResultTraits1::ErrorString(*p))
4237
- .c_str())
4238
- : "pending");
4239
- }
4039
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4040
+ .AtLocation(whence.file(), whence.line())
4041
+ << "seq[" << this << "]: poll step 2/12 gets "
4042
+ << (p != nullptr
4043
+ ? (PromiseResultTraits1::IsOk(*p)
4044
+ ? "ready"
4045
+ : absl::StrCat("early-error:",
4046
+ PromiseResultTraits1::ErrorString(*p))
4047
+ .c_str())
4048
+ : "pending");
4240
4049
  if (p == nullptr) return Pending{};
4241
4050
  if (!PromiseResultTraits1::IsOk(*p)) {
4242
4051
  return PromiseResultTraits1::template ReturnValue<Result>(
@@ -4257,25 +4066,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4257
4066
  }
4258
4067
  ABSL_FALLTHROUGH_INTENDED;
4259
4068
  case State::kState2: {
4260
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4261
- VLOG(2).AtLocation(whence.file(), whence.line())
4262
- << "seq[" << this << "]: begin poll step 3/12";
4263
- }
4069
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4070
+ .AtLocation(whence.file(), whence.line())
4071
+ << "seq[" << this << "]: begin poll step 3/12";
4264
4072
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
4265
4073
  .current_promise();
4266
4074
  PromiseResult2* p = result.value_if_ready();
4267
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4268
- VLOG(2).AtLocation(whence.file(), whence.line())
4269
- << "seq[" << this << "]: poll step 3/12 gets "
4270
- << (p != nullptr
4271
- ? (PromiseResultTraits2::IsOk(*p)
4272
- ? "ready"
4273
- : absl::StrCat(
4274
- "early-error:",
4275
- PromiseResultTraits2::ErrorString(*p))
4276
- .c_str())
4277
- : "pending");
4278
- }
4075
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4076
+ .AtLocation(whence.file(), whence.line())
4077
+ << "seq[" << this << "]: poll step 3/12 gets "
4078
+ << (p != nullptr
4079
+ ? (PromiseResultTraits2::IsOk(*p)
4080
+ ? "ready"
4081
+ : absl::StrCat("early-error:",
4082
+ PromiseResultTraits2::ErrorString(*p))
4083
+ .c_str())
4084
+ : "pending");
4279
4085
  if (p == nullptr) return Pending{};
4280
4086
  if (!PromiseResultTraits2::IsOk(*p)) {
4281
4087
  return PromiseResultTraits2::template ReturnValue<Result>(
@@ -4295,25 +4101,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4295
4101
  }
4296
4102
  ABSL_FALLTHROUGH_INTENDED;
4297
4103
  case State::kState3: {
4298
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4299
- VLOG(2).AtLocation(whence.file(), whence.line())
4300
- << "seq[" << this << "]: begin poll step 4/12";
4301
- }
4104
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4105
+ .AtLocation(whence.file(), whence.line())
4106
+ << "seq[" << this << "]: begin poll step 4/12";
4302
4107
  auto result =
4303
4108
  prior.prior.prior.prior.prior.prior.prior.prior.current_promise();
4304
4109
  PromiseResult3* p = result.value_if_ready();
4305
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4306
- VLOG(2).AtLocation(whence.file(), whence.line())
4307
- << "seq[" << this << "]: poll step 4/12 gets "
4308
- << (p != nullptr
4309
- ? (PromiseResultTraits3::IsOk(*p)
4310
- ? "ready"
4311
- : absl::StrCat(
4312
- "early-error:",
4313
- PromiseResultTraits3::ErrorString(*p))
4314
- .c_str())
4315
- : "pending");
4316
- }
4110
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4111
+ .AtLocation(whence.file(), whence.line())
4112
+ << "seq[" << this << "]: poll step 4/12 gets "
4113
+ << (p != nullptr
4114
+ ? (PromiseResultTraits3::IsOk(*p)
4115
+ ? "ready"
4116
+ : absl::StrCat("early-error:",
4117
+ PromiseResultTraits3::ErrorString(*p))
4118
+ .c_str())
4119
+ : "pending");
4317
4120
  if (p == nullptr) return Pending{};
4318
4121
  if (!PromiseResultTraits3::IsOk(*p)) {
4319
4122
  return PromiseResultTraits3::template ReturnValue<Result>(
@@ -4331,25 +4134,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4331
4134
  }
4332
4135
  ABSL_FALLTHROUGH_INTENDED;
4333
4136
  case State::kState4: {
4334
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4335
- VLOG(2).AtLocation(whence.file(), whence.line())
4336
- << "seq[" << this << "]: begin poll step 5/12";
4337
- }
4137
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4138
+ .AtLocation(whence.file(), whence.line())
4139
+ << "seq[" << this << "]: begin poll step 5/12";
4338
4140
  auto result =
4339
4141
  prior.prior.prior.prior.prior.prior.prior.current_promise();
4340
4142
  PromiseResult4* p = result.value_if_ready();
4341
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4342
- VLOG(2).AtLocation(whence.file(), whence.line())
4343
- << "seq[" << this << "]: poll step 5/12 gets "
4344
- << (p != nullptr
4345
- ? (PromiseResultTraits4::IsOk(*p)
4346
- ? "ready"
4347
- : absl::StrCat(
4348
- "early-error:",
4349
- PromiseResultTraits4::ErrorString(*p))
4350
- .c_str())
4351
- : "pending");
4352
- }
4143
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4144
+ .AtLocation(whence.file(), whence.line())
4145
+ << "seq[" << this << "]: poll step 5/12 gets "
4146
+ << (p != nullptr
4147
+ ? (PromiseResultTraits4::IsOk(*p)
4148
+ ? "ready"
4149
+ : absl::StrCat("early-error:",
4150
+ PromiseResultTraits4::ErrorString(*p))
4151
+ .c_str())
4152
+ : "pending");
4353
4153
  if (p == nullptr) return Pending{};
4354
4154
  if (!PromiseResultTraits4::IsOk(*p)) {
4355
4155
  return PromiseResultTraits4::template ReturnValue<Result>(
@@ -4366,24 +4166,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4366
4166
  }
4367
4167
  ABSL_FALLTHROUGH_INTENDED;
4368
4168
  case State::kState5: {
4369
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4370
- VLOG(2).AtLocation(whence.file(), whence.line())
4371
- << "seq[" << this << "]: begin poll step 6/12";
4372
- }
4169
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4170
+ .AtLocation(whence.file(), whence.line())
4171
+ << "seq[" << this << "]: begin poll step 6/12";
4373
4172
  auto result = prior.prior.prior.prior.prior.prior.current_promise();
4374
4173
  PromiseResult5* p = result.value_if_ready();
4375
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4376
- VLOG(2).AtLocation(whence.file(), whence.line())
4377
- << "seq[" << this << "]: poll step 6/12 gets "
4378
- << (p != nullptr
4379
- ? (PromiseResultTraits5::IsOk(*p)
4380
- ? "ready"
4381
- : absl::StrCat(
4382
- "early-error:",
4383
- PromiseResultTraits5::ErrorString(*p))
4384
- .c_str())
4385
- : "pending");
4386
- }
4174
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4175
+ .AtLocation(whence.file(), whence.line())
4176
+ << "seq[" << this << "]: poll step 6/12 gets "
4177
+ << (p != nullptr
4178
+ ? (PromiseResultTraits5::IsOk(*p)
4179
+ ? "ready"
4180
+ : absl::StrCat("early-error:",
4181
+ PromiseResultTraits5::ErrorString(*p))
4182
+ .c_str())
4183
+ : "pending");
4387
4184
  if (p == nullptr) return Pending{};
4388
4185
  if (!PromiseResultTraits5::IsOk(*p)) {
4389
4186
  return PromiseResultTraits5::template ReturnValue<Result>(
@@ -4399,24 +4196,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4399
4196
  }
4400
4197
  ABSL_FALLTHROUGH_INTENDED;
4401
4198
  case State::kState6: {
4402
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4403
- VLOG(2).AtLocation(whence.file(), whence.line())
4404
- << "seq[" << this << "]: begin poll step 7/12";
4405
- }
4199
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4200
+ .AtLocation(whence.file(), whence.line())
4201
+ << "seq[" << this << "]: begin poll step 7/12";
4406
4202
  auto result = prior.prior.prior.prior.prior.current_promise();
4407
4203
  PromiseResult6* p = result.value_if_ready();
4408
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4409
- VLOG(2).AtLocation(whence.file(), whence.line())
4410
- << "seq[" << this << "]: poll step 7/12 gets "
4411
- << (p != nullptr
4412
- ? (PromiseResultTraits6::IsOk(*p)
4413
- ? "ready"
4414
- : absl::StrCat(
4415
- "early-error:",
4416
- PromiseResultTraits6::ErrorString(*p))
4417
- .c_str())
4418
- : "pending");
4419
- }
4204
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4205
+ .AtLocation(whence.file(), whence.line())
4206
+ << "seq[" << this << "]: poll step 7/12 gets "
4207
+ << (p != nullptr
4208
+ ? (PromiseResultTraits6::IsOk(*p)
4209
+ ? "ready"
4210
+ : absl::StrCat("early-error:",
4211
+ PromiseResultTraits6::ErrorString(*p))
4212
+ .c_str())
4213
+ : "pending");
4420
4214
  if (p == nullptr) return Pending{};
4421
4215
  if (!PromiseResultTraits6::IsOk(*p)) {
4422
4216
  return PromiseResultTraits6::template ReturnValue<Result>(
@@ -4432,24 +4226,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4432
4226
  }
4433
4227
  ABSL_FALLTHROUGH_INTENDED;
4434
4228
  case State::kState7: {
4435
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4436
- VLOG(2).AtLocation(whence.file(), whence.line())
4437
- << "seq[" << this << "]: begin poll step 8/12";
4438
- }
4229
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4230
+ .AtLocation(whence.file(), whence.line())
4231
+ << "seq[" << this << "]: begin poll step 8/12";
4439
4232
  auto result = prior.prior.prior.prior.current_promise();
4440
4233
  PromiseResult7* p = result.value_if_ready();
4441
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4442
- VLOG(2).AtLocation(whence.file(), whence.line())
4443
- << "seq[" << this << "]: poll step 8/12 gets "
4444
- << (p != nullptr
4445
- ? (PromiseResultTraits7::IsOk(*p)
4446
- ? "ready"
4447
- : absl::StrCat(
4448
- "early-error:",
4449
- PromiseResultTraits7::ErrorString(*p))
4450
- .c_str())
4451
- : "pending");
4452
- }
4234
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4235
+ .AtLocation(whence.file(), whence.line())
4236
+ << "seq[" << this << "]: poll step 8/12 gets "
4237
+ << (p != nullptr
4238
+ ? (PromiseResultTraits7::IsOk(*p)
4239
+ ? "ready"
4240
+ : absl::StrCat("early-error:",
4241
+ PromiseResultTraits7::ErrorString(*p))
4242
+ .c_str())
4243
+ : "pending");
4453
4244
  if (p == nullptr) return Pending{};
4454
4245
  if (!PromiseResultTraits7::IsOk(*p)) {
4455
4246
  return PromiseResultTraits7::template ReturnValue<Result>(
@@ -4464,24 +4255,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4464
4255
  }
4465
4256
  ABSL_FALLTHROUGH_INTENDED;
4466
4257
  case State::kState8: {
4467
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4468
- VLOG(2).AtLocation(whence.file(), whence.line())
4469
- << "seq[" << this << "]: begin poll step 9/12";
4470
- }
4258
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4259
+ .AtLocation(whence.file(), whence.line())
4260
+ << "seq[" << this << "]: begin poll step 9/12";
4471
4261
  auto result = prior.prior.prior.current_promise();
4472
4262
  PromiseResult8* p = result.value_if_ready();
4473
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4474
- VLOG(2).AtLocation(whence.file(), whence.line())
4475
- << "seq[" << this << "]: poll step 9/12 gets "
4476
- << (p != nullptr
4477
- ? (PromiseResultTraits8::IsOk(*p)
4478
- ? "ready"
4479
- : absl::StrCat(
4480
- "early-error:",
4481
- PromiseResultTraits8::ErrorString(*p))
4482
- .c_str())
4483
- : "pending");
4484
- }
4263
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4264
+ .AtLocation(whence.file(), whence.line())
4265
+ << "seq[" << this << "]: poll step 9/12 gets "
4266
+ << (p != nullptr
4267
+ ? (PromiseResultTraits8::IsOk(*p)
4268
+ ? "ready"
4269
+ : absl::StrCat("early-error:",
4270
+ PromiseResultTraits8::ErrorString(*p))
4271
+ .c_str())
4272
+ : "pending");
4485
4273
  if (p == nullptr) return Pending{};
4486
4274
  if (!PromiseResultTraits8::IsOk(*p)) {
4487
4275
  return PromiseResultTraits8::template ReturnValue<Result>(
@@ -4496,24 +4284,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4496
4284
  }
4497
4285
  ABSL_FALLTHROUGH_INTENDED;
4498
4286
  case State::kState9: {
4499
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4500
- VLOG(2).AtLocation(whence.file(), whence.line())
4501
- << "seq[" << this << "]: begin poll step 10/12";
4502
- }
4287
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4288
+ .AtLocation(whence.file(), whence.line())
4289
+ << "seq[" << this << "]: begin poll step 10/12";
4503
4290
  auto result = prior.prior.current_promise();
4504
4291
  PromiseResult9* p = result.value_if_ready();
4505
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4506
- VLOG(2).AtLocation(whence.file(), whence.line())
4507
- << "seq[" << this << "]: poll step 10/12 gets "
4508
- << (p != nullptr
4509
- ? (PromiseResultTraits9::IsOk(*p)
4510
- ? "ready"
4511
- : absl::StrCat(
4512
- "early-error:",
4513
- PromiseResultTraits9::ErrorString(*p))
4514
- .c_str())
4515
- : "pending");
4516
- }
4292
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4293
+ .AtLocation(whence.file(), whence.line())
4294
+ << "seq[" << this << "]: poll step 10/12 gets "
4295
+ << (p != nullptr
4296
+ ? (PromiseResultTraits9::IsOk(*p)
4297
+ ? "ready"
4298
+ : absl::StrCat("early-error:",
4299
+ PromiseResultTraits9::ErrorString(*p))
4300
+ .c_str())
4301
+ : "pending");
4517
4302
  if (p == nullptr) return Pending{};
4518
4303
  if (!PromiseResultTraits9::IsOk(*p)) {
4519
4304
  return PromiseResultTraits9::template ReturnValue<Result>(
@@ -4528,24 +4313,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4528
4313
  }
4529
4314
  ABSL_FALLTHROUGH_INTENDED;
4530
4315
  case State::kState10: {
4531
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4532
- VLOG(2).AtLocation(whence.file(), whence.line())
4533
- << "seq[" << this << "]: begin poll step 11/12";
4534
- }
4316
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4317
+ .AtLocation(whence.file(), whence.line())
4318
+ << "seq[" << this << "]: begin poll step 11/12";
4535
4319
  auto result = prior.current_promise();
4536
4320
  PromiseResult10* p = result.value_if_ready();
4537
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4538
- VLOG(2).AtLocation(whence.file(), whence.line())
4539
- << "seq[" << this << "]: poll step 11/12 gets "
4540
- << (p != nullptr
4541
- ? (PromiseResultTraits10::IsOk(*p)
4542
- ? "ready"
4543
- : absl::StrCat(
4544
- "early-error:",
4545
- PromiseResultTraits10::ErrorString(*p))
4546
- .c_str())
4547
- : "pending");
4548
- }
4321
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4322
+ .AtLocation(whence.file(), whence.line())
4323
+ << "seq[" << this << "]: poll step 11/12 gets "
4324
+ << (p != nullptr
4325
+ ? (PromiseResultTraits10::IsOk(*p)
4326
+ ? "ready"
4327
+ : absl::StrCat(
4328
+ "early-error:",
4329
+ PromiseResultTraits10::ErrorString(*p))
4330
+ .c_str())
4331
+ : "pending");
4549
4332
  if (p == nullptr) return Pending{};
4550
4333
  if (!PromiseResultTraits10::IsOk(*p)) {
4551
4334
  return PromiseResultTraits10::template ReturnValue<Result>(
@@ -4561,16 +4344,14 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10> {
4561
4344
  ABSL_FALLTHROUGH_INTENDED;
4562
4345
  default:
4563
4346
  case State::kState11: {
4564
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4565
- VLOG(2).AtLocation(whence.file(), whence.line())
4566
- << "seq[" << this << "]: begin poll step 12/12";
4567
- }
4347
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4348
+ .AtLocation(whence.file(), whence.line())
4349
+ << "seq[" << this << "]: begin poll step 12/12";
4568
4350
  auto result = current_promise();
4569
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4570
- VLOG(2).AtLocation(whence.file(), whence.line())
4571
- << "seq[" << this << "]: poll step 12/12 gets "
4572
- << (result.ready() ? "ready" : "pending");
4573
- }
4351
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4352
+ .AtLocation(whence.file(), whence.line())
4353
+ << "seq[" << this << "]: poll step 12/12 gets "
4354
+ << (result.ready() ? "ready" : "pending");
4574
4355
  auto* p = result.value_if_ready();
4575
4356
  if (p == nullptr) return Pending{};
4576
4357
  return Result(std::move(*p));
@@ -4950,25 +4731,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
4950
4731
  GPR_ATTRIBUTE_ALWAYS_INLINE_FUNCTION Poll<Result> PollOnce() {
4951
4732
  switch (state) {
4952
4733
  case State::kState0: {
4953
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4954
- VLOG(2).AtLocation(whence.file(), whence.line())
4955
- << "seq[" << this << "]: begin poll step 1/13";
4956
- }
4734
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4735
+ .AtLocation(whence.file(), whence.line())
4736
+ << "seq[" << this << "]: begin poll step 1/13";
4957
4737
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
4958
4738
  .prior.prior.prior.current_promise();
4959
4739
  PromiseResult0* p = result.value_if_ready();
4960
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4961
- VLOG(2).AtLocation(whence.file(), whence.line())
4962
- << "seq[" << this << "]: poll step 1/13 gets "
4963
- << (p != nullptr
4964
- ? (PromiseResultTraits0::IsOk(*p)
4965
- ? "ready"
4966
- : absl::StrCat(
4967
- "early-error:",
4968
- PromiseResultTraits0::ErrorString(*p))
4969
- .c_str())
4970
- : "pending");
4971
- }
4740
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4741
+ .AtLocation(whence.file(), whence.line())
4742
+ << "seq[" << this << "]: poll step 1/13 gets "
4743
+ << (p != nullptr
4744
+ ? (PromiseResultTraits0::IsOk(*p)
4745
+ ? "ready"
4746
+ : absl::StrCat("early-error:",
4747
+ PromiseResultTraits0::ErrorString(*p))
4748
+ .c_str())
4749
+ : "pending");
4972
4750
  if (p == nullptr) return Pending{};
4973
4751
  if (!PromiseResultTraits0::IsOk(*p)) {
4974
4752
  return PromiseResultTraits0::template ReturnValue<Result>(
@@ -4989,25 +4767,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
4989
4767
  }
4990
4768
  ABSL_FALLTHROUGH_INTENDED;
4991
4769
  case State::kState1: {
4992
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
4993
- VLOG(2).AtLocation(whence.file(), whence.line())
4994
- << "seq[" << this << "]: begin poll step 2/13";
4995
- }
4770
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4771
+ .AtLocation(whence.file(), whence.line())
4772
+ << "seq[" << this << "]: begin poll step 2/13";
4996
4773
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
4997
4774
  .prior.prior.current_promise();
4998
4775
  PromiseResult1* p = result.value_if_ready();
4999
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5000
- VLOG(2).AtLocation(whence.file(), whence.line())
5001
- << "seq[" << this << "]: poll step 2/13 gets "
5002
- << (p != nullptr
5003
- ? (PromiseResultTraits1::IsOk(*p)
5004
- ? "ready"
5005
- : absl::StrCat(
5006
- "early-error:",
5007
- PromiseResultTraits1::ErrorString(*p))
5008
- .c_str())
5009
- : "pending");
5010
- }
4776
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4777
+ .AtLocation(whence.file(), whence.line())
4778
+ << "seq[" << this << "]: poll step 2/13 gets "
4779
+ << (p != nullptr
4780
+ ? (PromiseResultTraits1::IsOk(*p)
4781
+ ? "ready"
4782
+ : absl::StrCat("early-error:",
4783
+ PromiseResultTraits1::ErrorString(*p))
4784
+ .c_str())
4785
+ : "pending");
5011
4786
  if (p == nullptr) return Pending{};
5012
4787
  if (!PromiseResultTraits1::IsOk(*p)) {
5013
4788
  return PromiseResultTraits1::template ReturnValue<Result>(
@@ -5028,25 +4803,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5028
4803
  }
5029
4804
  ABSL_FALLTHROUGH_INTENDED;
5030
4805
  case State::kState2: {
5031
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5032
- VLOG(2).AtLocation(whence.file(), whence.line())
5033
- << "seq[" << this << "]: begin poll step 3/13";
5034
- }
4806
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4807
+ .AtLocation(whence.file(), whence.line())
4808
+ << "seq[" << this << "]: begin poll step 3/13";
5035
4809
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
5036
4810
  .prior.current_promise();
5037
4811
  PromiseResult2* p = result.value_if_ready();
5038
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5039
- VLOG(2).AtLocation(whence.file(), whence.line())
5040
- << "seq[" << this << "]: poll step 3/13 gets "
5041
- << (p != nullptr
5042
- ? (PromiseResultTraits2::IsOk(*p)
5043
- ? "ready"
5044
- : absl::StrCat(
5045
- "early-error:",
5046
- PromiseResultTraits2::ErrorString(*p))
5047
- .c_str())
5048
- : "pending");
5049
- }
4812
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4813
+ .AtLocation(whence.file(), whence.line())
4814
+ << "seq[" << this << "]: poll step 3/13 gets "
4815
+ << (p != nullptr
4816
+ ? (PromiseResultTraits2::IsOk(*p)
4817
+ ? "ready"
4818
+ : absl::StrCat("early-error:",
4819
+ PromiseResultTraits2::ErrorString(*p))
4820
+ .c_str())
4821
+ : "pending");
5050
4822
  if (p == nullptr) return Pending{};
5051
4823
  if (!PromiseResultTraits2::IsOk(*p)) {
5052
4824
  return PromiseResultTraits2::template ReturnValue<Result>(
@@ -5067,25 +4839,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5067
4839
  }
5068
4840
  ABSL_FALLTHROUGH_INTENDED;
5069
4841
  case State::kState3: {
5070
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5071
- VLOG(2).AtLocation(whence.file(), whence.line())
5072
- << "seq[" << this << "]: begin poll step 4/13";
5073
- }
4842
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4843
+ .AtLocation(whence.file(), whence.line())
4844
+ << "seq[" << this << "]: begin poll step 4/13";
5074
4845
  auto result = prior.prior.prior.prior.prior.prior.prior.prior.prior
5075
4846
  .current_promise();
5076
4847
  PromiseResult3* p = result.value_if_ready();
5077
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5078
- VLOG(2).AtLocation(whence.file(), whence.line())
5079
- << "seq[" << this << "]: poll step 4/13 gets "
5080
- << (p != nullptr
5081
- ? (PromiseResultTraits3::IsOk(*p)
5082
- ? "ready"
5083
- : absl::StrCat(
5084
- "early-error:",
5085
- PromiseResultTraits3::ErrorString(*p))
5086
- .c_str())
5087
- : "pending");
5088
- }
4848
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4849
+ .AtLocation(whence.file(), whence.line())
4850
+ << "seq[" << this << "]: poll step 4/13 gets "
4851
+ << (p != nullptr
4852
+ ? (PromiseResultTraits3::IsOk(*p)
4853
+ ? "ready"
4854
+ : absl::StrCat("early-error:",
4855
+ PromiseResultTraits3::ErrorString(*p))
4856
+ .c_str())
4857
+ : "pending");
5089
4858
  if (p == nullptr) return Pending{};
5090
4859
  if (!PromiseResultTraits3::IsOk(*p)) {
5091
4860
  return PromiseResultTraits3::template ReturnValue<Result>(
@@ -5105,25 +4874,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5105
4874
  }
5106
4875
  ABSL_FALLTHROUGH_INTENDED;
5107
4876
  case State::kState4: {
5108
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5109
- VLOG(2).AtLocation(whence.file(), whence.line())
5110
- << "seq[" << this << "]: begin poll step 5/13";
5111
- }
4877
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4878
+ .AtLocation(whence.file(), whence.line())
4879
+ << "seq[" << this << "]: begin poll step 5/13";
5112
4880
  auto result =
5113
4881
  prior.prior.prior.prior.prior.prior.prior.prior.current_promise();
5114
4882
  PromiseResult4* p = result.value_if_ready();
5115
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5116
- VLOG(2).AtLocation(whence.file(), whence.line())
5117
- << "seq[" << this << "]: poll step 5/13 gets "
5118
- << (p != nullptr
5119
- ? (PromiseResultTraits4::IsOk(*p)
5120
- ? "ready"
5121
- : absl::StrCat(
5122
- "early-error:",
5123
- PromiseResultTraits4::ErrorString(*p))
5124
- .c_str())
5125
- : "pending");
5126
- }
4883
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4884
+ .AtLocation(whence.file(), whence.line())
4885
+ << "seq[" << this << "]: poll step 5/13 gets "
4886
+ << (p != nullptr
4887
+ ? (PromiseResultTraits4::IsOk(*p)
4888
+ ? "ready"
4889
+ : absl::StrCat("early-error:",
4890
+ PromiseResultTraits4::ErrorString(*p))
4891
+ .c_str())
4892
+ : "pending");
5127
4893
  if (p == nullptr) return Pending{};
5128
4894
  if (!PromiseResultTraits4::IsOk(*p)) {
5129
4895
  return PromiseResultTraits4::template ReturnValue<Result>(
@@ -5141,25 +4907,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5141
4907
  }
5142
4908
  ABSL_FALLTHROUGH_INTENDED;
5143
4909
  case State::kState5: {
5144
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5145
- VLOG(2).AtLocation(whence.file(), whence.line())
5146
- << "seq[" << this << "]: begin poll step 6/13";
5147
- }
4910
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4911
+ .AtLocation(whence.file(), whence.line())
4912
+ << "seq[" << this << "]: begin poll step 6/13";
5148
4913
  auto result =
5149
4914
  prior.prior.prior.prior.prior.prior.prior.current_promise();
5150
4915
  PromiseResult5* p = result.value_if_ready();
5151
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5152
- VLOG(2).AtLocation(whence.file(), whence.line())
5153
- << "seq[" << this << "]: poll step 6/13 gets "
5154
- << (p != nullptr
5155
- ? (PromiseResultTraits5::IsOk(*p)
5156
- ? "ready"
5157
- : absl::StrCat(
5158
- "early-error:",
5159
- PromiseResultTraits5::ErrorString(*p))
5160
- .c_str())
5161
- : "pending");
5162
- }
4916
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4917
+ .AtLocation(whence.file(), whence.line())
4918
+ << "seq[" << this << "]: poll step 6/13 gets "
4919
+ << (p != nullptr
4920
+ ? (PromiseResultTraits5::IsOk(*p)
4921
+ ? "ready"
4922
+ : absl::StrCat("early-error:",
4923
+ PromiseResultTraits5::ErrorString(*p))
4924
+ .c_str())
4925
+ : "pending");
5163
4926
  if (p == nullptr) return Pending{};
5164
4927
  if (!PromiseResultTraits5::IsOk(*p)) {
5165
4928
  return PromiseResultTraits5::template ReturnValue<Result>(
@@ -5176,24 +4939,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5176
4939
  }
5177
4940
  ABSL_FALLTHROUGH_INTENDED;
5178
4941
  case State::kState6: {
5179
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5180
- VLOG(2).AtLocation(whence.file(), whence.line())
5181
- << "seq[" << this << "]: begin poll step 7/13";
5182
- }
4942
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4943
+ .AtLocation(whence.file(), whence.line())
4944
+ << "seq[" << this << "]: begin poll step 7/13";
5183
4945
  auto result = prior.prior.prior.prior.prior.prior.current_promise();
5184
4946
  PromiseResult6* p = result.value_if_ready();
5185
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5186
- VLOG(2).AtLocation(whence.file(), whence.line())
5187
- << "seq[" << this << "]: poll step 7/13 gets "
5188
- << (p != nullptr
5189
- ? (PromiseResultTraits6::IsOk(*p)
5190
- ? "ready"
5191
- : absl::StrCat(
5192
- "early-error:",
5193
- PromiseResultTraits6::ErrorString(*p))
5194
- .c_str())
5195
- : "pending");
5196
- }
4947
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4948
+ .AtLocation(whence.file(), whence.line())
4949
+ << "seq[" << this << "]: poll step 7/13 gets "
4950
+ << (p != nullptr
4951
+ ? (PromiseResultTraits6::IsOk(*p)
4952
+ ? "ready"
4953
+ : absl::StrCat("early-error:",
4954
+ PromiseResultTraits6::ErrorString(*p))
4955
+ .c_str())
4956
+ : "pending");
5197
4957
  if (p == nullptr) return Pending{};
5198
4958
  if (!PromiseResultTraits6::IsOk(*p)) {
5199
4959
  return PromiseResultTraits6::template ReturnValue<Result>(
@@ -5209,24 +4969,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5209
4969
  }
5210
4970
  ABSL_FALLTHROUGH_INTENDED;
5211
4971
  case State::kState7: {
5212
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5213
- VLOG(2).AtLocation(whence.file(), whence.line())
5214
- << "seq[" << this << "]: begin poll step 8/13";
5215
- }
4972
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4973
+ .AtLocation(whence.file(), whence.line())
4974
+ << "seq[" << this << "]: begin poll step 8/13";
5216
4975
  auto result = prior.prior.prior.prior.prior.current_promise();
5217
4976
  PromiseResult7* p = result.value_if_ready();
5218
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5219
- VLOG(2).AtLocation(whence.file(), whence.line())
5220
- << "seq[" << this << "]: poll step 8/13 gets "
5221
- << (p != nullptr
5222
- ? (PromiseResultTraits7::IsOk(*p)
5223
- ? "ready"
5224
- : absl::StrCat(
5225
- "early-error:",
5226
- PromiseResultTraits7::ErrorString(*p))
5227
- .c_str())
5228
- : "pending");
5229
- }
4977
+ GRPC_TRACE_VLOG(promise_primitives, 2)
4978
+ .AtLocation(whence.file(), whence.line())
4979
+ << "seq[" << this << "]: poll step 8/13 gets "
4980
+ << (p != nullptr
4981
+ ? (PromiseResultTraits7::IsOk(*p)
4982
+ ? "ready"
4983
+ : absl::StrCat("early-error:",
4984
+ PromiseResultTraits7::ErrorString(*p))
4985
+ .c_str())
4986
+ : "pending");
5230
4987
  if (p == nullptr) return Pending{};
5231
4988
  if (!PromiseResultTraits7::IsOk(*p)) {
5232
4989
  return PromiseResultTraits7::template ReturnValue<Result>(
@@ -5242,24 +4999,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5242
4999
  }
5243
5000
  ABSL_FALLTHROUGH_INTENDED;
5244
5001
  case State::kState8: {
5245
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5246
- VLOG(2).AtLocation(whence.file(), whence.line())
5247
- << "seq[" << this << "]: begin poll step 9/13";
5248
- }
5002
+ GRPC_TRACE_VLOG(promise_primitives, 2)
5003
+ .AtLocation(whence.file(), whence.line())
5004
+ << "seq[" << this << "]: begin poll step 9/13";
5249
5005
  auto result = prior.prior.prior.prior.current_promise();
5250
5006
  PromiseResult8* p = result.value_if_ready();
5251
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5252
- VLOG(2).AtLocation(whence.file(), whence.line())
5253
- << "seq[" << this << "]: poll step 9/13 gets "
5254
- << (p != nullptr
5255
- ? (PromiseResultTraits8::IsOk(*p)
5256
- ? "ready"
5257
- : absl::StrCat(
5258
- "early-error:",
5259
- PromiseResultTraits8::ErrorString(*p))
5260
- .c_str())
5261
- : "pending");
5262
- }
5007
+ GRPC_TRACE_VLOG(promise_primitives, 2)
5008
+ .AtLocation(whence.file(), whence.line())
5009
+ << "seq[" << this << "]: poll step 9/13 gets "
5010
+ << (p != nullptr
5011
+ ? (PromiseResultTraits8::IsOk(*p)
5012
+ ? "ready"
5013
+ : absl::StrCat("early-error:",
5014
+ PromiseResultTraits8::ErrorString(*p))
5015
+ .c_str())
5016
+ : "pending");
5263
5017
  if (p == nullptr) return Pending{};
5264
5018
  if (!PromiseResultTraits8::IsOk(*p)) {
5265
5019
  return PromiseResultTraits8::template ReturnValue<Result>(
@@ -5274,24 +5028,21 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5274
5028
  }
5275
5029
  ABSL_FALLTHROUGH_INTENDED;
5276
5030
  case State::kState9: {
5277
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5278
- VLOG(2).AtLocation(whence.file(), whence.line())
5279
- << "seq[" << this << "]: begin poll step 10/13";
5280
- }
5031
+ GRPC_TRACE_VLOG(promise_primitives, 2)
5032
+ .AtLocation(whence.file(), whence.line())
5033
+ << "seq[" << this << "]: begin poll step 10/13";
5281
5034
  auto result = prior.prior.prior.current_promise();
5282
5035
  PromiseResult9* p = result.value_if_ready();
5283
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5284
- VLOG(2).AtLocation(whence.file(), whence.line())
5285
- << "seq[" << this << "]: poll step 10/13 gets "
5286
- << (p != nullptr
5287
- ? (PromiseResultTraits9::IsOk(*p)
5288
- ? "ready"
5289
- : absl::StrCat(
5290
- "early-error:",
5291
- PromiseResultTraits9::ErrorString(*p))
5292
- .c_str())
5293
- : "pending");
5294
- }
5036
+ GRPC_TRACE_VLOG(promise_primitives, 2)
5037
+ .AtLocation(whence.file(), whence.line())
5038
+ << "seq[" << this << "]: poll step 10/13 gets "
5039
+ << (p != nullptr
5040
+ ? (PromiseResultTraits9::IsOk(*p)
5041
+ ? "ready"
5042
+ : absl::StrCat("early-error:",
5043
+ PromiseResultTraits9::ErrorString(*p))
5044
+ .c_str())
5045
+ : "pending");
5295
5046
  if (p == nullptr) return Pending{};
5296
5047
  if (!PromiseResultTraits9::IsOk(*p)) {
5297
5048
  return PromiseResultTraits9::template ReturnValue<Result>(
@@ -5306,24 +5057,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5306
5057
  }
5307
5058
  ABSL_FALLTHROUGH_INTENDED;
5308
5059
  case State::kState10: {
5309
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5310
- VLOG(2).AtLocation(whence.file(), whence.line())
5311
- << "seq[" << this << "]: begin poll step 11/13";
5312
- }
5060
+ GRPC_TRACE_VLOG(promise_primitives, 2)
5061
+ .AtLocation(whence.file(), whence.line())
5062
+ << "seq[" << this << "]: begin poll step 11/13";
5313
5063
  auto result = prior.prior.current_promise();
5314
5064
  PromiseResult10* p = result.value_if_ready();
5315
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5316
- VLOG(2).AtLocation(whence.file(), whence.line())
5317
- << "seq[" << this << "]: poll step 11/13 gets "
5318
- << (p != nullptr
5319
- ? (PromiseResultTraits10::IsOk(*p)
5320
- ? "ready"
5321
- : absl::StrCat(
5322
- "early-error:",
5323
- PromiseResultTraits10::ErrorString(*p))
5324
- .c_str())
5325
- : "pending");
5326
- }
5065
+ GRPC_TRACE_VLOG(promise_primitives, 2)
5066
+ .AtLocation(whence.file(), whence.line())
5067
+ << "seq[" << this << "]: poll step 11/13 gets "
5068
+ << (p != nullptr
5069
+ ? (PromiseResultTraits10::IsOk(*p)
5070
+ ? "ready"
5071
+ : absl::StrCat(
5072
+ "early-error:",
5073
+ PromiseResultTraits10::ErrorString(*p))
5074
+ .c_str())
5075
+ : "pending");
5327
5076
  if (p == nullptr) return Pending{};
5328
5077
  if (!PromiseResultTraits10::IsOk(*p)) {
5329
5078
  return PromiseResultTraits10::template ReturnValue<Result>(
@@ -5338,24 +5087,22 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5338
5087
  }
5339
5088
  ABSL_FALLTHROUGH_INTENDED;
5340
5089
  case State::kState11: {
5341
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5342
- VLOG(2).AtLocation(whence.file(), whence.line())
5343
- << "seq[" << this << "]: begin poll step 12/13";
5344
- }
5090
+ GRPC_TRACE_VLOG(promise_primitives, 2)
5091
+ .AtLocation(whence.file(), whence.line())
5092
+ << "seq[" << this << "]: begin poll step 12/13";
5345
5093
  auto result = prior.current_promise();
5346
5094
  PromiseResult11* p = result.value_if_ready();
5347
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5348
- VLOG(2).AtLocation(whence.file(), whence.line())
5349
- << "seq[" << this << "]: poll step 12/13 gets "
5350
- << (p != nullptr
5351
- ? (PromiseResultTraits11::IsOk(*p)
5352
- ? "ready"
5353
- : absl::StrCat(
5354
- "early-error:",
5355
- PromiseResultTraits11::ErrorString(*p))
5356
- .c_str())
5357
- : "pending");
5358
- }
5095
+ GRPC_TRACE_VLOG(promise_primitives, 2)
5096
+ .AtLocation(whence.file(), whence.line())
5097
+ << "seq[" << this << "]: poll step 12/13 gets "
5098
+ << (p != nullptr
5099
+ ? (PromiseResultTraits11::IsOk(*p)
5100
+ ? "ready"
5101
+ : absl::StrCat(
5102
+ "early-error:",
5103
+ PromiseResultTraits11::ErrorString(*p))
5104
+ .c_str())
5105
+ : "pending");
5359
5106
  if (p == nullptr) return Pending{};
5360
5107
  if (!PromiseResultTraits11::IsOk(*p)) {
5361
5108
  return PromiseResultTraits11::template ReturnValue<Result>(
@@ -5371,16 +5118,14 @@ struct SeqState<Traits, P, F0, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11> {
5371
5118
  ABSL_FALLTHROUGH_INTENDED;
5372
5119
  default:
5373
5120
  case State::kState12: {
5374
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5375
- VLOG(2).AtLocation(whence.file(), whence.line())
5376
- << "seq[" << this << "]: begin poll step 13/13";
5377
- }
5121
+ GRPC_TRACE_VLOG(promise_primitives, 2)
5122
+ .AtLocation(whence.file(), whence.line())
5123
+ << "seq[" << this << "]: begin poll step 13/13";
5378
5124
  auto result = current_promise();
5379
- if (GRPC_TRACE_FLAG_ENABLED(promise_primitives)) {
5380
- VLOG(2).AtLocation(whence.file(), whence.line())
5381
- << "seq[" << this << "]: poll step 13/13 gets "
5382
- << (result.ready() ? "ready" : "pending");
5383
- }
5125
+ GRPC_TRACE_VLOG(promise_primitives, 2)
5126
+ .AtLocation(whence.file(), whence.line())
5127
+ << "seq[" << this << "]: poll step 13/13 gets "
5128
+ << (result.ready() ? "ready" : "pending");
5384
5129
  auto* p = result.value_if_ready();
5385
5130
  if (p == nullptr) return Pending{};
5386
5131
  return Result(std::move(*p));