aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/hashlib.h
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2019-03-13 17:36:06 +0100
committerClifford Wolf <clifford@clifford.at>2019-03-14 22:04:42 +0100
commit76c9c350e7d0dfc11b609d98bdcd1ea0d845cb06 (patch)
tree23b986b0c8d83f3f2e4e0b2f70c10292d717d82a /kernel/hashlib.h
parent8e6b69d7bba21dd3fa01064ee698dcd409b5dcc8 (diff)
downloadyosys-76c9c350e7d0dfc11b609d98bdcd1ea0d845cb06.tar.gz
yosys-76c9c350e7d0dfc11b609d98bdcd1ea0d845cb06.tar.bz2
yosys-76c9c350e7d0dfc11b609d98bdcd1ea0d845cb06.zip
Add hashlib "<container>::element(int n)" methods
Signed-off-by: Clifford Wolf <clifford@clifford.at>
Diffstat (limited to 'kernel/hashlib.h')
-rw-r--r--kernel/hashlib.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/kernel/hashlib.h b/kernel/hashlib.h
index df534ec1b..e7cb312ed 100644
--- a/kernel/hashlib.h
+++ b/kernel/hashlib.h
@@ -557,9 +557,11 @@ public:
void clear() { hashtable.clear(); entries.clear(); }
iterator begin() { return iterator(this, int(entries.size())-1); }
+ iterator element(int n) { return iterator(this, int(entries.size())-1-n); }
iterator end() { return iterator(nullptr, -1); }
const_iterator begin() const { return const_iterator(this, int(entries.size())-1); }
+ const_iterator element(int n) const { return const_iterator(this, int(entries.size())-1-n); }
const_iterator end() const { return const_iterator(nullptr, -1); }
};
@@ -881,9 +883,11 @@ public:
void clear() { hashtable.clear(); entries.clear(); }
iterator begin() { return iterator(this, int(entries.size())-1); }
+ iterator element(int n) { return iterator(this, int(entries.size())-1-n); }
iterator end() { return iterator(nullptr, -1); }
const_iterator begin() const { return const_iterator(this, int(entries.size())-1); }
+ const_iterator element(int n) const { return const_iterator(this, int(entries.size())-1-n); }
const_iterator end() const { return const_iterator(nullptr, -1); }
};
@@ -952,6 +956,7 @@ public:
void clear() { database.clear(); }
const_iterator begin() const { return database.begin(); }
+ const_iterator element(int n) const { return database.element(n); }
const_iterator end() const { return database.end(); }
};
@@ -1051,6 +1056,7 @@ public:
void clear() { database.clear(); parents.clear(); }
const_iterator begin() const { return database.begin(); }
+ const_iterator element(int n) const { return database.element(n); }
const_iterator end() const { return database.end(); }
};