-
Notifications
You must be signed in to change notification settings - Fork 445
Range property requirements and conservation by views
Hannes Hauswedell edited this page Apr 3, 2019
·
6 revisions
This page covers which range concepts the input of each view has to fulfil and which of these properties are preserved in the range returned by the view (and in some cases which are added).
At a later point this information shall be inserted into the individual view's documentation.
view:: \ property |
input |
forward |
bidirectional |
random_access |
sized |
---|---|---|---|---|---|
adjacent_filter |
r, = | r, = | |||
adjacent_remove_if |
|||||
all |
r, = | = | = | = | = |
bounded |
|||||
c_str |
|||||
cartesian_product |
|||||
chunk |
|||||
concat |
|||||
const_ |
|||||
counted |
|||||
cycle |
|||||
delimit |
|||||
drop_exactly |
|||||
drop_while |
|||||
drop |
|||||
empty |
|||||
filter |
|||||
for_each |
r, = | - | - | - | - |
generate_n |
|||||
generate |
|||||
group_by |
|||||
indices |
|||||
indirect |
|||||
intersperse |
|||||
iota |
|||||
join |
r, = | - | - | - | - |
linear_distribute |
|||||
map |
|||||
move |
|||||
partial_sum |
|||||
remove_if |
|||||
repeat_n |
|||||
repeat |
|||||
replace_if |
|||||
replace |
|||||
reverse |
r, = | r, = | r, = | = | = |
sample |
|||||
set_algorithm |
|||||
single |
|||||
slice |
r, = | = | = | = | = |
sliding |
|||||
split |
|||||
stride |
|||||
tail |
r, = | = | = | = | = |
take_exactly |
r, = | = | = | = | + |
take_while |
r, = | = | = | = | - |
take |
r, = | = | = | = | - |
tokenize |
|||||
transform |
r, = | = | = | = | = |
unbounded |
|||||
unique |
|||||
zip_with |
|||||
zip |
symbol | keyword | description |
---|---|---|
r |
required | this property is required on ranges given as input |
- |
lost | this property of the input range is lost in output range |
= |
preserved | this property is preserved in the output range |
+ |
added | this property is added, even if not present on input |