-
…ance error and warning handling within `BaseHandle` and `QPDF`, highlighting that the error condition is not covered in CI testing without generating codecov noise.
-
…y, and simplify implementation.
-
…actor implementation to simplify null handling and align with API conventions.
-
…ctionary key access, and simplify null handling logic.
-
…reamline object assignment, and introduce constructors for `QPDFObjectHandle`.
-
Implement subscript operators (`operator[]`) to provide indexed access to `QPDFObjectHandle` for both `size_t` and `int` types.
-
Refactor array handling in `QPDFObjectHandle`: replace `int` with `size_t` for size and index operations, introduce utility functions for type conversions, and simplify sparse array logic.
-
… warnings, and centralize utility methods.
-
...and include ObjectHandle.hh first in QPDFObjectHandle so there is at least one place (other than check_abi get-sizes) that includes it first.
-
- Add missing export for operator QPDFObjGen. - Fix handling of indirect references. The use of the type_code method in various switch statements bypassed the special handling of ::ot_reference objects. Replace with new method resolved_type_code. Add tests for ::ot_reference objects.
-
Move all stream-specific methods to new class qpdf::Stream
-
Move all array-specific methods to new class qpdf::Array.
-
Move all dictionary specific methods to BaseDictionary. Create new subclass Dictionary to allow QPDFObjectHandle to access the moved methods.
-
The new class is only usable as base classes and does not support direct instantiation or upcasting. Add operators to convert to bool, QPDFObjectHandle and QPDFObjGen. Derive QPDFObjectHandle from BaseHandle and make final.