|
101 | 101 | Otherwise, \tcode{make_exception_ptr(err)}. |
102 | 102 | \end{itemize} |
103 | 103 |
|
| 104 | +\pnum |
| 105 | +For a subexpression \tcode{expr}, |
| 106 | +let \tcode{\exposid{AS-CONST}(expr)} be expression-equivalent to |
| 107 | +\begin{codeblock} |
| 108 | +[](const auto& x) noexcept -> const auto& { return x; }(expr) |
| 109 | +\end{codeblock} |
| 110 | + |
104 | 111 | \rSec1[exec.queryable]{Queries and queryables} |
105 | 112 |
|
106 | 113 | \rSec2[exec.queryable.general]{General} |
|
789 | 796 | The name \tcode{get_allocator} denotes a query object. |
790 | 797 | For a subexpression \tcode{env}, |
791 | 798 | \tcode{get_allocator(env)} is expression-equivalent to |
792 | | -\tcode{\exposid{MANDATE-NOTHROW}(as_const(env).query(get_allocator))}. |
| 799 | +\tcode{\exposid{MANDATE-NOTHROW}(\exposid{AS-CONST}(env).query(get_allocator))}. |
793 | 800 |
|
794 | 801 | \mandates |
795 | 802 | If the expression above is well-formed, |
|
811 | 818 | \tcode{get_stop_token(env)} is expression-equivalent to: |
812 | 819 | \begin{itemize} |
813 | 820 | \item |
814 | | -\tcode{\exposid{MANDATE-NOTHROW}(as_const(env).query(get_stop_token))} |
| 821 | +\tcode{\exposid{MANDATE-NOTHROW}(\exposid{AS-CONST}(env).query(get_stop_token))} |
815 | 822 | if that expression is well-formed. |
816 | 823 |
|
817 | 824 | \mandates |
|
833 | 840 | \tcode{execution::get_env(o)} is expression-equivalent to: |
834 | 841 | \begin{itemize} |
835 | 842 | \item |
836 | | -\tcode{\exposid{MANDATE-NOTHROW}(as_const(o).get_env())} |
| 843 | +\tcode{\exposid{MANDATE-NOTHROW}(\exposid{AS-CONST}(o).get_env())} |
837 | 844 | if that expression is well-formed. |
838 | 845 |
|
839 | 846 | \mandates |
|
864 | 871 | The name \tcode{get_domain} denotes a query object. |
865 | 872 | For a subexpression \tcode{env}, |
866 | 873 | \tcode{get_domain(env)} is expression-equivalent to |
867 | | -\tcode{\exposid{MANDATE-NOTHROW}(as_const(env).query(get_domain))}. |
| 874 | +\tcode{\exposid{MANDATE-NOTHROW}(\exposid{AS-CONST}(env).query(get_domain))}. |
868 | 875 |
|
869 | 876 | \pnum |
870 | 877 | \tcode{forwarding_query(execution::get_domain)} is |
|
879 | 886 | The name \tcode{get_scheduler} denotes a query object. |
880 | 887 | For a subexpression \tcode{env}, |
881 | 888 | \tcode{get_scheduler(env)} is expression-equivalent to |
882 | | -\tcode{\exposid{MANDATE-NOTHROW}(as_const(env).query(get_scheduler))}. |
| 889 | +\tcode{\exposid{MANDATE-NOTHROW}(\exposid{AS-CONST}(env).query(get_scheduler))}. |
883 | 890 |
|
884 | 891 | \mandates |
885 | 892 | If the expression above is well-formed, |
|
900 | 907 | The name \tcode{get_delegation_scheduler} denotes a query object. |
901 | 908 | For a subexpression \tcode{env}, |
902 | 909 | \tcode{get_delegation_scheduler(env)} is expression-equivalent to |
903 | | -\tcode{\exposid{MANDATE-NOTHROW}(as_const(env).query(get_delegation_scheduler))}. |
| 910 | +\tcode{\exposid{MANDATE-NOTHROW}(\exposid{AS-CONST}(env).query(get_delegation_scheduler))}. |
904 | 911 |
|
905 | 912 | \mandates |
906 | 913 | If the expression above is well-formed, |
|
936 | 943 | \tcode{get_forward_progress_guarantee(sch)} is expression-equivalent to: |
937 | 944 | \begin{itemize} |
938 | 945 | \item |
939 | | -\tcode{\exposid{MANDATE-NOTHROW}(as_const(sch).query(get_forward_progress_guarantee))}, |
| 946 | +\tcode{\exposid{MANDATE-NOTHROW}(\exposid{AS-CONST}(sch).query(get_forward_progress_guarantee))}, |
940 | 947 | if that expression is well-formed. |
941 | 948 |
|
942 | 949 | \mandates |
|
970 | 977 | Otherwise, \tcode{get_completion_scheduler<\exposid{completion-tag}>(q)} |
971 | 978 | is expression-equivalent to |
972 | 979 | \begin{codeblock} |
973 | | -@\exposid{MANDATE-NOTHROW}@(as_const(q).query(get_completion_scheduler<@\exposid{completion-tag}@>)) |
| 980 | +@\exposid{MANDATE-NOTHROW}@(@\exposid{AS-CONST}@(q).query(get_completion_scheduler<@\exposid{completion-tag}@>)) |
974 | 981 | \end{codeblock} |
975 | 982 | \mandates |
976 | 983 | If the expression above is well-formed, |
|
0 commit comments