1#![cfg_attr(docsrs, feature(doc_cfg, doc_notable_trait))]
2#![doc = include_str!("../README.md")]
3extern crate self as typestate_pipeline;
17
18#[doc(inline)]
19pub use typestate_pipeline_core::{
20 BoxFuture, InFlight, Mode, No, Pipeline, Pipelined, Resolved, Satisfiable, Satisfied, Storage,
21 Yes,
22};
23#[doc(inline)]
24pub use typestate_pipeline_macros::{TypestateFactory, transitions};
25
26#[doc(hidden)]
30pub mod __private {
31 pub use core::marker::PhantomData;
32 pub use core::mem::{ManuallyDrop, MaybeUninit};
33 pub use core::pin::Pin;
34 pub use core::ptr;
35 pub use std::boxed::Box;
36
37 pub use typestate_pipeline_core::{
38 BoxFuture, InFlight, Mode, No, Pipeline, Pipelined, Resolved, Satisfiable, Satisfied,
39 Storage, Yes,
40 };
41}
42
43#[doc(hidden)]
44#[cfg(feature = "dataset-authoring-example")]
45#[cfg_attr(docsrs, doc(cfg(feature = "dataset-authoring-example")))]
46pub mod dataset_authoring;
47
48#[cfg(any(doc, docsrs))]
61pub mod guide {
62 #![doc = include_str!("../examples/expansions/lead.md")]
63 #![doc = include_str!("../examples/expansions/factory/intro.md")]
65 #![doc = include_str!("../examples/expansions/factory/minimal.description.md")]
67 #![doc = include_str!("../examples/expansions/factory/minimal.rs")]
70 #![doc = include_str!("../examples/expansions/factory/minimal.expansion.md")]
75 #![doc = include_str!("../examples/expansions/factory/required_and_optional.description.md")]
77 #![doc = include_str!("../examples/expansions/factory/required_and_optional.rs")]
80 #![doc = include_str!("../examples/expansions/factory/required_and_optional.expansion.md")]
85 #![doc = include_str!("../examples/expansions/factory/default.description.md")]
87 #![doc = include_str!("../examples/expansions/factory/default.rs")]
90 #![doc = include_str!("../examples/expansions/factory/default.expansion.md")]
95 #![doc = include_str!("../examples/expansions/factory/removable.description.md")]
97 #![doc = include_str!("../examples/expansions/factory/removable.rs")]
100 #![doc = include_str!("../examples/expansions/factory/removable.expansion.md")]
105 #![doc = include_str!("../examples/expansions/factory/overridable.description.md")]
107 #![doc = include_str!("../examples/expansions/factory/overridable.rs")]
110 #![doc = include_str!("../examples/expansions/factory/overridable.expansion.md")]
115 #![doc = include_str!("../examples/expansions/factory/rename.description.md")]
117 #![doc = include_str!("../examples/expansions/factory/rename.rs")]
120 #![doc = include_str!("../examples/expansions/factory/rename.expansion.md")]
125 #![doc = include_str!("../examples/expansions/factory/setter_transformer.description.md")]
127 #![doc = include_str!("../examples/expansions/factory/setter_transformer.rs")]
130 #![doc = include_str!("../examples/expansions/factory/setter_transformer.expansion.md")]
135 #![doc = include_str!("../examples/expansions/factory/setter_input_type.description.md")]
137 #![doc = include_str!("../examples/expansions/factory/setter_input_type.rs")]
140 #![doc = include_str!("../examples/expansions/factory/setter_input_type.expansion.md")]
145 #![doc = include_str!("../examples/expansions/factory/setter_fallible.description.md")]
147 #![doc = include_str!("../examples/expansions/factory/setter_fallible.rs")]
150 #![doc = include_str!("../examples/expansions/factory/setter_fallible.expansion.md")]
155 #![doc = include_str!("../examples/expansions/factory/setter_async.description.md")]
157 #![doc = include_str!("../examples/expansions/factory/setter_async.rs")]
160 #![doc = include_str!("../examples/expansions/factory/setter_async.expansion.md")]
165 #![doc = include_str!("../examples/expansions/factory/internal.description.md")]
167 #![doc = include_str!("../examples/expansions/factory/internal.rs")]
170 #![doc = include_str!("../examples/expansions/factory/internal.expansion.md")]
175 #![doc = include_str!("../examples/expansions/factory/finalize_async.description.md")]
177 #![doc = include_str!("../examples/expansions/factory/finalize_async.rs")]
180 #![doc = include_str!("../examples/expansions/factory/finalize_async.expansion.md")]
185 #![doc = include_str!("../examples/expansions/factory/ready_trait.description.md")]
187 #![doc = include_str!("../examples/expansions/factory/ready_trait.rs")]
190 #![doc = include_str!("../examples/expansions/factory/ready_trait.expansion.md")]
195 #![doc = include_str!("../examples/expansions/factory/empty_alias.description.md")]
197 #![doc = include_str!("../examples/expansions/factory/empty_alias.rs")]
200 #![doc = include_str!("../examples/expansions/factory/empty_alias.expansion.md")]
205 #![doc = include_str!("../examples/expansions/factory/pipeline_arm.description.md")]
207 #![doc = include_str!("../examples/expansions/factory/pipeline_arm.rs")]
210 #![doc = include_str!("../examples/expansions/factory/pipeline_arm.expansion.md")]
215 #![doc = include_str!("../examples/expansions/factory/no_unsafe.description.md")]
217 #![doc = include_str!("../examples/expansions/factory/no_unsafe.rs")]
220 #![doc = include_str!("../examples/expansions/factory/no_unsafe.expansion.md")]
225 #![doc = include_str!("../examples/expansions/transitions/intro.md")]
227 #![doc = include_str!("../examples/expansions/transitions/sync_infallible.description.md")]
229 #![doc = include_str!("../examples/expansions/transitions/sync_infallible.rs")]
232 #![doc = include_str!("../examples/expansions/transitions/sync_infallible.expansion.md")]
237 #![doc = include_str!("../examples/expansions/transitions/sync_fallible.description.md")]
239 #![doc = include_str!("../examples/expansions/transitions/sync_fallible.rs")]
242 #![doc = include_str!("../examples/expansions/transitions/sync_fallible.expansion.md")]
247 #![doc = include_str!("../examples/expansions/transitions/async_deferred.description.md")]
249 #![doc = include_str!("../examples/expansions/transitions/async_deferred.rs")]
252 #![doc = include_str!("../examples/expansions/transitions/async_deferred.expansion.md")]
257 #![doc = include_str!("../examples/expansions/transitions/async_breakpoint.description.md")]
259 #![doc = include_str!("../examples/expansions/transitions/async_breakpoint.rs")]
262 #![doc = include_str!("../examples/expansions/transitions/async_breakpoint.expansion.md")]
267 #![doc = include_str!("../examples/expansions/pipelined/intro.md")]
269 #![doc = include_str!("../examples/expansions/pipelined/minimal.description.md")]
271 #![doc = include_str!("../examples/expansions/pipelined/minimal.rs")]
274 #![doc = include_str!("../examples/expansions/pipelined/minimal.expansion.md")]
279 #![doc = include_str!("../examples/expansions/pipelined/inspect_combinator.description.md")]
281 #![doc = include_str!("../examples/expansions/pipelined/inspect_combinator.rs")]
284 #![doc = include_str!("../examples/expansions/pipelined/inspect_combinator.expansion.md")]
289 #![doc = include_str!("../examples/expansions/pipelined/with_tag.description.md")]
291 #![doc = include_str!("../examples/expansions/pipelined/with_tag.rs")]
294 #![doc = include_str!("../examples/expansions/pipelined/with_tag.expansion.md")]
299 #![doc = include_str!("../examples/expansions/impl_pipelined/intro.md")]
301 #![doc = include_str!("../examples/expansions/impl_pipelined/minimal.description.md")]
303 #![doc = include_str!("../examples/expansions/impl_pipelined/minimal.rs")]
306 #![doc = include_str!("../examples/expansions/impl_pipelined/minimal.expansion.md")]
311 #![doc = include_str!("../examples/expansions/combo/intro.md")]
313 #![doc = include_str!("../examples/expansions/combo/factory_in_pipeline.description.md")]
315 #![doc = include_str!("../examples/expansions/combo/factory_in_pipeline.rs")]
318 }
320
321#[cfg(any(doc, docsrs))]
331pub mod tests {
332 pub mod factory {
334 #[doc = include_str!("../tests/factory/core/docs/tests.md")]
339 #[doc = include_str!("../tests/factory/core/docs/build_in_order.md")]
343 #[doc = include_str!("../tests/factory/core/tests/build_in_order.rs")]
346 #[doc = include_str!("../tests/factory/core/docs/build_in_arbitrary_order.md")]
349 #[doc = include_str!("../tests/factory/core/tests/build_in_arbitrary_order.rs")]
352 #[doc = include_str!("../tests/factory/core/docs/default_helper_fills_in_optional.md")]
355 #[doc = include_str!("../tests/factory/core/tests/default_helper_fills_in_optional.rs")]
358 #[doc = include_str!("../tests/factory/core/docs/getter_borrows_set_field.md")]
361 #[doc = include_str!("../tests/factory/core/tests/getter_borrows_set_field.rs")]
364 #[doc = include_str!("../tests/factory/core/docs/empty_bag_dropped_does_not_touch_uninit_fields.md")]
367 #[doc = include_str!("../tests/factory/core/tests/empty_bag_dropped_does_not_touch_uninit_fields.rs")]
370 #[doc = include_str!("../tests/factory/core/docs/partial_bag_dropped_drops_only_set_fields.md")]
373 #[doc = include_str!("../tests/factory/core/tests/partial_bag_dropped_drops_only_set_fields.rs")]
376 #[doc = include_str!("../tests/factory/core/docs/fully_populated_bag_dropped_drops_all.md")]
379 #[doc = include_str!("../tests/factory/core/tests/fully_populated_bag_dropped_drops_all.rs")]
382 #[doc = include_str!("../tests/factory/core/docs/finalize_does_not_double_drop.md")]
385 #[doc = include_str!("../tests/factory/core/tests/finalize_does_not_double_drop.rs")]
388 #[doc = include_str!("../tests/factory/core/docs/drop_field_drops_value_once.md")]
391 #[doc = include_str!("../tests/factory/core/tests/drop_field_drops_value_once.rs")]
394 #[doc = include_str!("../tests/factory/core/docs/drop_field_then_reset_doesnt_double_drop.md")]
397 #[doc = include_str!("../tests/factory/core/tests/drop_field_then_reset_doesnt_double_drop.rs")]
400 #[doc = include_str!("../tests/factory/core/docs/override_drops_old_value.md")]
403 #[doc = include_str!("../tests/factory/core/tests/override_drops_old_value.rs")]
406 #[doc = include_str!("../tests/factory/core/docs/finalize_uses_defaults_when_optional_no.md")]
409 #[doc = include_str!("../tests/factory/core/tests/finalize_uses_defaults_when_optional_no.rs")]
412 #[doc = include_str!("../tests/factory/core/docs/finalize_keeps_explicit_values_when_optional_yes.md")]
415 #[doc = include_str!("../tests/factory/core/tests/finalize_keeps_explicit_values_when_optional_yes.rs")]
418 #[doc = include_str!("../tests/factory/core/docs/finalize_mixes_set_and_default.md")]
421 #[doc = include_str!("../tests/factory/core/tests/finalize_mixes_set_and_default.rs")]
424 #[doc = include_str!("../tests/factory/core/docs/custom_bag_name.md")]
427 #[doc = include_str!("../tests/factory/core/tests/custom_bag_name.rs")]
430 #[doc = include_str!("../tests/factory/core/docs/custom_setter_name.md")]
433 #[doc = include_str!("../tests/factory/core/tests/custom_setter_name.rs")]
436 #[doc = include_str!("../tests/factory/core/docs/custom_transformer_fn.md")]
439 #[doc = include_str!("../tests/factory/core/tests/custom_transformer_fn.rs")]
442 #[doc = include_str!("../tests/factory/core/docs/fallible_transformer_success.md")]
445 #[doc = include_str!("../tests/factory/core/tests/fallible_transformer_success.rs")]
448 #[doc = include_str!("../tests/factory/core/docs/fallible_transformer_failure.md")]
451 #[doc = include_str!("../tests/factory/core/tests/fallible_transformer_failure.rs")]
454 #[doc = include_str!("../tests/factory/core/docs/shared.md")]
459 #[doc = include_str!("../tests/factory/core/tests/shared.rs")]
462 pub mod core {}
464
465 #[doc = include_str!("../tests/factory/async/docs/tests.md")]
470 #[doc = include_str!("../tests/factory/async/docs/standalone_async_setter_non_fallible.md")]
474 #[doc = include_str!("../tests/factory/async/tests/standalone_async_setter_non_fallible.rs")]
477 #[doc = include_str!("../tests/factory/async/docs/standalone_async_setter_fallible_failure.md")]
480 #[doc = include_str!("../tests/factory/async/tests/standalone_async_setter_fallible_failure.rs")]
483 #[doc = include_str!("../tests/factory/async/docs/standalone_async_finalize.md")]
486 #[doc = include_str!("../tests/factory/async/tests/standalone_async_finalize.rs")]
489 #[doc = include_str!("../tests/factory/async/docs/pipeline_async_setter_chains_through_inflight.md")]
492 #[doc = include_str!("../tests/factory/async/tests/pipeline_async_setter_chains_through_inflight.rs")]
495 #[doc = include_str!("../tests/factory/async/docs/pipeline_async_fallible_setter_propagates_error.md")]
498 #[doc = include_str!("../tests/factory/async/tests/pipeline_async_fallible_setter_propagates_error.rs")]
501 #[doc = include_str!("../tests/factory/async/docs/transitions_body_calls_finalize.md")]
504 #[doc = include_str!("../tests/factory/async/tests/transitions_body_calls_finalize.rs")]
507 #[doc = include_str!("../tests/factory/async/docs/error.md")]
512 #[doc = include_str!("../tests/factory/async/tests/error.rs")]
515 #[doc = include_str!("../tests/factory/async/docs/bags.md")]
518 #[doc = include_str!("../tests/factory/async/tests/bags.rs")]
521 #[doc = include_str!("../tests/factory/async/docs/carrier.md")]
524 #[doc = include_str!("../tests/factory/async/tests/carrier.rs")]
527 pub mod async_setters {}
529
530 #[doc = include_str!("../tests/factory/input_type/docs/tests.md")]
534 #[doc = include_str!("../tests/factory/input_type/docs/setter_takes_input_type_not_field_type.md")]
538 #[doc = include_str!("../tests/factory/input_type/tests/setter_takes_input_type_not_field_type.rs")]
541 #[doc = include_str!("../tests/factory/input_type/docs/default_helper_bypasses_transformer.md")]
544 #[doc = include_str!("../tests/factory/input_type/tests/default_helper_bypasses_transformer.rs")]
547 #[doc = include_str!("../tests/factory/input_type/docs/unset_default_field_uses_default_at_finalize.md")]
550 #[doc = include_str!("../tests/factory/input_type/tests/unset_default_field_uses_default_at_finalize.rs")]
553 #[doc = include_str!("../tests/factory/input_type/docs/shared.md")]
558 #[doc = include_str!("../tests/factory/input_type/tests/shared.rs")]
561 pub mod input_type {}
563
564 #[doc = include_str!("../tests/factory/internal_field/docs/tests.md")]
569 #[doc = include_str!("../tests/factory/internal_field/docs/constructor_takes_internal_field_as_argument.md")]
573 #[doc = include_str!("../tests/factory/internal_field/tests/constructor_takes_internal_field_as_argument.rs")]
576 #[doc = include_str!("../tests/factory/internal_field/docs/internal_getter_is_unconditional.md")]
579 #[doc = include_str!("../tests/factory/internal_field/tests/internal_getter_is_unconditional.rs")]
582 #[doc = include_str!("../tests/factory/internal_field/docs/internal_field_dropped_from_flag_generic_list.md")]
585 #[doc = include_str!("../tests/factory/internal_field/tests/internal_field_dropped_from_flag_generic_list.rs")]
588 #[doc = include_str!("../tests/factory/internal_field/docs/pipeline_arm_works_for_non_internal_fields.md")]
591 #[doc = include_str!("../tests/factory/internal_field/tests/pipeline_arm_works_for_non_internal_fields.rs")]
594 #[doc = include_str!("../tests/factory/internal_field/docs/finalize_passes_internal_field_through.md")]
597 #[doc = include_str!("../tests/factory/internal_field/tests/finalize_passes_internal_field_through.rs")]
600 #[doc = include_str!("../tests/factory/internal_field/docs/carrier_internal_getter_is_unconditional.md")]
603 #[doc = include_str!("../tests/factory/internal_field/tests/carrier_internal_getter_is_unconditional.rs")]
606 #[doc = include_str!("../tests/factory/internal_field/docs/carrier_non_internal_getter_gates_on_yes_flag.md")]
609 #[doc = include_str!("../tests/factory/internal_field/tests/carrier_non_internal_getter_gates_on_yes_flag.rs")]
612 #[doc = include_str!("../tests/factory/internal_field/docs/error.md")]
617 #[doc = include_str!("../tests/factory/internal_field/tests/error.rs")]
620 #[doc = include_str!("../tests/factory/internal_field/docs/carrier.md")]
623 #[doc = include_str!("../tests/factory/internal_field/tests/carrier.rs")]
626 pub mod internal_field {}
628
629 #[doc = include_str!("../tests/factory/ready_trait/docs/tests.md")]
634 #[doc = include_str!("../tests/factory/ready_trait/docs/ready_trait_is_implemented_when_required_flags_yes.md")]
638 #[doc = include_str!("../tests/factory/ready_trait/tests/ready_trait_is_implemented_when_required_flags_yes.rs")]
641 #[doc = include_str!("../tests/factory/ready_trait/docs/ready_trait_works_when_optional_set_too.md")]
644 #[doc = include_str!("../tests/factory/ready_trait/tests/ready_trait_works_when_optional_set_too.rs")]
647 #[doc = include_str!("../tests/factory/ready_trait/docs/dispatch_via_trait_matches_inherent_finalize.md")]
650 #[doc = include_str!("../tests/factory/ready_trait/tests/dispatch_via_trait_matches_inherent_finalize.rs")]
653 #[doc = include_str!("../tests/factory/ready_trait/docs/shared.md")]
658 #[doc = include_str!("../tests/factory/ready_trait/tests/shared.rs")]
661 pub mod ready_trait {}
663 }
664
665 pub mod transitions {
667 #[doc = include_str!("../tests/transitions/core/docs/tests.md")]
673 #[doc = include_str!("../tests/transitions/core/docs/full_chain_with_resolved_breakpoint_in_middle.md")]
677 #[doc = include_str!("../tests/transitions/core/tests/full_chain_with_resolved_breakpoint_in_middle.rs")]
680 #[doc = include_str!("../tests/transitions/core/docs/breakpoint_forces_explicit_await.md")]
683 #[doc = include_str!("../tests/transitions/core/tests/breakpoint_forces_explicit_await.rs")]
686 #[doc = include_str!("../tests/transitions/core/docs/sync_fallible_resolved_returns_result_directly.md")]
689 #[doc = include_str!("../tests/transitions/core/tests/sync_fallible_resolved_returns_result_directly.rs")]
692 #[doc = include_str!("../tests/transitions/core/docs/sync_fallible_propagates_through_inflight_chain.md")]
695 #[doc = include_str!("../tests/transitions/core/tests/sync_fallible_propagates_through_inflight_chain.rs")]
698 #[doc = include_str!("../tests/transitions/core/docs/intofuture_resolves_inflight_back_to_resolved.md")]
701 #[doc = include_str!("../tests/transitions/core/tests/intofuture_resolves_inflight_back_to_resolved.rs")]
704 #[doc = include_str!("../tests/transitions/core/docs/error.md")]
709 #[doc = include_str!("../tests/transitions/core/tests/error.rs")]
712 #[doc = include_str!("../tests/transitions/core/docs/phases.md")]
715 #[doc = include_str!("../tests/transitions/core/tests/phases.rs")]
718 #[doc = include_str!("../tests/transitions/core/docs/carrier.md")]
721 #[doc = include_str!("../tests/transitions/core/tests/carrier.rs")]
724 pub mod core {}
726
727 #[doc = include_str!("../tests/transitions/via_pipelined/docs/tests.md")]
732 #[doc = include_str!("../tests/transitions/via_pipelined/docs/transitions_chain_without_error_arg.md")]
736 #[doc = include_str!("../tests/transitions/via_pipelined/tests/transitions_chain_without_error_arg.rs")]
739 #[doc = include_str!("../tests/transitions/via_pipelined/docs/transitions_chain_propagates_error.md")]
742 #[doc = include_str!("../tests/transitions/via_pipelined/tests/transitions_chain_propagates_error.rs")]
745 #[doc = include_str!("../tests/transitions/via_pipelined/docs/factory_pipeline_arms_without_error_arg.md")]
748 #[doc = include_str!("../tests/transitions/via_pipelined/tests/factory_pipeline_arms_without_error_arg.rs")]
751 #[doc = include_str!("../tests/transitions/via_pipelined/docs/intofuture_provided_by_pipelined.md")]
754 #[doc = include_str!("../tests/transitions/via_pipelined/tests/intofuture_provided_by_pipelined.rs")]
757 #[doc = include_str!("../tests/transitions/via_pipelined/docs/error.md")]
762 #[doc = include_str!("../tests/transitions/via_pipelined/tests/error.rs")]
765 #[doc = include_str!("../tests/transitions/via_pipelined/docs/phases.md")]
768 #[doc = include_str!("../tests/transitions/via_pipelined/tests/phases.rs")]
771 #[doc = include_str!("../tests/transitions/via_pipelined/docs/carrier.md")]
774 #[doc = include_str!("../tests/transitions/via_pipelined/tests/carrier.rs")]
777 pub mod via_pipelined {}
779
780 #[doc = include_str!("../tests/transitions/attr_forwarding/docs/tests.md")]
784 #[doc = include_str!("../tests/transitions/attr_forwarding/docs/impl_attr_forwarded_to_both_arms.md")]
788 #[doc = include_str!("../tests/transitions/attr_forwarding/tests/impl_attr_forwarded_to_both_arms.rs")]
791 pub mod attr_forwarding {}
793 }
794
795 pub mod integration {
798 #[doc = include_str!("../tests/integration/factory_pipeline/docs/tests.md")]
803 #[doc = include_str!("../tests/integration/factory_pipeline/docs/pipeline_setters_chain_in_resolved_mode.md")]
807 #[doc = include_str!("../tests/integration/factory_pipeline/tests/pipeline_setters_chain_in_resolved_mode.rs")]
810 #[doc = include_str!("../tests/integration/factory_pipeline/docs/pipeline_setters_chain_through_inflight.md")]
813 #[doc = include_str!("../tests/integration/factory_pipeline/tests/pipeline_setters_chain_through_inflight.rs")]
816 #[doc = include_str!("../tests/integration/factory_pipeline/docs/pipeline_drop_field_transitions_yes_to_no.md")]
819 #[doc = include_str!("../tests/integration/factory_pipeline/tests/pipeline_drop_field_transitions_yes_to_no.rs")]
822 #[doc = include_str!("../tests/integration/factory_pipeline/docs/pipeline_override_replaces_value.md")]
825 #[doc = include_str!("../tests/integration/factory_pipeline/tests/pipeline_override_replaces_value.rs")]
828 #[doc = include_str!("../tests/integration/factory_pipeline/docs/error.md")]
833 #[doc = include_str!("../tests/integration/factory_pipeline/tests/error.rs")]
836 #[doc = include_str!("../tests/integration/factory_pipeline/docs/domain.md")]
839 #[doc = include_str!("../tests/integration/factory_pipeline/tests/domain.rs")]
842 #[doc = include_str!("../tests/integration/factory_pipeline/docs/carrier.md")]
845 #[doc = include_str!("../tests/integration/factory_pipeline/tests/carrier.rs")]
848 pub mod factory_pipeline {}
850
851 #[doc = include_str!("../tests/integration/factory_in_pipeline/docs/tests.md")]
856 #[doc = include_str!("../tests/integration/factory_in_pipeline/docs/full_chain_bag_into_pipeline.md")]
860 #[doc = include_str!("../tests/integration/factory_in_pipeline/tests/full_chain_bag_into_pipeline.rs")]
863 #[doc = include_str!("../tests/integration/factory_in_pipeline/docs/validation_failure_at_bag_finalize.md")]
866 #[doc = include_str!("../tests/integration/factory_in_pipeline/tests/validation_failure_at_bag_finalize.rs")]
869 #[doc = include_str!("../tests/integration/factory_in_pipeline/docs/error.md")]
874 #[doc = include_str!("../tests/integration/factory_in_pipeline/tests/error.rs")]
877 #[doc = include_str!("../tests/integration/factory_in_pipeline/docs/domain.md")]
880 #[doc = include_str!("../tests/integration/factory_in_pipeline/tests/domain.rs")]
883 #[doc = include_str!("../tests/integration/factory_in_pipeline/docs/phases.md")]
886 #[doc = include_str!("../tests/integration/factory_in_pipeline/tests/phases.rs")]
889 #[doc = include_str!("../tests/integration/factory_in_pipeline/docs/carrier.md")]
892 #[doc = include_str!("../tests/integration/factory_in_pipeline/tests/carrier.rs")]
895 pub mod factory_in_pipeline {}
897
898 #[doc = include_str!("../tests/integration/dataset_authoring/docs/tests.md")]
903 #[doc = include_str!("../tests/integration/dataset_authoring/docs/new_evm_rpc_flow_terminates_at_deployed.md")]
907 #[doc = include_str!("../tests/integration/dataset_authoring/tests/new_evm_rpc_flow_terminates_at_deployed.rs")]
910 #[doc = include_str!("../tests/integration/dataset_authoring/docs/new_derived_flow_chains_through_single_await.md")]
913 #[doc = include_str!("../tests/integration/dataset_authoring/tests/new_derived_flow_chains_through_single_await.rs")]
916 #[doc = include_str!("../tests/integration/dataset_authoring/docs/bump_patch_increments_existing_version.md")]
919 #[doc = include_str!("../tests/integration/dataset_authoring/tests/bump_patch_increments_existing_version.rs")]
922 #[doc = include_str!("../tests/integration/dataset_authoring/docs/bump_patch_errors_when_no_prior_version.md")]
925 #[doc = include_str!("../tests/integration/dataset_authoring/tests/bump_patch_errors_when_no_prior_version.rs")]
928 #[doc = include_str!("../tests/integration/dataset_authoring/docs/edit_existing_kind_mismatch_surfaces_error.md")]
931 #[doc = include_str!("../tests/integration/dataset_authoring/tests/edit_existing_kind_mismatch_surfaces_error.rs")]
934 #[doc = include_str!("../tests/integration/dataset_authoring/docs/shared.md")]
939 #[doc = include_str!("../tests/integration/dataset_authoring/tests/shared.rs")]
942 pub mod dataset_authoring {}
944 }
945
946 pub mod pipeline {
948 #[doc = include_str!("../tests/pipeline/impl_pipelined/docs/tests.md")]
953 #[doc = include_str!("../tests/pipeline/impl_pipelined/docs/pipelined_associated_types_resolve.md")]
957 #[doc = include_str!("../tests/pipeline/impl_pipelined/tests/pipelined_associated_types_resolve.rs")]
960 #[doc = include_str!("../tests/pipeline/impl_pipelined/docs/gat_projections_are_correct.md")]
963 #[doc = include_str!("../tests/pipeline/impl_pipelined/tests/gat_projections_are_correct.rs")]
966 #[doc = include_str!("../tests/pipeline/impl_pipelined/docs/intofuture_drives_inflight_back_to_resolved.md")]
969 #[doc = include_str!("../tests/pipeline/impl_pipelined/tests/intofuture_drives_inflight_back_to_resolved.rs")]
972 #[doc = include_str!("../tests/pipeline/impl_pipelined/docs/tagged_pipelined_resolves.md")]
975 #[doc = include_str!("../tests/pipeline/impl_pipelined/tests/tagged_pipelined_resolves.rs")]
978 #[doc = include_str!("../tests/pipeline/impl_pipelined/docs/error.md")]
983 #[doc = include_str!("../tests/pipeline/impl_pipelined/tests/error.rs")]
986 #[doc = include_str!("../tests/pipeline/impl_pipelined/docs/state_types.md")]
989 #[doc = include_str!("../tests/pipeline/impl_pipelined/tests/state_types.rs")]
992 #[doc = include_str!("../tests/pipeline/impl_pipelined/docs/carriers.md")]
995 #[doc = include_str!("../tests/pipeline/impl_pipelined/tests/carriers.rs")]
998 pub mod impl_pipelined {}
1000
1001 #[doc = include_str!("../tests/pipeline/inspect/docs/tests.md")]
1006 #[doc = include_str!("../tests/pipeline/inspect/docs/resolved_inspect_runs_sync_and_preserves_chain.md")]
1010 #[doc = include_str!("../tests/pipeline/inspect/tests/resolved_inspect_runs_sync_and_preserves_chain.rs")]
1013 #[doc = include_str!("../tests/pipeline/inspect/docs/resolved_inspect_does_not_change_typestate.md")]
1016 #[doc = include_str!("../tests/pipeline/inspect/tests/resolved_inspect_does_not_change_typestate.rs")]
1019 #[doc = include_str!("../tests/pipeline/inspect/docs/inflight_inspect_runs_after_pending_resolves.md")]
1022 #[doc = include_str!("../tests/pipeline/inspect/tests/inflight_inspect_runs_after_pending_resolves.rs")]
1025 #[doc = include_str!("../tests/pipeline/inspect/docs/inflight_inspect_chains_through_subsequent_transitions.md")]
1028 #[doc = include_str!("../tests/pipeline/inspect/tests/inflight_inspect_chains_through_subsequent_transitions.rs")]
1031 #[doc = include_str!("../tests/pipeline/inspect/docs/error.md")]
1036 #[doc = include_str!("../tests/pipeline/inspect/tests/error.rs")]
1039 #[doc = include_str!("../tests/pipeline/inspect/docs/phases.md")]
1042 #[doc = include_str!("../tests/pipeline/inspect/tests/phases.rs")]
1045 #[doc = include_str!("../tests/pipeline/inspect/docs/carrier.md")]
1048 #[doc = include_str!("../tests/pipeline/inspect/tests/carrier.rs")]
1051 pub mod inspect {}
1053 }
1054
1055 pub mod safety {
1059 #[doc = include_str!("../tests/safety/factory_no_leak/docs/tests.md")]
1064 #[doc = include_str!("../tests/safety/factory_no_leak/docs/fallible_setter_failure_drops_other_set_fields.md")]
1068 #[doc = include_str!("../tests/safety/factory_no_leak/tests/fallible_setter_failure_drops_other_set_fields.rs")]
1071 #[doc = include_str!("../tests/safety/factory_no_leak/docs/fallible_overrider_failure_drops_other_set_fields.md")]
1074 #[doc = include_str!("../tests/safety/factory_no_leak/tests/fallible_overrider_failure_drops_other_set_fields.rs")]
1077 #[doc = include_str!("../tests/safety/factory_no_leak/docs/async_setter_dropped_mid_await_drops_other_set_fields.md")]
1080 #[doc = include_str!("../tests/safety/factory_no_leak/tests/async_setter_dropped_mid_await_drops_other_set_fields.rs")]
1083 #[doc = include_str!("../tests/safety/factory_no_leak/docs/error.md")]
1088 #[doc = include_str!("../tests/safety/factory_no_leak/tests/error.rs")]
1091 #[doc = include_str!("../tests/safety/factory_no_leak/docs/bookkeeping.md")]
1094 #[doc = include_str!("../tests/safety/factory_no_leak/tests/bookkeeping.rs")]
1097 pub mod factory_no_leak {}
1100
1101 #[doc = include_str!("../tests/safety/factory_panic_safety/docs/tests.md")]
1107 #[doc = include_str!("../tests/safety/factory_panic_safety/docs/panic_in_drop_still_drops_subsequent_fields.md")]
1111 #[doc = include_str!("../tests/safety/factory_panic_safety/tests/panic_in_drop_still_drops_subsequent_fields.rs")]
1114 #[doc = include_str!("../tests/safety/factory_panic_safety/docs/panic_in_default_expr_during_finalize_drops_already_read_fields.md")]
1117 #[doc = include_str!("../tests/safety/factory_panic_safety/tests/panic_in_default_expr_during_finalize_drops_already_read_fields.rs")]
1120 #[doc = include_str!("../tests/safety/factory_panic_safety/docs/panic_in_old_value_drop_during_override_drops_other_fields.md")]
1123 #[doc = include_str!("../tests/safety/factory_panic_safety/tests/panic_in_old_value_drop_during_override_drops_other_fields.rs")]
1126 #[doc = include_str!("../tests/safety/factory_panic_safety/docs/panic_in_old_value_drop_during_remove_drops_other_fields.md")]
1129 #[doc = include_str!("../tests/safety/factory_panic_safety/tests/panic_in_old_value_drop_during_remove_drops_other_fields.rs")]
1132 #[doc = include_str!("../tests/safety/factory_panic_safety/docs/bookkeeping.md")]
1137 #[doc = include_str!("../tests/safety/factory_panic_safety/tests/bookkeeping.rs")]
1140 #[doc = include_str!("../tests/safety/factory_panic_safety/docs/panicky_drop.md")]
1143 #[doc = include_str!("../tests/safety/factory_panic_safety/tests/panicky_drop.rs")]
1146 pub mod factory_panic_safety {}
1148
1149 #[doc = include_str!("../tests/safety/factory_hygiene/docs/tests.md")]
1155 #[doc = include_str!("../tests/safety/factory_hygiene/docs/struct_with_field_names_matching_macro_internals_compiles.md")]
1159 #[doc = include_str!("../tests/safety/factory_hygiene/tests/struct_with_field_names_matching_macro_internals_compiles.rs")]
1162 #[doc = include_str!("../tests/safety/factory_hygiene/docs/default_expression_can_call_user_scope_function.md")]
1165 #[doc = include_str!("../tests/safety/factory_hygiene/tests/default_expression_can_call_user_scope_function.rs")]
1168 pub mod factory_hygiene {}
1170
1171 #[doc = include_str!("../tests/safety/factory_phantom_shape/docs/tests.md")]
1178 #[doc = include_str!("../tests/safety/factory_phantom_shape/docs/all_internal_struct_finalizes_without_flag_generics.md")]
1182 #[doc = include_str!("../tests/safety/factory_phantom_shape/tests/all_internal_struct_finalizes_without_flag_generics.rs")]
1185 #[doc = include_str!("../tests/safety/factory_phantom_shape/docs/singleton_flag_struct_round_trips.md")]
1188 #[doc = include_str!("../tests/safety/factory_phantom_shape/tests/singleton_flag_struct_round_trips.rs")]
1191 #[doc = include_str!("../tests/safety/factory_phantom_shape/docs/one_flag_bag_is_send_and_sync_when_field_is.md")]
1194 #[doc = include_str!("../tests/safety/factory_phantom_shape/tests/one_flag_bag_is_send_and_sync_when_field_is.rs")]
1197 #[doc = include_str!("../tests/safety/factory_phantom_shape/docs/many_flag_struct_round_trips.md")]
1200 #[doc = include_str!("../tests/safety/factory_phantom_shape/tests/many_flag_struct_round_trips.rs")]
1203 pub mod factory_phantom_shape {}
1205
1206 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/tests.md")]
1211 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/build_in_order.md")]
1215 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/build_in_order.rs")]
1218 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/build_in_arbitrary_order.md")]
1221 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/build_in_arbitrary_order.rs")]
1224 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/default_helper_fills_in_optional.md")]
1227 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/default_helper_fills_in_optional.rs")]
1230 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/finalize_uses_default_when_optional_unset.md")]
1233 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/finalize_uses_default_when_optional_unset.rs")]
1236 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/getter_borrows_set_field.md")]
1239 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/getter_borrows_set_field.rs")]
1242 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/empty_bag_dropped_does_not_touch_unset_fields.md")]
1245 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/empty_bag_dropped_does_not_touch_unset_fields.rs")]
1248 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/partial_bag_dropped_drops_only_set_fields.md")]
1251 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/partial_bag_dropped_drops_only_set_fields.rs")]
1254 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/fully_populated_bag_dropped_drops_all.md")]
1257 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/fully_populated_bag_dropped_drops_all.rs")]
1260 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/finalize_does_not_double_drop.md")]
1263 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/finalize_does_not_double_drop.rs")]
1266 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/drop_field_drops_value_once.md")]
1269 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/drop_field_drops_value_once.rs")]
1272 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/drop_field_then_reset_doesnt_double_drop.md")]
1275 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/drop_field_then_reset_doesnt_double_drop.rs")]
1278 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/override_drops_old_value.md")]
1281 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/override_drops_old_value.rs")]
1284 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/finalize_uses_defaults_when_optional_no.md")]
1287 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/finalize_uses_defaults_when_optional_no.rs")]
1290 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/finalize_keeps_explicit_values_when_optional_yes.md")]
1293 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/finalize_keeps_explicit_values_when_optional_yes.rs")]
1296 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/finalize_mixes_set_and_default.md")]
1299 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/finalize_mixes_set_and_default.rs")]
1302 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/custom_transformer_fn.md")]
1305 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/custom_transformer_fn.rs")]
1308 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/fallible_transformer_success.md")]
1311 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/fallible_transformer_success.rs")]
1314 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/fallible_transformer_failure.md")]
1317 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/fallible_transformer_failure.rs")]
1320 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/fallible_setter_failure_drops_other_set_fields.md")]
1323 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/fallible_setter_failure_drops_other_set_fields.rs")]
1326 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/fallible_overrider_failure_drops_other_set_fields.md")]
1329 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/fallible_overrider_failure_drops_other_set_fields.rs")]
1332 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/async_setter_dropped_mid_await_drops_other_set_fields.md")]
1335 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/async_setter_dropped_mid_await_drops_other_set_fields.rs")]
1338 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/internal_field_round_trips.md")]
1341 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/internal_field_round_trips.rs")]
1344 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/error.md")]
1349 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/error.rs")]
1352 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/bookkeeping.md")]
1355 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/bookkeeping.rs")]
1358 #[doc = include_str!("../tests/safety/factory_no_unsafe/docs/async_helpers.md")]
1361 #[doc = include_str!("../tests/safety/factory_no_unsafe/tests/async_helpers.rs")]
1364 pub mod factory_no_unsafe {}
1366 }
1367
1368 pub mod ui {
1372 #[doc = include_str!("../tests/ui/stable/default_helper_without_default.rs")]
1378 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/default_helper_without_default.html"))]
1382 pub mod default_helper_without_default {}
1383
1384 #[doc = include_str!("../tests/ui/stable/default_with_async.rs")]
1391 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/default_with_async.html"))]
1395 pub mod default_with_async {}
1396
1397 #[doc = include_str!("../tests/ui/stable/default_with_fallible.rs")]
1403 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/default_with_fallible.html"))]
1407 pub mod default_with_fallible {}
1408
1409 #[doc = include_str!("../tests/ui/stable/factory_async_without_setter.rs")]
1415 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/factory_async_without_setter.html"))]
1419 pub mod factory_async_without_setter {}
1420
1421 #[doc = include_str!("../tests/ui/stable/factory_fallible_without_setter.rs")]
1427 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/factory_fallible_without_setter.html"))]
1431 pub mod factory_fallible_without_setter {}
1432
1433 #[doc = include_str!("../tests/ui/stable/factory_no_unsafe_without_feature.rs")]
1440 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/factory_no_unsafe_without_feature.html"))]
1444 pub mod factory_no_unsafe_without_feature {}
1445
1446 #[doc = include_str!("../tests/ui/stable/factory_on_enum.rs")]
1452 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/factory_on_enum.html"))]
1456 pub mod factory_on_enum {}
1457
1458 #[doc = include_str!("../tests/ui/stable/input_without_setter.rs")]
1464 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/input_without_setter.html"))]
1468 pub mod input_without_setter {}
1469
1470 #[doc = include_str!("../tests/ui/stable/internal_field_no_pipeline_arm.rs")]
1477 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/internal_field_no_pipeline_arm.html"))]
1481 pub mod internal_field_no_pipeline_arm {}
1482
1483 #[doc = include_str!("../tests/ui/stable/internal_with_setter.rs")]
1490 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/internal_with_setter.html"))]
1494 pub mod internal_with_setter {}
1495
1496 #[doc = include_str!("../tests/ui/stable/pipeline_field_is_private.rs")]
1504 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/pipeline_field_is_private.html"))]
1508 pub mod pipeline_field_is_private {}
1509
1510 #[doc = include_str!("../tests/ui/stable/ready_trait_rejects_unset_required.rs")]
1518 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/ready_trait_rejects_unset_required.html"))]
1522 pub mod ready_trait_rejects_unset_required {}
1523
1524 #[doc = include_str!("../tests/ui/stable/transition_without_into.rs")]
1530 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/transition_without_into.html"))]
1534 pub mod transition_without_into {}
1535
1536 #[doc = include_str!("../tests/ui/stable/transitions_breakpoint_on_sync.rs")]
1542 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/transitions_breakpoint_on_sync.html"))]
1546 pub mod transitions_breakpoint_on_sync {}
1547
1548 #[doc = include_str!("../tests/ui/stable/transitions_breakpoint_with_value.rs")]
1554 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/transitions_breakpoint_with_value.html"))]
1558 pub mod transitions_breakpoint_with_value {}
1559
1560 #[doc = include_str!("../tests/ui/stable/transitions_first_param_not_state.rs")]
1566 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/transitions_first_param_not_state.html"))]
1570 pub mod transitions_first_param_not_state {}
1571
1572 #[doc = include_str!("../tests/ui/stable/transitions_on_trait_impl.rs")]
1579 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/transitions_on_trait_impl.html"))]
1583 pub mod transitions_on_trait_impl {}
1584
1585 #[doc = include_str!("../tests/ui/stable/transitions_without_pipelined_impl.rs")]
1592 #[doc = include_str!(concat!(env!("OUT_DIR"), "/diagnostics/transitions_without_pipelined_impl.html"))]
1596 pub mod transitions_without_pipelined_impl {}
1597 }
1598}
1599
1600#[doc(alias = "carrier")]
1622#[doc(alias = "newtype")]
1623#[macro_export]
1624macro_rules! pipelined {
1625 ($vis:vis $name:ident, ctx = $ctx:ty, error = $err:ty $(,)?) => {
1626 $crate::pipelined!($vis $name, ctx = $ctx, error = $err, tag = ());
1627 };
1628
1629 ($vis:vis $name:ident, ctx = $ctx:ty, error = $err:ty, tag = $tag:ty $(,)?) => {
1630 $vis struct $name<'a, S, M = $crate::Resolved>(
1631 $crate::Pipeline<'a, $ctx, $tag, S, $err, M>,
1632 )
1633 where
1634 M: $crate::Mode<'a, S, $err>;
1635
1636 $crate::impl_pipelined!($name, ctx = $ctx, error = $err, tag = $tag);
1637 };
1638}
1639
1640#[doc(alias = "carrier")]
1661#[macro_export]
1662macro_rules! impl_pipelined {
1663 ($carrier:ident, ctx = $ctx:ty, error = $err:ty $(,)?) => {
1664 $crate::impl_pipelined!($carrier, ctx = $ctx, error = $err, tag = ());
1665 };
1666
1667 ($carrier:ident, ctx = $ctx:ty, error = $err:ty, tag = $tag:ty $(,)?) => {
1668 impl<'a, S: 'a, M> $crate::Pipelined<'a> for $carrier<'a, S, M>
1669 where
1670 M: $crate::Mode<'a, S, $err>,
1671 {
1672 type Ctx = $ctx;
1673 type Error = $err;
1674 type Tag = $tag;
1675 type State = S;
1676 type Mode = M;
1677 type Resolved<NS: 'a> = $carrier<'a, NS, $crate::Resolved>;
1678 type InFlight<NS: ::core::marker::Send + 'a> = $carrier<'a, NS, $crate::InFlight>;
1679 }
1680
1681 impl<'a, S> ::core::future::IntoFuture for $carrier<'a, S, $crate::InFlight>
1682 where
1683 S: ::core::marker::Send + 'a,
1684 $err: ::core::marker::Send + 'a,
1685 $ctx: ::core::marker::Sync + 'a,
1686 {
1687 type Output = ::core::result::Result<$carrier<'a, S, $crate::Resolved>, $err>;
1688 type IntoFuture = $crate::BoxFuture<'a, Self::Output>;
1689 fn into_future(self) -> Self::IntoFuture {
1690 let pending = self.0;
1691 $crate::__private::Box::pin(async move {
1692 let resolved = pending.await?;
1693 ::core::result::Result::Ok($carrier(resolved))
1694 })
1695 }
1696 }
1697
1698 impl<'a, S: 'a> $carrier<'a, S, $crate::Resolved> {
1699 #[inline]
1703 pub fn inspect<F>(self, inspect_op: F) -> Self
1704 where
1705 F: ::core::ops::FnOnce(&Self),
1706 {
1707 inspect_op(&self);
1708 self
1709 }
1710 }
1711
1712 impl<'a, S> $carrier<'a, S, $crate::InFlight>
1713 where
1714 S: ::core::marker::Send + 'a,
1715 $err: ::core::marker::Send + 'a,
1716 $ctx: ::core::marker::Sync + 'a,
1717 {
1718 #[inline]
1727 pub fn inspect<F>(self, inspect_op: F) -> Self
1728 where
1729 F: ::core::ops::FnOnce(&$carrier<'a, S, $crate::Resolved>)
1730 + ::core::marker::Send
1731 + 'a,
1732 {
1733 let pending = self.0;
1734 let ctx = pending.ctx();
1735 $carrier($crate::__private::Pipeline::in_flight(
1736 ctx,
1737 $crate::__private::Box::pin(async move {
1738 let resolved = pending.await?;
1739 let temp = $carrier(resolved);
1740 inspect_op(&temp);
1741 ::core::result::Result::Ok(temp.0.into_state())
1742 }),
1743 ))
1744 }
1745 }
1746 };
1747}