diff options
| -rw-r--r-- | src/common/Utilities/IteratorPair.h | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/common/Utilities/IteratorPair.h b/src/common/Utilities/IteratorPair.h index cc8407e5fbd..ba3077963cf 100644 --- a/src/common/Utilities/IteratorPair.h +++ b/src/common/Utilities/IteratorPair.h @@ -32,12 +32,12 @@ namespace Trinity class IteratorPair { public: - IteratorPair() : _iterators() { } - IteratorPair(iterator first, iterator second) : _iterators(first, second) { } - IteratorPair(std::pair<iterator, iterator> iterators) : _iterators(iterators) { } + constexpr IteratorPair() : _iterators() { } + constexpr IteratorPair(iterator first, iterator second) : _iterators(first, second) { } + constexpr IteratorPair(std::pair<iterator, iterator> iterators) : _iterators(iterators) { } - iterator begin() const { return _iterators.first; } - iterator end() const { return _iterators.second; } + constexpr iterator begin() const { return _iterators.first; } + constexpr iterator end() const { return _iterators.second; } private: std::pair<iterator, iterator> _iterators; @@ -46,6 +46,12 @@ namespace Trinity namespace Containers { template<typename iterator> + constexpr Trinity::IteratorPair<iterator> MakeIteratorPair(iterator first, iterator second) + { + return { first, second }; + } + + template<typename iterator> constexpr Trinity::IteratorPair<iterator> MakeIteratorPair(std::pair<iterator, iterator> iterators) { return iterators; |
