oILAB
Loading...
Searching...
No Matches
range.h
Go to the documentation of this file.
1/*
2 * range.h
3 *
4 * Created on: Dec 1, 2019
5 * Author: Nikhil
6 */
7
8#ifndef INCLUDE_MDSTRESSLAB___RANGE_H_
9#define INCLUDE_MDSTRESSLAB___RANGE_H_
10
11template <class T> class range {
12private:
13 class iter {
14 private:
15 T at;
16 public:
17 iter(T at) : at(at) {}
18 bool operator!=(iter const& other) const { return at != other.at; }
19 T const& operator*() const { return at; }
20 iter& operator++() { ++at; return *this; }
21 };
22
25public:
28 iter begin() { return iter(begin_val); }
29 iter end() { return iter(end_val); }
30};
31
32
33
34
35#endif /* INCLUDE_MDSTRESSLAB___RANGE_H_ */
iter(T at)
Definition range.h:17
bool operator!=(iter const &other) const
Definition range.h:18
iter & operator++()
Definition range.h:20
T const & operator*() const
Definition range.h:19
Definition range.h:11
T begin_val
Definition range.h:23
iter begin()
Definition range.h:28
iter end()
Definition range.h:29
T end_val
Definition range.h:24
range(T begin_val, T end_val)
Definition range.h:26