Skip to content

Commit

Permalink
Update range_adaptor_closure.md
Browse files Browse the repository at this point in the history
  • Loading branch information
tetsurom authored Mar 12, 2024
1 parent 89ae27b commit 76cc74b
Showing 1 changed file with 15 additions and 1 deletion.
16 changes: 15 additions & 1 deletion reference/ranges/range_adaptor_closure.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,22 @@ public:
inline constexpr user_defined_closure_t user_defined;
```
* std::ranges::range_adaptor_closure[color ff0000]
* std::ranges::viewable_range[link viewable_range.md]

パイプライン記法をサポートする方法は規定されていないが、一般には処理系がRangeと`range_adaptor_closure`を引数とする以下のような`operator|`を定義することで行われると考えられる。

パイプライン記法をサポートする方法は規定されていないが、一般には処理系がRangeと`range_adaptor_closure`を引数とする`operator|`を定義することで行われる。
```cpp
template<std::ranges::viewable_range R, class T>
requires std::derived_from<T, std::ranges::range_adaptor_closure<T>> && std::invocable<T, R>
constexpr auto operator| (R&& r, T&& raco) {
return raco(std::forward<R>(r));
}
```
* std::ranges::range_adaptor_closure[color ff0000]
* std::ranges::viewable_range[link viewable_range.md]
* std::invocable[link /reference/concepts/invocable.md]
* std::derived_from[link /reference/concepts/derived_from.md]

##
```cpp example
Expand Down

0 comments on commit 76cc74b

Please sign in to comment.