mirror of
https://github.com/qpdf/qpdf.git
synced 2024-09-28 04:59:05 +00:00
Remove temporary OHArray::disconnect and setAt
This commit is contained in:
parent
1367226002
commit
0db65e7912
@ -1494,14 +1494,14 @@ class QPDFObjectHandle
|
|||||||
// disconnected().
|
// disconnected().
|
||||||
class DisconnectAccess
|
class DisconnectAccess
|
||||||
{
|
{
|
||||||
|
friend class QPDF_Array;
|
||||||
friend class QPDF_Dictionary;
|
friend class QPDF_Dictionary;
|
||||||
friend class QPDF_Stream;
|
friend class QPDF_Stream;
|
||||||
friend class SparseOHArray;
|
friend class SparseOHArray;
|
||||||
friend class OHArray;
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
static void
|
static void
|
||||||
disconnect(QPDFObjectHandle& o)
|
disconnect(QPDFObjectHandle o)
|
||||||
{
|
{
|
||||||
o.disconnect();
|
o.disconnect();
|
||||||
}
|
}
|
||||||
|
@ -11,26 +11,6 @@ OHArray::OHArray()
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
OHArray::disconnect()
|
|
||||||
{
|
|
||||||
for (auto const& iter: elements) {
|
|
||||||
if (iter) {
|
|
||||||
QPDFObjectHandle oh = iter;
|
|
||||||
QPDFObjectHandle::DisconnectAccess::disconnect(oh);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
OHArray::setAt(size_t idx, QPDFObjectHandle oh)
|
|
||||||
{
|
|
||||||
if (idx >= elements.size()) {
|
|
||||||
throw std::logic_error("bounds error setting item in OHArray");
|
|
||||||
}
|
|
||||||
elements[idx] = oh.getObj();
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
void
|
||||||
OHArray::erase(size_t idx)
|
OHArray::erase(size_t idx)
|
||||||
{
|
{
|
||||||
|
@ -77,7 +77,11 @@ QPDF_Array::disconnect()
|
|||||||
if (sparse) {
|
if (sparse) {
|
||||||
sp_elements.disconnect();
|
sp_elements.disconnect();
|
||||||
} else {
|
} else {
|
||||||
elements.disconnect();
|
for (auto const& iter: elements.elements) {
|
||||||
|
if (iter) {
|
||||||
|
QPDFObjectHandle::DisconnectAccess::disconnect(iter);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -176,7 +180,11 @@ QPDF_Array::setItem(int n, QPDFObjectHandle const& oh)
|
|||||||
if (sparse) {
|
if (sparse) {
|
||||||
sp_elements.setAt(QIntC::to_size(n), oh);
|
sp_elements.setAt(QIntC::to_size(n), oh);
|
||||||
} else {
|
} else {
|
||||||
elements.setAt(QIntC::to_size(n), oh);
|
size_t idx = size_t(n);
|
||||||
|
if (n < 0 || idx >= elements.elements.size()) {
|
||||||
|
throw std::logic_error("bounds error setting item in QPDF_Array");
|
||||||
|
}
|
||||||
|
elements.elements[idx] = oh.getObj();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -12,11 +12,9 @@ class OHArray
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
OHArray();
|
OHArray();
|
||||||
void setAt(size_t idx, QPDFObjectHandle oh);
|
|
||||||
void erase(size_t idx);
|
void erase(size_t idx);
|
||||||
void insert(size_t idx, QPDFObjectHandle oh);
|
void insert(size_t idx, QPDFObjectHandle oh);
|
||||||
OHArray copy();
|
OHArray copy();
|
||||||
void disconnect();
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
friend class QPDF_Array;
|
friend class QPDF_Array;
|
||||||
|
Loading…
Reference in New Issue
Block a user