Namespaces
Variants

Experimental library header <experimental/ranges/concepts>

From cppreference.net
Standard library headers
Experimental library headers
Execution P2300
<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>

このヘッダーは ranges ライブラリの一部です。

目次

翻訳の説明: - 「Contents」を「目次」に翻訳しました - C++専門用語(Core language concepts、Comparison concepts、Object concepts、Callable concepts、Synopsis)は翻訳せずにそのまま保持しました - HTMLタグ、属性、class名、id名は一切変更していません - 番号部分(tocnumber)はそのまま保持しました - 元の書式と構造を完全に維持しています

コア言語コンセプト

namespace で定義 std::experimental::ranges
型が別の型と同じであることを指定する
(コンセプト)
型が別の型から派生していることを指定する
(コンセプト)
型が別の型に暗黙的に変換可能であることを指定する
(コンセプト)
2つの型が共通の参照型を共有することを指定する
(コンセプト)
2つの型が共通の型を共有することを指定する
(コンセプト)
型が整数型であることを指定する
(コンセプト)
型が符号付き整数型であることを指定する
(コンセプト)
型が符号なし整数型であることを指定する
(コンセプト)
型が別の型から代入可能であることを指定する
(コンセプト)
型が交換可能であること、または2つの型が互いに交換可能であることを指定する
(コンセプト)

比較コンセプト

名前空間 std::experimental::ranges で定義
型がブールコンテキストで使用できることを指定する
(コンセプト)
2つの型が演算子 == および ! = を使用して等値比較できることを指定する
(コンセプト)
演算子 == が同値関係であることを指定する
(コンセプト)
型に対する比較演算子が全順序を生成することを指定する
(コンセプト)

オブジェクト概念

namespace で定義 std::experimental::ranges
その型のオブジェクトが破棄可能であることを指定する
(コンセプト)
その型の変数が引数型のセットから構築またはバインド可能であることを指定する
(コンセプト)
その型のオブジェクトがデフォルト構築可能であることを指定する
(コンセプト)
その型のオブジェクトがムーブ構築可能であることを指定する
(コンセプト)
その型のオブジェクトがコピー構築およびムーブ構築可能であることを指定する
(コンセプト)
その型のオブジェクトがムーブおよびスワップ可能であることを指定する
(コンセプト)
その型のオブジェクトがコピー、ムーブ、スワップ可能であることを指定する
(コンセプト)
その型のオブジェクトがコピー、ムーブ、スワップ、デフォルト構築可能であることを指定する
(コンセプト)
型が regular であること、すなわち Semiregular かつ EqualityComparable であることを指定する
(コンセプト)

呼び出し可能コンセプト

namespace std::experimental::ranges で定義
呼び出し可能型が特定の引数型のセットで呼び出し可能であることを指定する
(concept)
呼び出し可能型がブール述語であることを指定する
(concept)
呼び出し可能型が二項関係であることを指定する
(concept)
Relation が狭義弱順序を課すことを指定する
(concept)

概要

namespace std { namespace experimental { namespace ranges { inline namespace v1 {
template <class T, class U>
concept bool Same = /* 定義を参照 */;
template <class T, class U>
concept bool DerivedFrom = /* 定義を参照 */;
template <class T, class U>
concept bool ConvertibleTo = /* 定義を参照 */;
template <class T, class U>
concept bool CommonReference = /* 定義を参照 */;
template <class T, class U>
concept bool Common = /* 定義を参照 */;
template <class T>
concept bool Integral = /* 定義を参照 */;
template <class T>
concept bool SignedIntegral = /* 定義を参照 */;
template <class T>
concept bool UnsignedIntegral = /* 定義を参照 */;
template <class T, class U>
concept bool Assignable = /* 定義を参照 */;
template <class T>
concept bool Swappable = /* 定義を参照 */;
template <class T, class U>
concept bool SwappableWith = /* 定義を参照 */;
template <class T>
concept bool Destructible = /* 定義を参照 */;
template <class T, class... Args>
concept bool Constructible = /* 定義を参照 */;
template <class T>
concept bool DefaultConstructible = /* 定義を参照 */;
template <class T>
concept bool MoveConstructible = /* 定義を参照 */;
template <class T>
concept bool CopyConstructible = /* 定義を参照 */;
template <class B>
concept bool Boolean = /* 定義を参照 */;
template <class T, class U>
concept bool WeaklyEqualityComparableWith = /* 定義を参照 */;
template <class T>
concept bool EqualityComparable = /* 定義を参照 */;
template <class T, class U>
concept bool EqualityComparableWith = /* 定義を参照 */;
template <class T>
concept bool StrictTotallyOrdered = /* 定義を参照 */;
template <class T, class U>
concept bool StrictTotallyOrderedWith = /* 定義を参照 */;
template <class T>
concept bool Movable = /* 定義を参照 */;
template <class T>
concept bool Copyable = /* 定義を参照 */;
template <class T>
concept bool Semiregular = /* 定義を参照 */;
template <class T>
concept bool Regular = /* 定義を参照 */;
template <class F, class... Args>
concept bool Invocable = /* 定義を参照 */;
template <class F, class... Args>
concept bool RegularInvocable = /* 定義を参照 */;
template <class F, class... Args>
concept bool Predicate = /* 定義を参照 */;
template <class R, class T, class U>
concept bool Relation = /* 定義を参照 */;
template <class R, class T, class U>
concept bool StrictWeakOrder = /* 定義を参照 */;
}}}}