Skip to content

Commit 1a5380a

Browse files
[Warnings] Removed Deprecated STD Iterator From Edge Idx Iter
1 parent b011a1e commit 1a5380a

File tree

1 file changed

+13
-5
lines changed

1 file changed

+13
-5
lines changed

libs/librrgraph/src/base/rr_node_types.h

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
#ifndef RR_NODE_TYPES_H
22
#define RR_NODE_TYPES_H
33

4+
#include <cstddef>
5+
#include <iterator>
46
#include <string>
57
#include <vector>
68
#include <array>
@@ -64,23 +66,29 @@ typedef uint16_t t_edge_size;
6466
*
6567
* Used inconjunction with vtr::Range to return ranges of edge indices
6668
*/
67-
class edge_idx_iterator : public std::iterator<std::bidirectional_iterator_tag, t_edge_size> {
69+
class edge_idx_iterator {
6870
public:
71+
using iterator_category = std::bidirectional_iterator_tag;
72+
using difference_type = std::ptrdiff_t;
73+
using value_type = t_edge_size;
74+
using pointer = t_edge_size*;
75+
using reference = t_edge_size&;
76+
6977
edge_idx_iterator(value_type init)
7078
: value_(init) {}
71-
iterator operator++() {
79+
edge_idx_iterator& operator++() {
7280
value_ += 1;
7381
return *this;
7482
}
75-
iterator operator--() {
83+
edge_idx_iterator& operator--() {
7684
value_ -= 1;
7785
return *this;
7886
}
7987
reference operator*() { return value_; }
8088
pointer operator->() { return &value_; }
8189

82-
friend bool operator==(const edge_idx_iterator lhs, const edge_idx_iterator rhs) { return lhs.value_ == rhs.value_; }
83-
friend bool operator!=(const edge_idx_iterator lhs, const edge_idx_iterator rhs) { return !(lhs == rhs); }
90+
friend bool operator==(const edge_idx_iterator& lhs, const edge_idx_iterator& rhs) { return lhs.value_ == rhs.value_; }
91+
friend bool operator!=(const edge_idx_iterator& lhs, const edge_idx_iterator& rhs) { return !(lhs == rhs); }
8492

8593
private:
8694
value_type value_;

0 commit comments

Comments
 (0)