MCPcopy Create free account
hub / github.com/InteractiveComputerGraphics/SPlisHSPlasH / json_reverse_iterator

Class json_reverse_iterator

extern/json/json.hpp:13590–13673  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

13588*/
13589template<typename Base>
13590class json_reverse_iterator : public std::reverse_iterator<Base>
13591{
13592 public:
13593 using difference_type = std::ptrdiff_t;
13594 /// shortcut to the reverse iterator adapter
13595 using base_iterator = std::reverse_iterator<Base>;
13596 /// the reference type for the pointed-to element
13597 using reference = typename Base::reference;
13598
13599 /// create reverse iterator from iterator
13600 explicit json_reverse_iterator(const typename base_iterator::iterator_type& it) noexcept
13601 : base_iterator(it) {}
13602
13603 /// create reverse iterator from base class
13604 explicit json_reverse_iterator(const base_iterator& it) noexcept : base_iterator(it) {}
13605
13606 /// post-increment (it++)
13607 json_reverse_iterator operator++(int)& // NOLINT(cert-dcl21-cpp)
13608 {
13609 return static_cast<json_reverse_iterator>(base_iterator::operator++(1));
13610 }
13611
13612 /// pre-increment (++it)
13613 json_reverse_iterator& operator++()
13614 {
13615 return static_cast<json_reverse_iterator&>(base_iterator::operator++());
13616 }
13617
13618 /// post-decrement (it--)
13619 json_reverse_iterator operator--(int)& // NOLINT(cert-dcl21-cpp)
13620 {
13621 return static_cast<json_reverse_iterator>(base_iterator::operator--(1));
13622 }
13623
13624 /// pre-decrement (--it)
13625 json_reverse_iterator& operator--()
13626 {
13627 return static_cast<json_reverse_iterator&>(base_iterator::operator--());
13628 }
13629
13630 /// add to iterator
13631 json_reverse_iterator& operator+=(difference_type i)
13632 {
13633 return static_cast<json_reverse_iterator&>(base_iterator::operator+=(i));
13634 }
13635
13636 /// add to iterator
13637 json_reverse_iterator operator+(difference_type i) const
13638 {
13639 return static_cast<json_reverse_iterator>(base_iterator::operator+(i));
13640 }
13641
13642 /// subtract from iterator
13643 json_reverse_iterator operator-(difference_type i) const
13644 {
13645 return static_cast<json_reverse_iterator>(base_iterator::operator-(i));
13646 }
13647

Callers

nothing calls this directly

Calls 3

operator++Function · 0.70
operator--Function · 0.70
operator+=Function · 0.70

Tested by

no test coverage detected