[range.all.general]

# 25 Ranges library [[ranges]](./#ranges)

## 25.7 Range adaptors [[range.adaptors]](range.adaptors#range.all.general)

### 25.7.6 All view [[range.all]](range.all#general)

#### 25.7.6.1 General [range.all.general]

[1](#1)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/ranges.tex#L4494)

views​::​all returns a view that includes all elements of
its range argument[.](#1.sentence-1)

[2](#2)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/ranges.tex#L4499)

The name views​::​all denotes a
range adaptor object ([[range.adaptor.object]](range.adaptor.object "25.7.2 Range adaptor objects"))[.](#2.sentence-1)

Given a subexpression E, the expressionviews​::​all(E) is expression-equivalent to:

- [(2.1)](#2.1)

  *decay-copy*(E) if the decayed type of E models [view](range.view#concept:view "25.4.5 Views [range.view]")[.](#2.1.sentence-1)

- [(2.2)](#2.2)

  Otherwise, ref_view{E} if that expression is well-formed[.](#2.2.sentence-1)

- [(2.3)](#2.3)

  Otherwise, owning_view{E}[.](#2.3.sentence-1)
