Coverage Report

Created: 2021-08-28 18:14

D:\git\skunkworks\herald-for-cpp\herald\include\herald\analysis\ranges.h
Line
Count
Source (jump to first uncovered line)
1
//  Copyright 2021 Herald Project Contributors
2
//  SPDX-License-Identifier: Apache-2.0
3
//
4
5
#ifndef HERALD_RANGES_H
6
#define HERALD_RANGES_H
7
8
// TODO if def for C++20 support check (so we don't have to roll our own ranges lib)
9
// i.e. map std::views on to herald::analysis::views, otherwise include the following.
10
11
/// We may not use C++20 or similar ranges - we need to be super memory efficient in
12
/// our implementation for embedded devices, and we cannot use compiler features not
13
/// yet present in gcc-arm.
14
15
#include <array>
16
#include <map>
17
#include <variant>
18
#include <vector>
19
#include <cstdint>
20
#include <type_traits>
21
22
#include "sampling.h"
23
#include "../datatype/date.h"
24
25
namespace herald {
26
namespace analysis {
27
namespace views {
28
29
// Note: The following are SAMPLE filters, and only work with Samples
30
struct since {
31
11
  since(herald::datatype::Date after) : from(after) {}
32
219
  ~since() = default;
33
34
  template <typename ValT>
35
164
  bool operator()(const herald::analysis::sampling::Sample<ValT>& s) const {
36
164
    return s.taken > from;
37
164
  }
38
39
private:
40
  herald::datatype::Date from;
41
};
42
43
// Note: The following are value filters, and work with Samples and any other type
44
45
/// dual or chained filter
46
template <typename Pred1,typename Pred2>
47
struct dual_filter {
48
42
  dual_filter(const Pred1 p1, const Pred2 p2) : pred1(p1), pred2(p2) {}
??0?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@analysis@herald@@QEAA@U?$in_range@H@123@U?$greater_than@H@123@@Z
Line
Count
Source
48
1
  dual_filter(const Pred1 p1, const Pred2 p2) : pred1(p1), pred2(p2) {}
??0?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@QEAA@U?$in_range@H@123@U?$less_than@H@123@@Z
Line
Count
Source
48
5
  dual_filter(const Pred1 p1, const Pred2 p2) : pred1(p1), pred2(p2) {}
??0?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@QEAA@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@123@U?$less_than@H@123@@Z
Line
Count
Source
48
4
  dual_filter(const Pred1 p1, const Pred2 p2) : pred1(p1), pred2(p2) {}
??0?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@QEAA@Usince@123@U?$in_range@H@123@@Z
Line
Count
Source
48
4
  dual_filter(const Pred1 p1, const Pred2 p2) : pred1(p1), pred2(p2) {}
??0?$dual_filter@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@U?$in_range@N@234@@views@analysis@herald@@QEAA@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@123@U?$in_range@N@123@@Z
Line
Count
Source
48
2
  dual_filter(const Pred1 p1, const Pred2 p2) : pred1(p1), pred2(p2) {}
??0?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@analysis@herald@@QEAA@U?$in_range@H@123@Usince@123@@Z
Line
Count
Source
48
18
  dual_filter(const Pred1 p1, const Pred2 p2) : pred1(p1), pred2(p2) {}
??0?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$in_range@N@234@@views@analysis@herald@@QEAA@U?$in_range@H@123@U?$in_range@N@123@@Z
Line
Count
Source
48
8
  dual_filter(const Pred1 p1, const Pred2 p2) : pred1(p1), pred2(p2) {}
49
186
  ~dual_filter() = default;
??1?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@QEAA@XZ
Line
Count
Source
49
28
  ~dual_filter() = default;
??1?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@QEAA@XZ
Line
Count
Source
49
44
  ~dual_filter() = default;
??1?$dual_filter@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@U?$in_range@N@234@@views@analysis@herald@@QEAA@XZ
Line
Count
Source
49
6
  ~dual_filter() = default;
??1?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@analysis@herald@@QEAA@XZ
Line
Count
Source
49
108
  ~dual_filter() = default;
50
51
  template <typename VTOther>
52
280
  bool operator()(const VTOther& value) const {
53
280
    return pred1(value) && 
pred2(value)224
;
54
280
  }
??$?RU?$Sample@H@sampling@analysis@herald@@@?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@analysis@herald@@QEBA_NAEBU?$Sample@H@sampling@23@@Z
Line
Count
Source
52
6
  bool operator()(const VTOther& value) const {
53
6
    return pred1(value) && 
pred2(value)2
;
54
6
  }
??$?RU?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@@?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@QEBA_NAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@@Z
Line
Count
Source
52
27
  bool operator()(const VTOther& value) const {
53
27
    return pred1(value) && 
pred2(value)21
;
54
27
  }
??$?RU?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@@?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@QEBA_NAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@@Z
Line
Count
Source
52
42
  bool operator()(const VTOther& value) const {
53
42
    return pred1(value) && 
pred2(value)24
;
54
42
  }
??$?RU?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@@?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@QEBA_NAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@@Z
Line
Count
Source
52
54
  bool operator()(const VTOther& value) const {
53
54
    return pred1(value) && 
pred2(value)34
;
54
54
  }
??$?RU?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@@?$dual_filter@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@U?$in_range@N@234@@views@analysis@herald@@QEBA_NAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@@Z
Line
Count
Source
52
14
  bool operator()(const VTOther& value) const {
53
14
    return pred1(value) && 
pred2(value)6
;
54
14
  }
??$?RU?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@@?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@analysis@herald@@QEBA_NAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@@Z
Line
Count
Source
52
98
  bool operator()(const VTOther& value) const {
53
98
    return pred1(value) && pred2(value);
54
98
  }
??$?RU?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@@?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$in_range@N@234@@views@analysis@herald@@QEBA_NAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@@Z
Line
Count
Source
52
39
  bool operator()(const VTOther& value) const {
53
39
    return pred1(value) && pred2(value);
54
39
  }
55
56
private:
57
  const Pred1 pred1;
58
  const Pred2 pred2;
59
};
60
61
// Is genericised to...
62
template <typename VT>
63
struct in_range {
64
34
  in_range(const VT min, const VT max) : min(min), max(max) {}
??0?$in_range@H@views@analysis@herald@@QEAA@HH@Z
Line
Count
Source
64
24
  in_range(const VT min, const VT max) : min(min), max(max) {}
??0?$in_range@N@views@analysis@herald@@QEAA@NN@Z
Line
Count
Source
64
10
  in_range(const VT min, const VT max) : min(min), max(max) {}
65
  ~in_range() = default;
66
67
  template <typename VTOther>
68
321
  bool operator()(const VTOther& value) const {
69
321
    return value >= min && 
value <= max302
;
70
321
  }
??$?RU?$Sample@H@sampling@analysis@herald@@@?$in_range@H@views@analysis@herald@@QEBA_NAEBU?$Sample@H@sampling@23@@Z
Line
Count
Source
68
27
  bool operator()(const VTOther& value) const {
69
27
    return value >= min && 
value <= max19
;
70
27
  }
??$?RU?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@@?$in_range@H@views@analysis@herald@@QEBA_NAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@@Z
Line
Count
Source
68
249
  bool operator()(const VTOther& value) const {
69
249
    return value >= min && 
value <= max239
;
70
249
  }
??$?RU?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@@?$in_range@N@views@analysis@herald@@QEBA_NAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@@Z
Line
Count
Source
68
45
  bool operator()(const VTOther& value) const {
69
45
    return value >= min && 
value <= max44
;
70
45
  }
71
72
private:
73
  const VT min;
74
  const VT max;
75
};
76
77
template <typename VT>
78
struct greater_than {
79
1
  greater_than(const VT min) : min(min) {}
80
  ~greater_than() = default;
81
82
  template <typename VTOther>
83
2
  bool operator()(const VTOther& value) const {
84
2
    return value > min;
85
2
  }
86
87
private:
88
  const VT min;
89
};
90
91
template <typename VT>
92
struct less_than {
93
8
  less_than(const VT max) : max(max) {}
94
  ~less_than() = default;
95
96
  template <typename VTOther>
97
45
  bool operator()(const VTOther& value) const {
98
45
    return value < max;
99
45
  }
100
101
private:
102
  const VT max;
103
};
104
105
// TODO consider clamping modifications as well as in_range filtering
106
107
/// Proxies a collection's iterator
108
/// In this implementation, does nothing else
109
/// Use like:-
110
/// iterator_proxy<> proxy(myCollection);
111
/// while (proxy != std::end(myCollection)) { // Could also use !proxy.ended()
112
///   std::cout << *proxy << std::endl; // prints ALL numbers
113
///   ++proxy;
114
/// }
115
template <typename Coll,
116
          //typename ValT = typename std::remove_cv<typename Coll::value_type::first_type>::type,
117
          typename ValT = typename std::remove_cv<typename Coll::value_type>::type, // works for intrinsic types and complex types
118
          typename IterT = typename Coll::iterator,
119
          typename SizeT = typename Coll::size_type
120
         >
121
struct iterator_proxy {
122
  using base_iterator = IterT;
123
  using base_value_type = ValT;
124
  using base_size_type = SizeT;
125
126
2
  iterator_proxy(Coll& coll) : coll(coll), iter(std::move(std::begin(coll))), endIter(std::move(std::end(coll))) {}
??0?$iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAA@AEAU?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@23@@Z
Line
Count
Source
126
1
  iterator_proxy(Coll& coll) : coll(coll), iter(std::move(std::begin(coll))), endIter(std::move(std::end(coll))) {}
??0?$iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@AEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@23@@Z
Line
Count
Source
126
1
  iterator_proxy(Coll& coll) : coll(coll), iter(std::move(std::begin(coll))), endIter(std::move(std::end(coll))) {}
127
  iterator_proxy(iterator_proxy&& other) : coll(other.coll), iter(std::move(other.iter)), endIter(std::move(other.endIter)) {}
128
  iterator_proxy(const iterator_proxy& other) : coll(other.coll), iter(other.iter), endIter(other.endIter) {}
129
  ~iterator_proxy() = default;
130
131
10
  auto operator*() -> const ValT& {
132
10
    return *iter;
133
10
  }
??D?$iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAAAEBU?$Sample@H@sampling@23@XZ
Line
Count
Source
131
5
  auto operator*() -> const ValT& {
132
5
    return *iter;
133
5
  }
??D?$iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@XZ
Line
Count
Source
131
5
  auto operator*() -> const ValT& {
132
5
    return *iter;
133
5
  }
134
135
  /// prefix operator
136
10
  iterator_proxy<Coll>& operator++() {
137
10
    ++iter;
138
10
    return *this; // reference to instance
139
10
  }
??E?$iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAAAEAU0123@XZ
Line
Count
Source
136
5
  iterator_proxy<Coll>& operator++() {
137
5
    ++iter;
138
5
    return *this; // reference to instance
139
5
  }
??E?$iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEAU0123@XZ
Line
Count
Source
136
5
  iterator_proxy<Coll>& operator++() {
137
5
    ++iter;
138
5
    return *this; // reference to instance
139
5
  }
140
141
  // postfix operator
142
  iterator_proxy<Coll> operator++(int) {
143
    iterator_proxy<Coll> cp =  *this; // copy of instance
144
    ++(*this);
145
    return cp;
146
  }
147
148
  bool operator==(IterT otherIter) const {
149
    return iter == otherIter;
150
  }
151
152
  bool operator!=(IterT otherIter) const {
153
    return iter != otherIter;
154
  }
155
156
  friend bool operator!=(IterT otherIter,iterator_proxy<Coll> thisIter) {
157
    return otherIter != thisIter.iter;
158
  }
159
160
  friend bool operator==(IterT otherIter,iterator_proxy<Coll> thisIter) {
161
    return otherIter == thisIter.iter;
162
  }
163
164
  IterT& wrapped() {
165
    return iter;
166
  }
167
168
  IterT& end() {
169
    return endIter;
170
  }
171
172
4
  bool ended() {
173
4
    return endIter == iter;
174
4
  }
?ended@?$iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAA_NXZ
Line
Count
Source
172
2
  bool ended() {
173
2
    return endIter == iter;
174
2
  }
?ended@?$iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA_NXZ
Line
Count
Source
172
2
  bool ended() {
173
2
    return endIter == iter;
174
2
  }
175
176
  Coll& collection() const {
177
    return coll;
178
  }
179
180
private:
181
  Coll& coll;
182
  IterT iter;
183
  IterT endIter;
184
};
185
186
///
187
/// Use like 
188
/// filter_fn<> myFilter(in_range<int>(18,65));
189
/// bool passes = myFilter(45);
190
///
191
template <typename Pred>
192
struct filter_fn {
193
83
  filter_fn(const Pred pred) : pred(pred) {}
??0?$filter_fn@U?$in_range@H@views@analysis@herald@@@views@analysis@herald@@QEAA@U?$in_range@H@123@@Z
Line
Count
Source
193
37
  filter_fn(const Pred pred) : pred(pred) {}
??0?$filter_fn@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@analysis@herald@@@views@analysis@herald@@QEAA@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@123@@Z
Line
Count
Source
193
1
  filter_fn(const Pred pred) : pred(pred) {}
??0?$filter_fn@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@@views@analysis@herald@@QEAA@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@123@@Z
Line
Count
Source
193
5
  filter_fn(const Pred pred) : pred(pred) {}
??0?$filter_fn@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@@views@analysis@herald@@QEAA@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@123@@Z
Line
Count
Source
193
4
  filter_fn(const Pred pred) : pred(pred) {}
??0?$filter_fn@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@@views@analysis@herald@@QEAA@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@123@@Z
Line
Count
Source
193
4
  filter_fn(const Pred pred) : pred(pred) {}
??0?$filter_fn@Usince@views@analysis@herald@@@views@analysis@herald@@QEAA@Usince@123@@Z
Line
Count
Source
193
4
  filter_fn(const Pred pred) : pred(pred) {}
??0?$filter_fn@U?$dual_filter@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@U?$in_range@N@234@@views@analysis@herald@@@views@analysis@herald@@QEAA@U?$dual_filter@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@U?$in_range@N@234@@123@@Z
Line
Count
Source
193
2
  filter_fn(const Pred pred) : pred(pred) {}
??0?$filter_fn@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@analysis@herald@@@views@analysis@herald@@QEAA@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@123@@Z
Line
Count
Source
193
18
  filter_fn(const Pred pred) : pred(pred) {}
??0?$filter_fn@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$in_range@N@234@@views@analysis@herald@@@views@analysis@herald@@QEAA@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$in_range@N@234@@123@@Z
Line
Count
Source
193
8
  filter_fn(const Pred pred) : pred(pred) {}
194
94
  ~filter_fn() = default;
??1?$filter_fn@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@@views@analysis@herald@@QEAA@XZ
Line
Count
Source
194
12
  ~filter_fn() = default;
??1?$filter_fn@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@@views@analysis@herald@@QEAA@XZ
Line
Count
Source
194
4
  ~filter_fn() = default;
??1?$filter_fn@Usince@views@analysis@herald@@@views@analysis@herald@@QEAA@XZ
Line
Count
Source
194
4
  ~filter_fn() = default;
??1?$filter_fn@U?$dual_filter@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@U?$in_range@N@234@@views@analysis@herald@@@views@analysis@herald@@QEAA@XZ
Line
Count
Source
194
2
  ~filter_fn() = default;
??1?$filter_fn@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@analysis@herald@@@views@analysis@herald@@QEAA@XZ
Line
Count
Source
194
72
  ~filter_fn() = default;
195
196
  template <typename ValT>
197
308
  auto operator()(const ValT& val) -> bool {
198
308
    return pred(val);
199
308
  }
??$?RU?$Sample@H@sampling@analysis@herald@@@?$filter_fn@U?$in_range@H@views@analysis@herald@@@views@analysis@herald@@QEAA_NAEBU?$Sample@H@sampling@23@@Z
Line
Count
Source
197
21
  auto operator()(const ValT& val) -> bool {
198
21
    return pred(val);
199
21
  }
??$?RU?$Sample@H@sampling@analysis@herald@@@?$filter_fn@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@analysis@herald@@@views@analysis@herald@@QEAA_NAEBU?$Sample@H@sampling@23@@Z
Line
Count
Source
197
6
  auto operator()(const ValT& val) -> bool {
198
6
    return pred(val);
199
6
  }
??$?RU?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@@?$filter_fn@U?$in_range@H@views@analysis@herald@@@views@analysis@herald@@QEAA_NAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@@Z
Line
Count
Source
197
51
  auto operator()(const ValT& val) -> bool {
198
51
    return pred(val);
199
51
  }
??$?RU?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@@?$filter_fn@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@@views@analysis@herald@@QEAA_NAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@@Z
Line
Count
Source
197
27
  auto operator()(const ValT& val) -> bool {
198
27
    return pred(val);
199
27
  }
??$?RU?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@@?$filter_fn@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@@views@analysis@herald@@QEAA_NAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@@Z
Line
Count
Source
197
28
  auto operator()(const ValT& val) -> bool {
198
28
    return pred(val);
199
28
  }
??$?RU?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@@?$filter_fn@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@@views@analysis@herald@@QEAA_NAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@@Z
Line
Count
Source
197
12
  auto operator()(const ValT& val) -> bool {
198
12
    return pred(val);
199
12
  }
??$?RU?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@@?$filter_fn@Usince@views@analysis@herald@@@views@analysis@herald@@QEAA_NAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@@Z
Line
Count
Source
197
12
  auto operator()(const ValT& val) -> bool {
198
12
    return pred(val);
199
12
  }
??$?RU?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@@?$filter_fn@U?$dual_filter@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@U?$in_range@N@234@@views@analysis@herald@@@views@analysis@herald@@QEAA_NAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@@Z
Line
Count
Source
197
14
  auto operator()(const ValT& val) -> bool {
198
14
    return pred(val);
199
14
  }
??$?RU?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@@?$filter_fn@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@analysis@herald@@@views@analysis@herald@@QEAA_NAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@@Z
Line
Count
Source
197
98
  auto operator()(const ValT& val) -> bool {
198
98
    return pred(val);
199
98
  }
??$?RU?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@@?$filter_fn@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$in_range@N@234@@views@analysis@herald@@@views@analysis@herald@@QEAA_NAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@@Z
Line
Count
Source
197
39
  auto operator()(const ValT& val) -> bool {
198
39
    return pred(val);
199
39
  }
200
201
42
  const Pred predicate() const {
202
42
    return pred;
203
42
  }
?predicate@?$filter_fn@U?$in_range@H@views@analysis@herald@@@views@analysis@herald@@QEBA?BU?$in_range@H@234@XZ
Line
Count
Source
201
32
  const Pred predicate() const {
202
32
    return pred;
203
32
  }
?predicate@?$filter_fn@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@@views@analysis@herald@@QEBA?BU?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@234@XZ
Line
Count
Source
201
4
  const Pred predicate() const {
202
4
    return pred;
203
4
  }
?predicate@?$filter_fn@Usince@views@analysis@herald@@@views@analysis@herald@@QEBA?BUsince@234@XZ
Line
Count
Source
201
4
  const Pred predicate() const {
202
4
    return pred;
203
4
  }
?predicate@?$filter_fn@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@@views@analysis@herald@@QEBA?BU?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@234@XZ
Line
Count
Source
201
2
  const Pred predicate() const {
202
2
    return pred;
203
2
  }
204
205
private:
206
  const Pred pred;
207
};
208
209
/// Create a view holder that wraps an iterator, so the result of all returns have a begin() and end()
210
/// just like an STL collection
211
template <typename IterProxyT,
212
          typename BaseValT = typename IterProxyT::base_value_type,
213
          typename BaseIterT = typename IterProxyT::base_iterator,
214
          typename BaseSizeT = typename IterProxyT::base_size_type>
215
struct view {
216
  // Make this look like an STL collection (so filter<Coll,Pred> works with a view)
217
  using value_type = BaseValT;
218
  using iterator = BaseIterT;
219
  using size_type = BaseSizeT;
220
221
  using is_proxy = std::true_type;
222
223
28
  view(IterProxyT srcIter) : source(std::forward<IterProxyT>(srcIter)) {} // TAKE OWNERSHIP
??0?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@U?$Sample@H@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@634@_K@views@analysis@herald@@QEAA@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@123@@Z
Line
Count
Source
223
1
  view(IterProxyT srcIter) : source(std::forward<IterProxyT>(srcIter)) {} // TAKE OWNERSHIP
??0?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@U?$Sample@H@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@634@_K@views@analysis@herald@@QEAA@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@123@@Z
Line
Count
Source
223
1
  view(IterProxyT srcIter) : source(std::forward<IterProxyT>(srcIter)) {} // TAKE OWNERSHIP
??0?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@123@@Z
Line
Count
Source
223
1
  view(IterProxyT srcIter) : source(std::forward<IterProxyT>(srcIter)) {} // TAKE OWNERSHIP
??0?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@123@@Z
Line
Count
Source
223
4
  view(IterProxyT srcIter) : source(std::forward<IterProxyT>(srcIter)) {} // TAKE OWNERSHIP
??0?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@123@@Z
Line
Count
Source
223
1
  view(IterProxyT srcIter) : source(std::forward<IterProxyT>(srcIter)) {} // TAKE OWNERSHIP
??0?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@123@@Z
Line
Count
Source
223
2
  view(IterProxyT srcIter) : source(std::forward<IterProxyT>(srcIter)) {} // TAKE OWNERSHIP
??0?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@123@@Z
Line
Count
Source
223
18
  view(IterProxyT srcIter) : source(std::forward<IterProxyT>(srcIter)) {} // TAKE OWNERSHIP
224
20
  ~view() = default;
??1?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA@XZ
Line
Count
Source
224
2
  ~view() = default;
??1?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA@XZ
Line
Count
Source
224
18
  ~view() = default;
225
226
31
  auto begin() -> IterProxyT {
227
31
    return source;
228
31
  }
?begin@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@U?$Sample@H@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@634@_K@views@analysis@herald@@QEAA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@234@XZ
Line
Count
Source
226
1
  auto begin() -> IterProxyT {
227
1
    return source;
228
1
  }
?begin@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@U?$Sample@H@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@634@_K@views@analysis@herald@@QEAA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@234@XZ
Line
Count
Source
226
1
  auto begin() -> IterProxyT {
227
1
    return source;
228
1
  }
?begin@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@234@XZ
Line
Count
Source
226
1
  auto begin() -> IterProxyT {
227
1
    return source;
228
1
  }
?begin@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@234@XZ
Line
Count
Source
226
4
  auto begin() -> IterProxyT {
227
4
    return source;
228
4
  }
?begin@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@234@XZ
Line
Count
Source
226
2
  auto begin() -> IterProxyT {
227
2
    return source;
228
2
  }
?begin@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@234@XZ
Line
Count
Source
226
4
  auto begin() -> IterProxyT {
227
4
    return source;
228
4
  }
?begin@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@234@XZ
Line
Count
Source
226
18
  auto begin() -> IterProxyT {
227
18
    return source;
228
18
  }
229
230
36
  auto end() -> BaseIterT {
231
36
    return source.end();
232
36
  }
?end@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@U?$Sample@H@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@634@_K@views@analysis@herald@@QEAA?AU?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@sampling@34@XZ
Line
Count
Source
230
1
  auto end() -> BaseIterT {
231
1
    return source.end();
232
1
  }
?end@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@U?$Sample@H@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@634@_K@views@analysis@herald@@QEAA?AU?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@sampling@34@XZ
Line
Count
Source
230
2
  auto end() -> BaseIterT {
231
2
    return source.end();
232
2
  }
?end@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA?AU?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@sampling@34@XZ
Line
Count
Source
230
2
  auto end() -> BaseIterT {
231
2
    return source.end();
232
2
  }
?end@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA?AU?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@sampling@34@XZ
Line
Count
Source
230
7
  auto end() -> BaseIterT {
231
7
    return source.end();
232
7
  }
?end@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA?AU?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@sampling@34@XZ
Line
Count
Source
230
2
  auto end() -> BaseIterT {
231
2
    return source.end();
232
2
  }
?end@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA?AU?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@sampling@34@XZ
Line
Count
Source
230
4
  auto end() -> BaseIterT {
231
4
    return source.end();
232
4
  }
?end@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA?AU?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@sampling@34@XZ
Line
Count
Source
230
18
  auto end() -> BaseIterT {
231
18
    return source.end();
232
18
  }
233
234
  // auto latest() -> BaseValT {
235
  //   //return source.latest();
236
  //   return *(source.end() - 1);
237
  // }
238
8
  Date latest() {
239
8
    return (*(source.end() - 1)).taken;
240
8
  }
241
242
  template <typename IterT>
243
  bool operator==(const IterT& other) {
244
    return other == source;
245
  }
246
247
  template <typename IterT>
248
  bool operator!=(const IterT& other) {
249
    return other != source;
250
  }
251
252
7
  auto size() -> BaseSizeT {
253
7
    // return source.size(); // this is the UNFILTERED size
254
7
    BaseSizeT sz = 0;
255
7
    auto iter = source; // copy the iterator so as not to alter its state
256
7
    auto end = source.end(); // copy the iterator so as not to alter its state
257
20
    while (iter != end) {
258
13
      ++sz;
259
13
      ++iter;
260
13
    }
261
7
    // minus one as we don't want the distance to end() but the last element the 1 before it
262
7
    return sz;
263
7
    // return std::distance(source.wrapped(),source.end() - 1);
264
7
  }
?size@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@U?$Sample@H@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@634@_K@views@analysis@herald@@QEAA_KXZ
Line
Count
Source
252
1
  auto size() -> BaseSizeT {
253
1
    // return source.size(); // this is the UNFILTERED size
254
1
    BaseSizeT sz = 0;
255
1
    auto iter = source; // copy the iterator so as not to alter its state
256
1
    auto end = source.end(); // copy the iterator so as not to alter its state
257
3
    while (iter != end) {
258
2
      ++sz;
259
2
      ++iter;
260
2
    }
261
1
    // minus one as we don't want the distance to end() but the last element the 1 before it
262
1
    return sz;
263
1
    // return std::distance(source.wrapped(),source.end() - 1);
264
1
  }
?size@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@U?$Sample@H@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@634@_K@views@analysis@herald@@QEAA_KXZ
Line
Count
Source
252
1
  auto size() -> BaseSizeT {
253
1
    // return source.size(); // this is the UNFILTERED size
254
1
    BaseSizeT sz = 0;
255
1
    auto iter = source; // copy the iterator so as not to alter its state
256
1
    auto end = source.end(); // copy the iterator so as not to alter its state
257
2
    while (iter != end) {
258
1
      ++sz;
259
1
      ++iter;
260
1
    }
261
1
    // minus one as we don't want the distance to end() but the last element the 1 before it
262
1
    return sz;
263
1
    // return std::distance(source.wrapped(),source.end() - 1);
264
1
  }
?size@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA_KXZ
Line
Count
Source
252
1
  auto size() -> BaseSizeT {
253
1
    // return source.size(); // this is the UNFILTERED size
254
1
    BaseSizeT sz = 0;
255
1
    auto iter = source; // copy the iterator so as not to alter its state
256
1
    auto end = source.end(); // copy the iterator so as not to alter its state
257
6
    while (iter != end) {
258
5
      ++sz;
259
5
      ++iter;
260
5
    }
261
1
    // minus one as we don't want the distance to end() but the last element the 1 before it
262
1
    return sz;
263
1
    // return std::distance(source.wrapped(),source.end() - 1);
264
1
  }
?size@?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA_KXZ
Line
Count
Source
252
4
  auto size() -> BaseSizeT {
253
4
    // return source.size(); // this is the UNFILTERED size
254
4
    BaseSizeT sz = 0;
255
4
    auto iter = source; // copy the iterator so as not to alter its state
256
4
    auto end = source.end(); // copy the iterator so as not to alter its state
257
9
    while (iter != end) {
258
5
      ++sz;
259
5
      ++iter;
260
5
    }
261
4
    // minus one as we don't want the distance to end() but the last element the 1 before it
262
4
    return sz;
263
4
    // return std::distance(source.wrapped(),source.end() - 1);
264
4
  }
265
266
13
  auto operator[](BaseSizeT position) -> BaseValT {
267
13
    return *(source + position);
268
13
  }
??A?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@U?$Sample@H@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@634@_K@views@analysis@herald@@QEAA?AU?$Sample@H@sampling@23@_K@Z
Line
Count
Source
266
2
  auto operator[](BaseSizeT position) -> BaseValT {
267
2
    return *(source + position);
268
2
  }
??A?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@U?$Sample@H@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@634@_K@views@analysis@herald@@QEAA?AU?$Sample@H@sampling@23@_K@Z
Line
Count
Source
266
1
  auto operator[](BaseSizeT position) -> BaseValT {
267
1
    return *(source + position);
268
1
  }
??A?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA?AU?$Sample@VRSSI@datatype@herald@@@sampling@23@_K@Z
Line
Count
Source
266
5
  auto operator[](BaseSizeT position) -> BaseValT {
267
5
    return *(source + position);
268
5
  }
??A?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@views@analysis@herald@@QEAA?AU?$Sample@VRSSI@datatype@herald@@@sampling@23@_K@Z
Line
Count
Source
266
5
  auto operator[](BaseSizeT position) -> BaseValT {
267
5
    return *(source + position);
268
5
  }
269
270
private:
271
  IterProxyT source;
272
};
273
274
/// Now we create a version that selectively returns the underlying iterator's elements using filter_fn
275
/// Use like:-
276
/// myCollection is a collection with 14,16,19,45,66 in it (ints)
277
/// filtered_iterator_proxy<> proxy(myCollection, in_range<int>(18,65));
278
/// while (proxy != std::end(myCollection)) { // Could also use !proxy.ended()
279
///   std::cout << *proxy << std::endl; // prints ONLY 19 and 45
280
///   ++proxy;
281
/// }
282
template <typename Coll,
283
          typename Pred,
284
          // typename ValT = typename std::remove_cv<typename Coll::value_type::first_type>::type,
285
          typename ValT = typename std::remove_cv<typename Coll::value_type>::type, // works for intrinsic types and complex types
286
          typename IterT = typename Coll::iterator,
287
          typename SizeT = typename Coll::size_type
288
         >
289
struct filtered_iterator_proxy {
290
  using base_iterator = IterT;
291
  using base_coll_type = Coll; // for chaining
292
  using base_pred_type = Pred; // for chaining
293
  using base_value_type = ValT;
294
  using base_size_type = SizeT;
295
296
  using value_type = ValT;
297
  using iterator = IterT;
298
  using size_type = SizeT;
299
  // using difference_type = typename Coll::difference_type;
300
301
  using is_proxy = std::true_type;
302
303
83
  filtered_iterator_proxy(Coll& coll, Pred pred) : coll(coll), iter(std::move(std::begin(coll))), endIter(std::move(std::end(coll))), filter(pred) {
304
83
    // move forward to the first match (or end)
305
83
    moveToFirst();
306
83
  }
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAA@AEAU?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@23@U?$in_range@H@123@@Z
Line
Count
Source
303
5
  filtered_iterator_proxy(Coll& coll, Pred pred) : coll(coll), iter(std::move(std::begin(coll))), endIter(std::move(std::end(coll))), filter(pred) {
304
5
    // move forward to the first match (or end)
305
5
    moveToFirst();
306
5
  }
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAA@AEAU?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@23@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@123@@Z
Line
Count
Source
303
1
  filtered_iterator_proxy(Coll& coll, Pred pred) : coll(coll), iter(std::move(std::begin(coll))), endIter(std::move(std::end(coll))), filter(pred) {
304
1
    // move forward to the first match (or end)
305
1
    moveToFirst();
306
1
  }
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@AEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@23@U?$in_range@H@123@@Z
Line
Count
Source
303
5
  filtered_iterator_proxy(Coll& coll, Pred pred) : coll(coll), iter(std::move(std::begin(coll))), endIter(std::move(std::end(coll))), filter(pred) {
304
5
    // move forward to the first match (or end)
305
5
    moveToFirst();
306
5
  }
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@AEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@23@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@123@@Z
Line
Count
Source
303
4
  filtered_iterator_proxy(Coll& coll, Pred pred) : coll(coll), iter(std::move(std::begin(coll))), endIter(std::move(std::end(coll))), filter(pred) {
304
4
    // move forward to the first match (or end)
305
4
    moveToFirst();
306
4
  }
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@AEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@23@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@123@@Z
Line
Count
Source
303
1
  filtered_iterator_proxy(Coll& coll, Pred pred) : coll(coll), iter(std::move(std::begin(coll))), endIter(std::move(std::end(coll))), filter(pred) {
304
1
    // move forward to the first match (or end)
305
1
    moveToFirst();
306
1
  }
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@AEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@23@U?$in_range@H@123@@Z
Line
Count
Source
303
1
  filtered_iterator_proxy(Coll& coll, Pred pred) : coll(coll), iter(std::move(std::begin(coll))), endIter(std::move(std::end(coll))), filter(pred) {
304
1
    // move forward to the first match (or end)
305
1
    moveToFirst();
306
1
  }
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@AEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@23@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@123@@Z
Line
Count
Source
303
4
  filtered_iterator_proxy(Coll& coll, Pred pred) : coll(coll), iter(std::move(std::begin(coll))), endIter(std::move(std::end(coll))), filter(pred) {
304
4
    // move forward to the first match (or end)
305
4
    moveToFirst();
306
4
  }
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@AEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@23@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@123@@Z
Line
Count
Source
303
4
  filtered_iterator_proxy(Coll& coll, Pred pred) : coll(coll), iter(std::move(std::begin(coll))), endIter(std::move(std::end(coll))), filter(pred) {
304
4
    // move forward to the first match (or end)
305
4
    moveToFirst();
306
4
  }
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@Usince@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@AEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@23@Usince@123@@Z
Line
Count
Source
303
4
  filtered_iterator_proxy(Coll& coll, Pred pred) : coll(coll), iter(std::move(std::begin(coll))), endIter(std::move(std::end(coll))), filter(pred) {
304
4
    // move forward to the first match (or end)
305
4
    moveToFirst();
306
4
  }
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@U?$in_range@N@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@AEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@23@U?$dual_filter@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@U?$in_range@N@234@@123@@Z
Line
Count
Source
303
2
  filtered_iterator_proxy(Coll& coll, Pred pred) : coll(coll), iter(std::move(std::begin(coll))), endIter(std::move(std::end(coll))), filter(pred) {
304
2
    // move forward to the first match (or end)
305
2
    moveToFirst();
306
2
  }
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@AEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@23@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@123@@Z
Line
Count
Source
303
18
  filtered_iterator_proxy(Coll& coll, Pred pred) : coll(coll), iter(std::move(std::begin(coll))), endIter(std::move(std::end(coll))), filter(pred) {
304
18
    // move forward to the first match (or end)
305
18
    moveToFirst();
306
18
  }
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@AEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@23@U?$in_range@H@123@@Z
Line
Count
Source
303
26
  filtered_iterator_proxy(Coll& coll, Pred pred) : coll(coll), iter(std::move(std::begin(coll))), endIter(std::move(std::end(coll))), filter(pred) {
304
26
    // move forward to the first match (or end)
305
26
    moveToFirst();
306
26
  }
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$in_range@N@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@AEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@23@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$in_range@N@234@@123@@Z
Line
Count
Source
303
8
  filtered_iterator_proxy(Coll& coll, Pred pred) : coll(coll), iter(std::move(std::begin(coll))), endIter(std::move(std::end(coll))), filter(pred) {
304
8
    // move forward to the first match (or end)
305
8
    moveToFirst();
306
8
  }
307
308
  // chaining ctor
309
  // filtered_iterator_proxy(filtered_iterator_proxy&& other, Pred pred) : iter(std::move(other.iter)), endIter(std::move(other.endIter)), filter(dual_filter(other.filter,pred)) {}
310
28
  filtered_iterator_proxy(filtered_iterator_proxy&& other) : coll(other.coll), iter(std::move(other.iter)), endIter(std::move(other.endIter)), filter(other.filter) {}
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAA@$$QEAU0123@@Z
Line
Count
Source
310
1
  filtered_iterator_proxy(filtered_iterator_proxy&& other) : coll(other.coll), iter(std::move(other.iter)), endIter(std::move(other.endIter)), filter(other.filter) {}
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAA@$$QEAU0123@@Z
Line
Count
Source
310
1
  filtered_iterator_proxy(filtered_iterator_proxy&& other) : coll(other.coll), iter(std::move(other.iter)), endIter(std::move(other.endIter)), filter(other.filter) {}
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@$$QEAU0123@@Z
Line
Count
Source
310
1
  filtered_iterator_proxy(filtered_iterator_proxy&& other) : coll(other.coll), iter(std::move(other.iter)), endIter(std::move(other.endIter)), filter(other.filter) {}
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@$$QEAU0123@@Z
Line
Count
Source
310
4
  filtered_iterator_proxy(filtered_iterator_proxy&& other) : coll(other.coll), iter(std::move(other.iter)), endIter(std::move(other.endIter)), filter(other.filter) {}
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@$$QEAU0123@@Z
Line
Count
Source
310
1
  filtered_iterator_proxy(filtered_iterator_proxy&& other) : coll(other.coll), iter(std::move(other.iter)), endIter(std::move(other.endIter)), filter(other.filter) {}
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@$$QEAU0123@@Z
Line
Count
Source
310
2
  filtered_iterator_proxy(filtered_iterator_proxy&& other) : coll(other.coll), iter(std::move(other.iter)), endIter(std::move(other.endIter)), filter(other.filter) {}
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@$$QEAU0123@@Z
Line
Count
Source
310
18
  filtered_iterator_proxy(filtered_iterator_proxy&& other) : coll(other.coll), iter(std::move(other.iter)), endIter(std::move(other.endIter)), filter(other.filter) {}
311
79
  filtered_iterator_proxy(const filtered_iterator_proxy& other) : coll(other.coll), iter(other.iter), endIter(other.endIter), filter(other.filter) {}
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAA@AEBU0123@@Z
Line
Count
Source
311
5
  filtered_iterator_proxy(const filtered_iterator_proxy& other) : coll(other.coll), iter(other.iter), endIter(other.endIter), filter(other.filter) {}
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAA@AEBU0123@@Z
Line
Count
Source
311
4
  filtered_iterator_proxy(const filtered_iterator_proxy& other) : coll(other.coll), iter(other.iter), endIter(other.endIter), filter(other.filter) {}
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@AEBU0123@@Z
Line
Count
Source
311
8
  filtered_iterator_proxy(const filtered_iterator_proxy& other) : coll(other.coll), iter(other.iter), endIter(other.endIter), filter(other.filter) {}
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@AEBU0123@@Z
Line
Count
Source
311
17
  filtered_iterator_proxy(const filtered_iterator_proxy& other) : coll(other.coll), iter(other.iter), endIter(other.endIter), filter(other.filter) {}
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@AEBU0123@@Z
Line
Count
Source
311
3
  filtered_iterator_proxy(const filtered_iterator_proxy& other) : coll(other.coll), iter(other.iter), endIter(other.endIter), filter(other.filter) {}
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@AEBU0123@@Z
Line
Count
Source
311
6
  filtered_iterator_proxy(const filtered_iterator_proxy& other) : coll(other.coll), iter(other.iter), endIter(other.endIter), filter(other.filter) {}
??0?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@AEBU0123@@Z
Line
Count
Source
311
36
  filtered_iterator_proxy(const filtered_iterator_proxy& other) : coll(other.coll), iter(other.iter), endIter(other.endIter), filter(other.filter) {}
312
94
  ~filtered_iterator_proxy() = default;
??1?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@XZ
Line
Count
Source
312
12
  ~filtered_iterator_proxy() = default;
??1?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@XZ
Line
Count
Source
312
4
  ~filtered_iterator_proxy() = default;
??1?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@Usince@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@XZ
Line
Count
Source
312
4
  ~filtered_iterator_proxy() = default;
??1?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@U?$in_range@N@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@XZ
Line
Count
Source
312
2
  ~filtered_iterator_proxy() = default;
??1?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA@XZ
Line
Count
Source
312
72
  ~filtered_iterator_proxy() = default;
313
314
144
  auto operator*() -> const ValT& {
315
144
    return *iter;
316
144
  }
??D?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAAAEBU?$Sample@H@sampling@23@XZ
Line
Count
Source
314
12
  auto operator*() -> const ValT& {
315
12
    return *iter;
316
12
  }
??D?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAAAEBU?$Sample@H@sampling@23@XZ
Line
Count
Source
314
2
  auto operator*() -> const ValT& {
315
2
    return *iter;
316
2
  }
??D?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@XZ
Line
Count
Source
314
10
  auto operator*() -> const ValT& {
315
10
    return *iter;
316
10
  }
??D?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@XZ
Line
Count
Source
314
10
  auto operator*() -> const ValT& {
315
10
    return *iter;
316
10
  }
??D?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@XZ
Line
Count
Source
314
8
  auto operator*() -> const ValT& {
315
8
    return *iter;
316
8
  }
??D?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@XZ
Line
Count
Source
314
12
  auto operator*() -> const ValT& {
315
12
    return *iter;
316
12
  }
??D?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@U?$in_range@N@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@XZ
Line
Count
Source
314
6
  auto operator*() -> const ValT& {
315
6
    return *iter;
316
6
  }
??D?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@XZ
Line
Count
Source
314
46
  auto operator*() -> const ValT& {
315
46
    return *iter;
316
46
  }
??D?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$in_range@N@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEBU?$Sample@VRSSI@datatype@herald@@@sampling@23@XZ
Line
Count
Source
314
38
  auto operator*() -> const ValT& {
315
38
    return *iter;
316
38
  }
317
318
  /// prefix operator
319
156
  filtered_iterator_proxy<Coll,Pred>& operator++() {
320
156
    // move forward until we get a match (or end)
321
156
    moveToNext();
322
156
    return *this;
323
156
  }
??E?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAAAEAU0123@XZ
Line
Count
Source
319
12
  filtered_iterator_proxy<Coll,Pred>& operator++() {
320
12
    // move forward until we get a match (or end)
321
12
    moveToNext();
322
12
    return *this;
323
12
  }
??E?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAAAEAU0123@XZ
Line
Count
Source
319
2
  filtered_iterator_proxy<Coll,Pred>& operator++() {
320
2
    // move forward until we get a match (or end)
321
2
    moveToNext();
322
2
    return *this;
323
2
  }
??E?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEAU0123@XZ
Line
Count
Source
319
20
  filtered_iterator_proxy<Coll,Pred>& operator++() {
320
20
    // move forward until we get a match (or end)
321
20
    moveToNext();
322
20
    return *this;
323
20
  }
??E?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEAU0123@XZ
Line
Count
Source
319
12
  filtered_iterator_proxy<Coll,Pred>& operator++() {
320
12
    // move forward until we get a match (or end)
321
12
    moveToNext();
322
12
    return *this;
323
12
  }
??E?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEAU0123@XZ
Line
Count
Source
319
8
  filtered_iterator_proxy<Coll,Pred>& operator++() {
320
8
    // move forward until we get a match (or end)
321
8
    moveToNext();
322
8
    return *this;
323
8
  }
??E?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEAU0123@XZ
Line
Count
Source
319
12
  filtered_iterator_proxy<Coll,Pred>& operator++() {
320
12
    // move forward until we get a match (or end)
321
12
    moveToNext();
322
12
    return *this;
323
12
  }
??E?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@U?$in_range@N@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEAU0123@XZ
Line
Count
Source
319
6
  filtered_iterator_proxy<Coll,Pred>& operator++() {
320
6
    // move forward until we get a match (or end)
321
6
    moveToNext();
322
6
    return *this;
323
6
  }
??E?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEAU0123@XZ
Line
Count
Source
319
46
  filtered_iterator_proxy<Coll,Pred>& operator++() {
320
46
    // move forward until we get a match (or end)
321
46
    moveToNext();
322
46
    return *this;
323
46
  }
??E?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$in_range@N@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEAU0123@XZ
Line
Count
Source
319
38
  filtered_iterator_proxy<Coll,Pred>& operator++() {
320
38
    // move forward until we get a match (or end)
321
38
    moveToNext();
322
38
    return *this;
323
38
  }
324
325
  // postfix operator
326
  filtered_iterator_proxy<Coll,Pred> operator++(int) {
327
    filtered_iterator_proxy<Coll,Pred> cp =  *this; // copy of instance
328
    ++(*this);
329
    return cp;
330
  }
331
332
13
  filtered_iterator_proxy<Coll,Pred> operator+(int by) {
333
13
    filtered_iterator_proxy<Coll,Pred> cp =  *this; // copy of instance
334
26
    for (int i = 0;i < by;
++i13
) {
335
13
      ++cp;
336
13
    }
337
13
    return cp;
338
13
  }
??H?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAA?AU0123@H@Z
Line
Count
Source
332
2
  filtered_iterator_proxy<Coll,Pred> operator+(int by) {
333
2
    filtered_iterator_proxy<Coll,Pred> cp =  *this; // copy of instance
334
3
    for (int i = 0;i < by;
++i1
) {
335
1
      ++cp;
336
1
    }
337
2
    return cp;
338
2
  }
??H?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAA?AU0123@H@Z
Line
Count
Source
332
1
  filtered_iterator_proxy<Coll,Pred> operator+(int by) {
333
1
    filtered_iterator_proxy<Coll,Pred> cp =  *this; // copy of instance
334
1
    for (int i = 0;i < by;
++i0
) {
335
0
      ++cp;
336
0
    }
337
1
    return cp;
338
1
  }
??H?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA?AU0123@H@Z
Line
Count
Source
332
5
  filtered_iterator_proxy<Coll,Pred> operator+(int by) {
333
5
    filtered_iterator_proxy<Coll,Pred> cp =  *this; // copy of instance
334
15
    for (int i = 0;i < by;
++i10
) {
335
10
      ++cp;
336
10
    }
337
5
    return cp;
338
5
  }
??H?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA?AU0123@H@Z
Line
Count
Source
332
5
  filtered_iterator_proxy<Coll,Pred> operator+(int by) {
333
5
    filtered_iterator_proxy<Coll,Pred> cp =  *this; // copy of instance
334
7
    for (int i = 0;i < by;
++i2
) {
335
2
      ++cp;
336
2
    }
337
5
    return cp;
338
5
  }
339
340
6
  bool operator==(IterT otherIter) const {
341
6
    return iter == otherIter;
342
6
  }
??8?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEBA_NU?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@sampling@23@@Z
Line
Count
Source
340
1
  bool operator==(IterT otherIter) const {
341
1
    return iter == otherIter;
342
1
  }
??8?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBA_NU?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@sampling@23@@Z
Line
Count
Source
340
1
  bool operator==(IterT otherIter) const {
341
1
    return iter == otherIter;
342
1
  }
??8?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBA_NU?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@sampling@23@@Z
Line
Count
Source
340
4
  bool operator==(IterT otherIter) const {
341
4
    return iter == otherIter;
342
4
  }
343
344
116
  bool operator!=(IterT otherIter) const {
345
116
    return iter != otherIter;
346
116
  }
??9?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEBA_NU?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@sampling@23@@Z
Line
Count
Source
344
4
  bool operator!=(IterT otherIter) const {
345
4
    return iter != otherIter;
346
4
  }
??9?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEBA_NU?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@sampling@23@@Z
Line
Count
Source
344
3
  bool operator!=(IterT otherIter) const {
345
3
    return iter != otherIter;
346
3
  }
??9?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBA_NU?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@sampling@23@@Z
Line
Count
Source
344
7
  bool operator!=(IterT otherIter) const {
345
7
    return iter != otherIter;
346
7
  }
??9?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBA_NU?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@sampling@23@@Z
Line
Count
Source
344
12
  bool operator!=(IterT otherIter) const {
345
12
    return iter != otherIter;
346
12
  }
??9?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBA_NU?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@sampling@23@@Z
Line
Count
Source
344
10
  bool operator!=(IterT otherIter) const {
345
10
    return iter != otherIter;
346
10
  }
??9?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBA_NU?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@sampling@23@@Z
Line
Count
Source
344
16
  bool operator!=(IterT otherIter) const {
345
16
    return iter != otherIter;
346
16
  }
??9?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBA_NU?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@sampling@23@@Z
Line
Count
Source
344
64
  bool operator!=(IterT otherIter) const {
345
64
    return iter != otherIter;
346
64
  }
347
348
  friend bool operator!=(IterT otherIter,filtered_iterator_proxy<Coll,Pred> thisIter) {
349
    return otherIter != thisIter.iter;
350
  }
351
352
  friend bool operator==(IterT otherIter,filtered_iterator_proxy<Coll,Pred> thisIter) {
353
    return otherIter == thisIter.iter;
354
  }
355
356
  IterT& wrapped() {
357
    return iter;
358
  }
359
360
51
  IterT& end() {
361
51
    return endIter;
362
51
  }
?end@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAAAEAU?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@sampling@34@XZ
Line
Count
Source
360
2
  IterT& end() {
361
2
    return endIter;
362
2
  }
?end@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAAAEAU?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@sampling@34@XZ
Line
Count
Source
360
3
  IterT& end() {
361
3
    return endIter;
362
3
  }
?end@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEAU?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@sampling@34@XZ
Line
Count
Source
360
3
  IterT& end() {
361
3
    return endIter;
362
3
  }
?end@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEAU?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@sampling@34@XZ
Line
Count
Source
360
11
  IterT& end() {
361
11
    return endIter;
362
11
  }
?end@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEAU?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@sampling@34@XZ
Line
Count
Source
360
2
  IterT& end() {
361
2
    return endIter;
362
2
  }
?end@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEAU?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@sampling@34@XZ
Line
Count
Source
360
4
  IterT& end() {
361
4
    return endIter;
362
4
  }
?end@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAAAEAU?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@sampling@34@XZ
Line
Count
Source
360
26
  IterT& end() {
361
26
    return endIter;
362
26
  }
363
364
65
  bool ended() {
365
65
    return endIter == iter;
366
65
  }
?ended@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEAA_NXZ
Line
Count
Source
364
11
  bool ended() {
365
11
    return endIter == iter;
366
11
  }
?ended@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@U?$in_range@N@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA_NXZ
Line
Count
Source
364
8
  bool ended() {
365
8
    return endIter == iter;
366
8
  }
?ended@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$in_range@N@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEAA_NXZ
Line
Count
Source
364
46
  bool ended() {
365
46
    return endIter == iter;
366
46
  }
367
368
42
  Coll& collection() const {
369
42
    return coll;
370
42
  }
?collection@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEBAAEAU?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@34@XZ
Line
Count
Source
368
1
  Coll& collection() const {
369
1
    return coll;
370
1
  }
?collection@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBAAEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@34@XZ
Line
Count
Source
368
4
  Coll& collection() const {
369
4
    return coll;
370
4
  }
?collection@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBAAEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@34@XZ
Line
Count
Source
368
1
  Coll& collection() const {
369
1
    return coll;
370
1
  }
?collection@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBAAEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@34@XZ
Line
Count
Source
368
4
  Coll& collection() const {
369
4
    return coll;
370
4
  }
?collection@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@Usince@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBAAEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@34@XZ
Line
Count
Source
368
4
  Coll& collection() const {
369
4
    return coll;
370
4
  }
?collection@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBAAEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@34@XZ
Line
Count
Source
368
2
  Coll& collection() const {
369
2
    return coll;
370
2
  }
?collection@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBAAEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@34@XZ
Line
Count
Source
368
26
  Coll& collection() const {
369
26
    return coll;
370
26
  }
371
372
42
  Pred predicate() const {
373
42
    return filter.predicate();
374
42
  }
?predicate@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@QEBA?AU?$in_range@H@234@XZ
Line
Count
Source
372
1
  Pred predicate() const {
373
1
    return filter.predicate();
374
1
  }
?predicate@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBA?AU?$in_range@H@234@XZ
Line
Count
Source
372
4
  Pred predicate() const {
373
4
    return filter.predicate();
374
4
  }
?predicate@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBA?AU?$in_range@H@234@XZ
Line
Count
Source
372
1
  Pred predicate() const {
373
1
    return filter.predicate();
374
1
  }
?predicate@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBA?AU?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@234@XZ
Line
Count
Source
372
4
  Pred predicate() const {
373
4
    return filter.predicate();
374
4
  }
?predicate@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@Usince@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBA?AUsince@234@XZ
Line
Count
Source
372
4
  Pred predicate() const {
373
4
    return filter.predicate();
374
4
  }
?predicate@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBA?AU?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@234@XZ
Line
Count
Source
372
2
  Pred predicate() const {
373
2
    return filter.predicate();
374
2
  }
?predicate@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@QEBA?AU?$in_range@H@234@XZ
Line
Count
Source
372
26
  Pred predicate() const {
373
26
    return filter.predicate();
374
26
  }
375
376
private:
377
  Coll& coll;
378
  IterT iter;
379
  IterT endIter;
380
  filter_fn<Pred> filter;
381
382
  // Need this function so as not to incorrectly always filter the first value in the underlying proxy
383
83
  void moveToFirst() {
384
183
    while (endIter != iter && 
!filter(*iter)178
) {
385
100
      ++iter;
386
100
    };
387
83
  }
?moveToFirst@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
383
5
  void moveToFirst() {
384
11
    while (endIter != iter && !filter(*iter)) {
385
6
      ++iter;
386
6
    };
387
5
  }
?moveToFirst@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
383
1
  void moveToFirst() {
384
4
    while (endIter != iter && !filter(*iter)) {
385
3
      ++iter;
386
3
    };
387
1
  }
?moveToFirst@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
383
5
  void moveToFirst() {
384
6
    while (endIter != iter && 
!filter(*iter)5
) {
385
1
      ++iter;
386
1
    };
387
5
  }
?moveToFirst@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
383
4
  void moveToFirst() {
384
5
    while (endIter != iter && 
!filter(*iter)4
) {
385
1
      ++iter;
386
1
    };
387
4
  }
?moveToFirst@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
383
1
  void moveToFirst() {
384
2
    while (endIter != iter && !filter(*iter)) {
385
1
      ++iter;
386
1
    };
387
1
  }
?moveToFirst@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
383
1
  void moveToFirst() {
384
2
    while (endIter != iter && !filter(*iter)) {
385
1
      ++iter;
386
1
    };
387
1
  }
?moveToFirst@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
383
4
  void moveToFirst() {
384
16
    while (endIter != iter && !filter(*iter)) {
385
12
      ++iter;
386
12
    };
387
4
  }
?moveToFirst@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
383
4
  void moveToFirst() {
384
12
    while (endIter != iter && !filter(*iter)) {
385
8
      ++iter;
386
8
    };
387
4
  }
?moveToFirst@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@Usince@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
383
4
  void moveToFirst() {
384
12
    while (endIter != iter && !filter(*iter)) {
385
8
      ++iter;
386
8
    };
387
4
  }
?moveToFirst@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@U?$in_range@N@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
383
2
  void moveToFirst() {
384
8
    while (endIter != iter && !filter(*iter)) {
385
6
      ++iter;
386
6
    };
387
2
  }
?moveToFirst@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
383
18
  void moveToFirst() {
384
70
    while (endIter != iter && 
!filter(*iter)68
) {
385
52
      ++iter;
386
52
    };
387
18
  }
?moveToFirst@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
383
26
  void moveToFirst() {
384
26
    while (endIter != iter && !filter(*iter)) {
385
0
      ++iter;
386
0
    };
387
26
  }
?moveToFirst@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$in_range@N@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
383
8
  void moveToFirst() {
384
9
    while (endIter != iter && 
!filter(*iter)8
) {
385
1
      ++iter;
386
1
    };
387
8
  }
388
389
156
  void moveToNext() {
390
156
    if (endIter == iter) 
return0
; // guard
391
175
    
do 156
{
392
175
      ++iter;
393
175
    } while (endIter != iter && 
!filter(*iter)130
);
394
156
  }
?moveToNext@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
389
12
  void moveToNext() {
390
12
    if (endIter == iter) 
return0
; // guard
391
14
    
do 12
{
392
14
      ++iter;
393
14
    } while (endIter != iter && 
!filter(*iter)10
);
394
12
  }
?moveToNext@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
389
2
  void moveToNext() {
390
2
    if (endIter == iter) 
return0
; // guard
391
4
    
do 2
{
392
4
      ++iter;
393
4
    } while (endIter != iter && 
!filter(*iter)2
);
394
2
  }
?moveToNext@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
389
20
  void moveToNext() {
390
20
    if (endIter == iter) 
return0
; // guard
391
20
    do {
392
20
      ++iter;
393
20
    } while (endIter != iter && 
!filter(*iter)18
);
394
20
  }
?moveToNext@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
389
12
  void moveToNext() {
390
12
    if (endIter == iter) 
return0
; // guard
391
17
    
do 12
{
392
17
      ++iter;
393
17
    } while (endIter != iter && 
!filter(*iter)11
);
394
12
  }
?moveToNext@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
389
8
  void moveToNext() {
390
8
    if (endIter == iter) 
return0
; // guard
391
12
    
do 8
{
392
12
      ++iter;
393
12
    } while (endIter != iter && 
!filter(*iter)10
);
394
8
  }
?moveToNext@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
389
12
  void moveToNext() {
390
12
    if (endIter == iter) 
return0
; // guard
391
16
    
do 12
{
392
16
      ++iter;
393
16
    } while (endIter != iter && 
!filter(*iter)12
);
394
12
  }
?moveToNext@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@U?$in_range@N@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
389
6
  void moveToNext() {
390
6
    if (endIter == iter) 
return0
; // guard
391
8
    
do 6
{
392
8
      ++iter;
393
8
    } while (endIter != iter && 
!filter(*iter)6
);
394
6
  }
?moveToNext@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
389
46
  void moveToNext() {
390
46
    if (endIter == iter) 
return0
; // guard
391
46
    do {
392
46
      ++iter;
393
46
    } while (endIter != iter && 
!filter(*iter)30
);
394
46
  }
?moveToNext@?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$in_range@N@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@AEAAXXZ
Line
Count
Source
389
38
  void moveToNext() {
390
38
    if (endIter == iter) 
return0
; // guard
391
38
    do {
392
38
      ++iter;
393
38
    } while (endIter != iter && 
!filter(*iter)31
);
394
38
  }
395
};
396
397
/// Now think about a filter instance that would filter an entire range of values
398
///
399
/// Use like
400
/// filter<> myFilter(in_range<int>(18,65));
401
/// auto iterable = myFilter(myCollection);
402
///
403
template <typename Pred>
404
struct filter {
405
public:
406
83
  filter(const Pred& pred) : pred(pred) {}
??0?$filter@U?$in_range@H@views@analysis@herald@@@views@analysis@herald@@QEAA@AEBU?$in_range@H@123@@Z
Line
Count
Source
406
41
  filter(const Pred& pred) : pred(pred) {}
??0?$filter@U?$greater_than@H@views@analysis@herald@@@views@analysis@herald@@QEAA@AEBU?$greater_than@H@123@@Z
Line
Count
Source
406
1
  filter(const Pred& pred) : pred(pred) {}
??0?$filter@U?$less_than@H@views@analysis@herald@@@views@analysis@herald@@QEAA@AEBU?$less_than@H@123@@Z
Line
Count
Source
406
9
  filter(const Pred& pred) : pred(pred) {}
??0?$filter@Usince@views@analysis@herald@@@views@analysis@herald@@QEAA@AEBUsince@123@@Z
Line
Count
Source
406
22
  filter(const Pred& pred) : pred(pred) {}
??0?$filter@U?$in_range@N@views@analysis@herald@@@views@analysis@herald@@QEAA@AEBU?$in_range@N@123@@Z
Line
Count
Source
406
10
  filter(const Pred& pred) : pred(pred) {}
407
22
  ~filter() = default;
408
409
  template <typename Coll>
410
3
  auto operator()(Coll& c) -> filtered_iterator_proxy<Coll,Pred> {
411
3
    return filtered_iterator_proxy<Coll,Pred>(c,pred);
412
3
  }
413
  
414
  template <typename OtherColl, typename OtherPred> // first argument must be l-value below
415
42
  friend auto operator|(filtered_iterator_proxy<OtherColl,OtherPred> c,filter<Pred> pred) -> filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>> {
416
42
    return filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>>(c.collection(),dual_filter(c.predicate(),pred.pred));
417
42
  }
??$?UU?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@23@@views@analysis@herald@@YA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@012@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@012@U?$filter@U?$greater_than@H@views@analysis@herald@@@012@@Z
Line
Count
Source
415
1
  friend auto operator|(filtered_iterator_proxy<OtherColl,OtherPred> c,filter<Pred> pred) -> filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>> {
416
1
    return filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>>(c.collection(),dual_filter(c.predicate(),pred.pred));
417
1
  }
??$?UU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@23@@views@analysis@herald@@YA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@U?$filter@U?$less_than@H@views@analysis@herald@@@012@@Z
Line
Count
Source
415
4
  friend auto operator|(filtered_iterator_proxy<OtherColl,OtherPred> c,filter<Pred> pred) -> filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>> {
416
4
    return filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>>(c.collection(),dual_filter(c.predicate(),pred.pred));
417
4
  }
??$?UU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@23@@views@analysis@herald@@YA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@U?$filter@U?$less_than@H@views@analysis@herald@@@012@@Z
Line
Count
Source
415
1
  friend auto operator|(filtered_iterator_proxy<OtherColl,OtherPred> c,filter<Pred> pred) -> filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>> {
416
1
    return filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>>(c.collection(),dual_filter(c.predicate(),pred.pred));
417
1
  }
??$?UU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@23@@views@analysis@herald@@YA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@U?$filter@U?$less_than@H@views@analysis@herald@@@012@@Z
Line
Count
Source
415
4
  friend auto operator|(filtered_iterator_proxy<OtherColl,OtherPred> c,filter<Pred> pred) -> filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>> {
416
4
    return filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>>(c.collection(),dual_filter(c.predicate(),pred.pred));
417
4
  }
??$?UU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@Usince@views@23@@views@analysis@herald@@YA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@Usince@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@U?$filter@U?$in_range@H@views@analysis@herald@@@012@@Z
Line
Count
Source
415
4
  friend auto operator|(filtered_iterator_proxy<OtherColl,OtherPred> c,filter<Pred> pred) -> filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>> {
416
4
    return filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>>(c.collection(),dual_filter(c.predicate(),pred.pred));
417
4
  }
??$?UU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@23@@views@analysis@herald@@YA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@analysis@herald@@U?$in_range@N@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@U?$filter@U?$in_range@N@views@analysis@herald@@@012@@Z
Line
Count
Source
415
2
  friend auto operator|(filtered_iterator_proxy<OtherColl,OtherPred> c,filter<Pred> pred) -> filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>> {
416
2
    return filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>>(c.collection(),dual_filter(c.predicate(),pred.pred));
417
2
  }
??$?UU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@23@@views@analysis@herald@@YA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@U?$filter@Usince@views@analysis@herald@@@012@@Z
Line
Count
Source
415
18
  friend auto operator|(filtered_iterator_proxy<OtherColl,OtherPred> c,filter<Pred> pred) -> filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>> {
416
18
    return filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>>(c.collection(),dual_filter(c.predicate(),pred.pred));
417
18
  }
??$?UU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@23@@views@analysis@herald@@YA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$in_range@N@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@U?$filter@U?$in_range@N@views@analysis@herald@@@012@@Z
Line
Count
Source
415
8
  friend auto operator|(filtered_iterator_proxy<OtherColl,OtherPred> c,filter<Pred> pred) -> filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>> {
416
8
    return filtered_iterator_proxy<OtherColl,dual_filter<OtherPred,Pred>>(c.collection(),dual_filter(c.predicate(),pred.pred));
417
8
  }
418
419
  template <typename Coll>
420
38
  friend auto operator|(Coll& c,filter<Pred> pred) -> filtered_iterator_proxy<Coll,Pred> {
421
38
    return filtered_iterator_proxy<Coll,Pred>(c,pred.pred);
422
38
  }
??$?UU?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@@views@analysis@herald@@YA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@012@AEAU?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@12@U?$filter@U?$in_range@H@views@analysis@herald@@@012@@Z
Line
Count
Source
420
2
  friend auto operator|(Coll& c,filter<Pred> pred) -> filtered_iterator_proxy<Coll,Pred> {
421
2
    return filtered_iterator_proxy<Coll,Pred>(c,pred.pred);
422
2
  }
??$?UU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@@views@analysis@herald@@YA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@AEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@12@U?$filter@U?$in_range@H@views@analysis@herald@@@012@@Z
Line
Count
Source
420
5
  friend auto operator|(Coll& c,filter<Pred> pred) -> filtered_iterator_proxy<Coll,Pred> {
421
5
    return filtered_iterator_proxy<Coll,Pred>(c,pred.pred);
422
5
  }
??$?UU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@@views@analysis@herald@@YA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@AEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@12@U?$filter@U?$in_range@H@views@analysis@herald@@@012@@Z
Line
Count
Source
420
1
  friend auto operator|(Coll& c,filter<Pred> pred) -> filtered_iterator_proxy<Coll,Pred> {
421
1
    return filtered_iterator_proxy<Coll,Pred>(c,pred.pred);
422
1
  }
??$?UU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@@views@analysis@herald@@YA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@Usince@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@AEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@12@U?$filter@Usince@views@analysis@herald@@@012@@Z
Line
Count
Source
420
4
  friend auto operator|(Coll& c,filter<Pred> pred) -> filtered_iterator_proxy<Coll,Pred> {
421
4
    return filtered_iterator_proxy<Coll,Pred>(c,pred.pred);
422
4
  }
??$?UU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@@views@analysis@herald@@YA?AU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@AEAU?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@12@U?$filter@U?$in_range@H@views@analysis@herald@@@012@@Z
Line
Count
Source
420
26
  friend auto operator|(Coll& c,filter<Pred> pred) -> filtered_iterator_proxy<Coll,Pred> {
421
26
    return filtered_iterator_proxy<Coll,Pred>(c,pred.pred);
422
26
  }
423
424
private:
425
  Pred pred;
426
};
427
428
/// Simple action to convert the end of a *iterator_proxy chain in to a final view class
429
/// The final view class has begin() and end() and other STL collection like features
430
struct to_view {
431
  to_view() = default;
432
  ~to_view() = default;
433
434
  // convert something with a proxy (likely a filtered iterator proxy) into a view
435
  template <typename IterProxyT>
436
28
  friend auto operator|(IterProxyT proxy,to_view view) -> herald::analysis::views::view<IterProxyT> {
437
28
    return herald::analysis::views::view<IterProxyT>(proxy);
438
28
  }
??$?UU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@@views@analysis@herald@@YA?AU?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@U?$Sample@H@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@634@_K@012@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@012@Uto_view@012@@Z
Line
Count
Source
436
1
  friend auto operator|(IterProxyT proxy,to_view view) -> herald::analysis::views::view<IterProxyT> {
437
1
    return herald::analysis::views::view<IterProxyT>(proxy);
438
1
  }
??$?UU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@@views@analysis@herald@@YA?AU?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@views@analysis@herald@@U?$Sample@H@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@634@_K@012@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$greater_than@H@234@@views@34@U?$Sample@H@234@U?$SampleIterator@U?$SampleList@U?$Sample@H@sampling@analysis@herald@@$04H@sampling@analysis@herald@@U?$Sample@H@234@@234@_K@012@Uto_view@012@@Z
Line
Count
Source
436
1
  friend auto operator|(IterProxyT proxy,to_view view) -> herald::analysis::views::view<IterProxyT> {
437
1
    return herald::analysis::views::view<IterProxyT>(proxy);
438
1
  }
??$?UU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@@views@analysis@herald@@YA?AU?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@012@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$in_range@H@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@Uto_view@012@@Z
Line
Count
Source
436
1
  friend auto operator|(IterProxyT proxy,to_view view) -> herald::analysis::views::view<IterProxyT> {
437
1
    return herald::analysis::views::view<IterProxyT>(proxy);
438
1
  }
??$?UU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@@views@analysis@herald@@YA?AU?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@012@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$04VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@Uto_view@012@@Z
Line
Count
Source
436
4
  friend auto operator|(IterProxyT proxy,to_view view) -> herald::analysis::views::view<IterProxyT> {
437
4
    return herald::analysis::views::view<IterProxyT>(proxy);
438
4
  }
??$?UU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@@views@analysis@herald@@YA?AU?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@012@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@Uto_view@012@@Z
Line
Count
Source
436
1
  friend auto operator|(IterProxyT proxy,to_view view) -> herald::analysis::views::view<IterProxyT> {
437
1
    return herald::analysis::views::view<IterProxyT>(proxy);
438
1
  }
??$?UU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@@views@analysis@herald@@YA?AU?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@012@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$dual_filter@Usince@views@analysis@herald@@U?$in_range@H@234@@views@analysis@herald@@U?$less_than@H@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BE@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@Uto_view@012@@Z
Line
Count
Source
436
2
  friend auto operator|(IterProxyT proxy,to_view view) -> herald::analysis::views::view<IterProxyT> {
437
2
    return herald::analysis::views::view<IterProxyT>(proxy);
438
2
  }
??$?UU?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@@views@analysis@herald@@YA?AU?$view@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@views@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@sampling@34@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@634@_K@012@U?$filtered_iterator_proxy@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$dual_filter@U?$in_range@H@views@analysis@herald@@Usince@234@@views@34@U?$Sample@VRSSI@datatype@herald@@@234@U?$SampleIterator@U?$SampleList@U?$Sample@VRSSI@datatype@herald@@@sampling@analysis@herald@@$0BJ@VRSSI@datatype@4@@sampling@analysis@herald@@U?$Sample@VRSSI@datatype@herald@@@234@@234@_K@012@Uto_view@012@@Z
Line
Count
Source
436
18
  friend auto operator|(IterProxyT proxy,to_view view) -> herald::analysis::views::view<IterProxyT> {
437
18
    return herald::analysis::views::view<IterProxyT>(proxy);
438
18
  }
439
  
440
  /// Convert an unfiltered source collection into a view
441
  // template <typename Coll,
442
  //           typename IterProxyT = iterator_proxy<Coll>, 
443
  //           std::enable_if_t<!std::is_same_v<Coll,iterator_proxy> && !std::is_same_v<Coll,filtered_iterator_proxy>, bool> = true
444
  //          >
445
  // friend auto operator|(Coll coll,to_view view) -> herald::analysis::views::view<IterProxyT> {
446
  //   return herald::analysis::views::view<IterProxyT>(iterator_proxy<Coll>(coll));
447
  // }
448
  
449
  template <typename SampleT,
450
            std::size_t ListSize,
451
            typename IterProxyT = iterator_proxy<herald::analysis::sampling::SampleList<SampleT,ListSize>>
452
           >
453
  friend auto operator|(herald::analysis::sampling::SampleList<SampleT,ListSize>& coll,to_view view) -> herald::analysis::views::view<IterProxyT> {
454
    return herald::analysis::views::view<IterProxyT>(iterator_proxy<herald::analysis::sampling::SampleList<SampleT,ListSize>>(coll));
455
  }
456
};
457
458
} // end namespace views
459
}
460
}
461
462
#endif