Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      Experimental library header <experimental/execution>

      From cppreference.com
      <cpp‎ |header‎ |experimental
       
       
      Standard library headers
       
      Experimental library headers
      ExecutionP2300
      <experimental/execution>
      Filesystem TS
      <experimental/filesystem>
      Parallelism TS (v1, v2)
      experimental/algorithm
      experimental/execution_policy
      experimental/exception_list
      experimental/numeric
      <experimental/simd>
      experimental/task_block
      Library Fundamentals TS (v1, v2, v3)
      experimental/algorithm
      <experimental/any>
      experimental/array
      experimental/chrono
      experimental/deque
      experimental/forward_list
      <experimental/functional>
      experimental/future
      experimental/iterator
      experimental/list
      experimental/map
      experimental/memory
      <experimental/memory_resource>
      experimental/numeric
      <experimental/optional>
      experimental/propagate_const
      experimental/random
      experimental/ratio
      experimental/regex
      experimental/scope
      experimental/set
      experimental/source_location
      experimental/string
      <experimental/string_view>
      experimental/system_error
      experimental/tuple
      experimental/type_traits
      experimental/unordered_map
      experimental/unordered_set
      experimental/utility
      experimental/vector

      Concurrency TS
      experimental/atomic
      experimental/barrier
      experimental/future
      experimental/latch
      Ranges TS
      Coroutines TS
      experimental/coroutine
      Networking TS
      experimental/buffer
      experimental/executor
      experimental/internet
      experimental/io_context
      <experimental/net>
      experimental/netfwd
      experimental/socket
      experimental/timer
      Reflection TS
      <experimental/reflect>
       

      This header is part ofexecution library, based onP2300R7.

      Includes

      This section is incomplete

      [edit]Synopsis

      namespace std{// helper conceptstemplate<class T>    concept/*movable-value*/=/*see-below*/;// exposition only template<class From,class To>    concept/*decays-to*/= same_as<decay_t<From>, To>;// exposition only template<class T>    concept/*class-type*/=/*decays-to*/<T, T>&& is_class_v<T>;// exposition only // queryable objectstemplate<class T>    concept queryable= destructible; // queriesnamespace queries{// exposition onlystruct forwarding_query_t;struct get_allocator_t;struct get_stop_token_t;}using queries::forwarding_query_t;using queries::get_allocator_t;using queries::get_stop_token_t;inlineconstexpr forwarding_query_t forwarding_query{};inlineconstexpr get_allocator_t get_allocator{};inlineconstexpr get_stop_token_t get_stop_token{}; template<class T>using stop_token_of_t=      remove_cvref_t<decltype(get_stop_token(declval<T>()))>; template<class T>    concept/*forwarding-query*/=// exposition only      forwarding_query(T{}); namespace/*exec-envs*/{// exposition onlystruct empty_env{};struct get_env_t;}using/*exec-envs*/::empty_env;using/*exec-envs*/::get_env_t;inlineconstexpr get_env_t get_env{}; template<class T>using env_of_t= decltype(get_env(declval<T>()));} namespace std::execution{// queriesenumclass forward_progress_guarantee;namespace queries{// exposition onlystruct get_scheduler_t;struct get_delegatee_scheduler_t;struct get_forward_progress_guarantee_t;template<class CPO>struct get_completion_scheduler_t;}using queries::get_scheduler_t;using queries::get_delegatee_scheduler_t;using queries::get_forward_progress_guarantee_t;using queries::get_completion_scheduler_t;inlineconstexpr get_scheduler_t get_scheduler{};inlineconstexpr get_delegatee_scheduler_t get_delegatee_scheduler{};inlineconstexpr get_forward_progress_guarantee_t get_forward_progress_guarantee{};template<class CPO>inlineconstexpr get_completion_scheduler_t<CPO> get_completion_scheduler{}; // schedulerstemplate<class S>    concept scheduler=/*see-below*/; // receiverstemplate<class R>inlineconstexprbool enable_receiver=/*see-below*/; template<class R>    concept receiver=/*see-below*/; template<class R,class Completions>    concept receiver_of=/*see-below*/; namespace receivers{// exposition onlystruct set_value_t;struct set_error_t;struct set_stopped_t;}using receivers::set_value_t;using receivers::set_error_t;using receivers::set_stopped_t;inlineconstexpr set_value_t set_value{};inlineconstexpr set_error_t set_error{};inlineconstexpr set_stopped_t set_stopped{}; // operation statestemplate<class O>    concept operation_state=/*see-below*/; namespace/*op-state*/{// exposition onlystruct start_t;}using/*op-state*/::start_t;inlineconstexpr start_t start{}; // senderstemplate<class S>inlineconstexprbool enable_sender=/* see description */; template<class S>    concept sender=/*see-below*/; template<class S,class E= empty_env>    concept sender_in=/*see-below*/; template<class S,class R>    concept sender_to=/*see-below*/; template<class S,class Sig,class E= empty_env>    concept sender_of=/* see description */; template<class...Ts>struct/*type-list*/;// exposition only template<class S,class E= empty_env>using/*single-sender-value-type*/=/* see description */;// exposition only template<class S,class E= empty_env>    concept/*single-sender*/=/* see description */;// exposition only // completion signaturesnamespace/*completion-signatures*/{// exposition onlystruct get_completion_signatures_t;}using/*completion-signatures*/::get_completion_signatures_t;inlineconstexpr get_completion_signatures_t get_completion_signatures{}; template<class S,class E= empty_env>      requires sender_in<S, E>using completion_signatures_of_t=/*call-result-t*/<get_completion_signatures_t, S, E>; template<class...Ts>using/*decayed-tuple*/= tuple<decay_t<Ts>...>;// exposition only template<class...Ts>using/*variant-or-empty*/=/* see description */;// exposition only template<class S,class E= empty_env,template<class...>class Tuple=/*decayed-tuple*/,template<class...>class Variant=/*variant-or-empty*/>      requires sender_in<S, E>using value_types_of_t=/* see description */; template<class S,class Env= empty_env,template<class...>class Variant=/*variant-or-empty*/>      requires sender_in<S, E>using error_types_of_t=/* see description */; template<class S,class E= empty_env>      requires sender_in<S, E>inlineconstexprbool sends_stopped=/* see description */; // the connect sender algorithmnamespace/*senders-connect*/{// exposition onlystruct connect_t;}using/*senders-connect*/::connect_t;inlineconstexpr connect_t connect{}; template<class S,class R>using connect_result_t= decltype(connect(declval<S>(), declval<R>())); // sender factoriesnamespace/*senders-factories*/{// exposition onlystruct schedule_t;struct transfer_just_t;}inlineconstexpr/* unspecified */ just{};inlineconstexpr/* unspecified */ just_error{};inlineconstexpr/* unspecified */ just_stopped{};using/*senders-factories*/::schedule_t;using/*senders-factories*/::transfer_just_t;inlineconstexpr schedule_t schedule{};inlineconstexpr transfer_just_t transfer_just{};inlineconstexpr/* unspecified */ read{}; template<scheduler S>using schedule_result_t= decltype(schedule(declval<S>())); // sender adaptorsnamespace/*sender-adaptor-closure*/{// exposition onlytemplate</*class-type*/ D>struct sender_adaptor_closure{};}using/*sender-adaptor-closure*/::sender_adaptor_closure; namespace/*sender-adaptors*/{// exposition onlystruct on_t;struct transfer_t;struct schedule_from_t;struct then_t;struct upon_error_t;struct upon_stopped_t;struct let_value_t;struct let_error_t;struct let_stopped_t;struct bulk_t;struct split_t;struct when_all_t;struct when_all_with_variant_t;struct transfer_when_all_t;struct transfer_when_all_with_variant_t;struct into_variant_t;struct stopped_as_optional_t;struct stopped_as_error_t;struct ensure_started_t;}using/*sender-adaptors*/::on_t;using/*sender-adaptors*/::transfer_t;using/*sender-adaptors*/::schedule_from_t;using/*sender-adaptors*/::then_t;using/*sender-adaptors*/::upon_error_t;using/*sender-adaptors*/::upon_stopped_t;using/*sender-adaptors*/::let_value_t;using/*sender-adaptors*/::let_error_t;using/*sender-adaptors*/::let_stopped_t;using/*sender-adaptors*/::bulk_t;using/*sender-adaptors*/::split_t;using/*sender-adaptors*/::when_all_t;using/*sender-adaptors*/::when_all_with_variant_t;using/*sender-adaptors*/::transfer_when_all_t;using/*sender-adaptors*/::transfer_when_all_with_variant_t;using/*sender-adaptors*/::into_variant_t;using/*sender-adaptors*/::stopped_as_optional_t;using/*sender-adaptors*/::stopped_as_error_t;using/*sender-adaptors*/::ensure_started_t; inlineconstexpr on_t on{};inlineconstexpr transfer_t transfer{};inlineconstexpr schedule_from_t schedule_from{}; inlineconstexpr then_t then{};inlineconstexpr upon_error_t upon_error{};inlineconstexpr upon_stopped_t upon_stopped{}; inlineconstexpr let_value_t let_value{};inlineconstexpr let_error_t let_error{};inlineconstexpr let_stopped_t let_stopped{}; inlineconstexpr bulk_t bulk{}; inlineconstexpr split_t split{};inlineconstexpr when_all_t when_all{};inlineconstexpr when_all_with_variant_t when_all_with_variant{};inlineconstexpr transfer_when_all_t transfer_when_all{};inlineconstexpr transfer_when_all_with_variant_t    transfer_when_all_with_variant{}; inlineconstexpr into_variant_t into_variant{}; inlineconstexpr stopped_as_optional_t stopped_as_optional; inlineconstexpr stopped_as_error_t stopped_as_error; inlineconstexpr ensure_started_t ensure_started{}; // sender consumersnamespace/*sender-consumers*/{// exposition onlystruct start_detached_t;}using/*sender-consumers*/::start_detached_t;inlineconstexpr start_detached_t start_detached{}; // sender and receiver utilities// [exec.utils.rcvr.adptr]template</*class-type*/ Derived,      receiver Base=/* unspecified */>// arguments are not associated entitiesclass receiver_adaptor; template<class Fn>    concept/*completion-signature*/=// exposition only/* see description */; // [exec.utils.cmplsigs]template</*completion-signature*/...Fns>struct completion_signatures{}; template<class...Args>// exposition onlyusing/*default-set-value*/=      completion_signatures<set_value_t(Args...)>; template<class Err>// exposition onlyusing/*default-set-error*/=      completion_signatures<set_error_t(Err)>; template<class Sigs>// exposition only    concept/*valid-completion-signatures*/=/* see description */; // [exec.utils.mkcmplsigs]template<    sender Sndr,class Env= empty_env,/*valid-completion-signatures*/ AddlSigs= completion_signatures<>,template<class...>class SetValue=/* see description */,template<class>class SetError=/* see description */,/*valid-completion-signatures*/ SetStopped= completion_signatures<set_stopped_t()>>      requires sender_in<Sndr, Env>using make_completion_signatures= completion_signatures</* see description */>; // execution resourcesclass run_loop;} namespace std::this_thread{// queriesnamespace queries{// exposition onlystruct execute_may_block_caller_t;}using queries::execute_may_block_caller_t;inlineconstexpr execute_may_block_caller_t execute_may_block_caller{}; namespace/*this-thread*/{// exposition onlystruct/*sync-wait-env*/;// exposition onlytemplate<class S>        requires sender_in<S,/*sync-wait-env*/>using/*sync-wait-type*/=/*see-below*/;// exposition onlytemplate<class S>using/*sync-wait-with-variant-type*/=/*see-below*/;// exposition only struct sync_wait_t;struct sync_wait_with_variant_t;}using/*this-thread*/::sync_wait_t;using/*this-thread*/::sync_wait_with_variant_t;inlineconstexpr sync_wait_t sync_wait{};inlineconstexpr sync_wait_with_variant_t sync_wait_with_variant{};} namespace std::execution{// one-way executionnamespace execute{// exposition onlystruct execute_t;}using execute::execute_t;inlineconstexpr execute_t execute{}; // [exec.as.awaitable]namespace/*coro-utils*/{// exposition onlystruct as_awaitable_t;}using/*coro-utils*/::as_awaitable_t;inlineconstexpr as_awaitable_t as_awaitable; // [exec.with.awaitable.senders]template</*class-type*/ Promise>struct with_awaitable_senders;}
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/header/experimental/execution&oldid=169365"

      [8]ページ先頭

      ©2009-2026 Movatter.jp