-
This is in preparation for restoring a QPDFObject.hh to ease the transition on qpdf_object_type_e. This commit was created by * Renaming QPDFObject.cc and QPDFObject.hh * Replacing QPDFObject\b with QPDFValueProxy (where \b is word boundary) * Running format-code * Manually resorting files in libqpdf/CMakeLists.txt * Manually refilling the comment in QPDF.hh near class Resolver
-
Since Buffer has always implemented its copy constructor with a deep copy, its Members object will never have multiple owners. Change to unique_ptr. Also implement move constructors for Buffer, since there may be cases where a deep copy is not needed.
-
On destruction of the QPDF object replace all indirect object references with direct nulls. Remove all existing code to release resolved references. Fixes performance issue due to interaction of resetting QPDFValue::qpdf and og members and prior code.
-
This doesn't need an explicit destructor anymore.
-
Now that QPDFObject.hh is out of the public API, we don't really need QPDFObjAccessor. Also, the function didn't have to be virtual anymore.
-
We don't put specific copyright banners on files that aren't installed.
-
This required moving some newly inlined functions back to the cc file, but that seems to have had no measurable performance impact.
-
Avd xcsv brvtns.
-
Tidy QPDF::getAllPagesInternal and QPDF::pushInheritedAttributesToPageInternal
-
Also, modify QPDFObject::swapWith to update the ObjGens of the swapped objects. Modify QPDF::newIndirect and QPDF::updateCache to keep object ObjGens up to date.
-
Modify QPDFParser::parse to call QPDF::getObject instead.
-
Add a new obj_cache entry or update an existing entry in place.
-
Also change QPDF::replaceObject and QPDF::swapObjects such that the QPDFObject assigned to an og in the obj_cache is never replaced; only QPDFObject::value is updated.
-
Centralise casting of QPDFObjects and reduce repeated dereferencing.
-
Allow QPDFObjectHandle::obj to be set prior resolving object. ot_unresolved has been appended to the list object types in order to preserve the output of existing test cases.
-
Report mem usage
-
Also remove no-longer-needed #include