mirror of
https://github.com/qpdf/qpdf.git
synced 2024-09-27 12:39:06 +00:00
Stop using std::iterator (fixes #618)
Create the typedefs directly in iterators rather than deriving from the deprecated std::iterator class.
This commit is contained in:
parent
2e476e189a
commit
af3f74de8c
@ -77,12 +77,17 @@ class QPDFNameTreeObjectHelper: public QPDFObjectHelper
|
||||
QPDF_DLL
|
||||
bool findObject(std::string const& utf8, QPDFObjectHandle& oh);
|
||||
|
||||
class iterator: public std::iterator<
|
||||
std::bidirectional_iterator_tag,
|
||||
std::pair<std::string, QPDFObjectHandle>>
|
||||
class iterator
|
||||
{
|
||||
friend class QPDFNameTreeObjectHelper;
|
||||
public:
|
||||
typedef std::pair<std::string, QPDFObjectHandle> T;
|
||||
using iterator_category = std::bidirectional_iterator_tag;
|
||||
using value_type = T;
|
||||
using difference_type = long;
|
||||
using pointer = T*;
|
||||
using reference = T&;
|
||||
|
||||
virtual ~iterator() = default;
|
||||
QPDF_DLL
|
||||
bool valid() const;
|
||||
|
@ -96,12 +96,17 @@ class QPDFNumberTreeObjectHelper: public QPDFObjectHelper
|
||||
bool findObjectAtOrBelow(numtree_number idx, QPDFObjectHandle& oh,
|
||||
numtree_number& offset);
|
||||
|
||||
class iterator: public std::iterator<
|
||||
std::bidirectional_iterator_tag,
|
||||
std::pair<numtree_number, QPDFObjectHandle>>
|
||||
class iterator
|
||||
{
|
||||
friend class QPDFNumberTreeObjectHelper;
|
||||
public:
|
||||
typedef std::pair<numtree_number, QPDFObjectHandle> T;
|
||||
using iterator_category = std::bidirectional_iterator_tag;
|
||||
using value_type = T;
|
||||
using difference_type = long;
|
||||
using pointer = T*;
|
||||
using reference = T&;
|
||||
|
||||
virtual ~iterator() = default;
|
||||
QPDF_DLL
|
||||
bool valid() const;
|
||||
|
@ -1479,12 +1479,17 @@ class QPDFObjectHandle::QPDFDictItems
|
||||
QPDF_DLL
|
||||
QPDFDictItems(QPDFObjectHandle const& oh);
|
||||
|
||||
class iterator: public std::iterator<
|
||||
std::bidirectional_iterator_tag,
|
||||
std::pair<std::string, QPDFObjectHandle>>
|
||||
class iterator
|
||||
{
|
||||
friend class QPDFDictItems;
|
||||
public:
|
||||
typedef std::pair<std::string, QPDFObjectHandle> T;
|
||||
using iterator_category = std::bidirectional_iterator_tag;
|
||||
using value_type = T;
|
||||
using difference_type = long;
|
||||
using pointer = T*;
|
||||
using reference = T&;
|
||||
|
||||
QPDF_DLL
|
||||
virtual ~iterator() = default;
|
||||
QPDF_DLL
|
||||
@ -1569,12 +1574,17 @@ class QPDFObjectHandle::QPDFArrayItems
|
||||
QPDF_DLL
|
||||
QPDFArrayItems(QPDFObjectHandle const& oh);
|
||||
|
||||
class iterator: public std::iterator<
|
||||
std::bidirectional_iterator_tag,
|
||||
QPDFObjectHandle>
|
||||
class iterator
|
||||
{
|
||||
friend class QPDFArrayItems;
|
||||
public:
|
||||
typedef QPDFObjectHandle T;
|
||||
using iterator_category = std::bidirectional_iterator_tag;
|
||||
using value_type = T;
|
||||
using difference_type = long;
|
||||
using pointer = T*;
|
||||
using reference = T&;
|
||||
|
||||
QPDF_DLL
|
||||
virtual ~iterator() = default;
|
||||
QPDF_DLL
|
||||
|
@ -17,12 +17,17 @@ class NNTreeDetails
|
||||
};
|
||||
|
||||
class NNTreeImpl;
|
||||
class NNTreeIterator: public std::iterator<
|
||||
std::bidirectional_iterator_tag,
|
||||
std::pair<QPDFObjectHandle, QPDFObjectHandle>>
|
||||
class NNTreeIterator
|
||||
{
|
||||
friend class NNTreeImpl;
|
||||
public:
|
||||
typedef std::pair<QPDFObjectHandle, QPDFObjectHandle> T;
|
||||
using iterator_category = std::bidirectional_iterator_tag;
|
||||
using value_type = T;
|
||||
using difference_type = long;
|
||||
using pointer = T*;
|
||||
using reference = T&;
|
||||
|
||||
virtual ~NNTreeIterator() = default;
|
||||
bool valid() const;
|
||||
NNTreeIterator& operator++();
|
||||
|
Loading…
Reference in New Issue
Block a user