Namespaces
Variants
Actions

Experimental library header <experimental/ranges/utility>

From cppreference.com
< cpp‎ | header‎ | experimental
 
 
Standard library headers
 
Experimental library headers
Execution P2300
Filesystem TS
Parallelism TS (v1, v2)
experimental/algorithm
experimental/execution_policy
experimental/exception_list
experimental/numeric
experimental/task_block
Library Fundamentals TS (v1, v2, v3)
experimental/algorithm
experimental/array
experimental/chrono
experimental/deque
experimental/forward_list
experimental/future
experimental/iterator
experimental/list
experimental/map
experimental/memory
experimental/numeric
experimental/propagate_const
experimental/random
experimental/ratio
experimental/regex
experimental/scope
experimental/set
experimental/source_location
experimental/string
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/netfwd
experimental/socket
experimental/timer
Reflection TS
 

This header is part of the ranges library.

[edit] Utility components

Defined in namespace std::experimental::ranges
swaps the value of two objects
(customization point object)[edit]
replaces the argument with a new value and returns its previous value
(function template) [edit]

[edit] Tag concepts

Defined in namespace std::experimental::ranges
specifies that a type is a tag specifier
(concept) [edit]
specifies that a type represents a tag specifier and its element type
(concept) [edit]

[edit] Tagged pairs

Defined in namespace std::experimental::ranges
augument a tuple-like type with named accessors
(class template) [edit]
alias template for a tagged std::pair
(alias template)[edit]
convenience function for creating a tagged_pair
(function template) [edit]

[edit] Synopsis

namespace std { namespace experimental { namespace ranges { inline namespace v1 {
 
namespace {
 constexpr /* unspecified */ swap = /* unspecified */;
} 
 
template<MoveConstructible T, class U = T>
 requires Assignable<T&, U>
constexpr T exchange(T& obj, U&& new_val) noexcept(/* see definition */);
 
template <class T>
concept bool TagSpecifier = /* see definition */;
 
template <class F>
concept bool TaggedType = /* see definition */;
 
template <class Base, TagSpecifier... Tags>
 requires sizeof...(Tags) <= std::tuple_size <Base>::value
struct tagged;
 
template <TaggedType T1, TaggedType T2>
using tagged_pair = /* see definition */;
 
template <TagSpecifier Tag1, TagSpecifier Tag2, class T1, class T2>
constexpr /* see definition */ make_tagged_pair(T1&& x, T2&& y);
 
}}}}
 
namespace std {
 
template <class Base, class... Tags>
struct tuple_size<experimental::ranges::tagged <Base, Tags...>>;
 
template <size_t N, class Base, class... Tags>
struct tuple_element<N, experimental::ranges::tagged <Base, Tags...>>;
 
}
Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/header/experimental/ranges/utility&oldid=112236"

AltStyle によって変換されたページ (->オリジナル) /