From 6b002ce5ea4db8ee24e6fda0aeedc9dfc1134782 Mon Sep 17 00:00:00 2001 From: Hui Date: Sun, 26 May 2024 13:40:15 +0100 Subject: [PATCH] init class --- any_view.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/any_view.md b/any_view.md index fddaff6..129a18d 100644 --- a/any_view.md +++ b/any_view.md @@ -159,6 +159,34 @@ struct any_view; Here `Cat` handles both the traversal category and `sized_range`. `Ref` is the `range_reference_t`. It does not allow users to configure the `range_value_t`, `range_difference_t`, `borrowed_range` and `common_range`. `copyable` is mandatory in range-v3. +### Parameters Design + +```cpp +enum class category +{ + none = 0, + input = 1, + forward = 3, + bidirectional = 7, + random_access = 15, + contiguous = 31 + mask = contiguous, + sized = 32, + borrowed = 64, + common = 128, + move_only_iterator = 256, + move_only_view = 512 +}; + +template , + class RValueRef = add_rvalue_reference_t, + class Diff = ptrdiff_t> +struct any_view; +``` + + # Implementation Experience # Wording