diff --git a/cSpell.json b/cSpell.json index 655cd141..918d186c 100644 --- a/cSpell.json +++ b/cSpell.json @@ -300,6 +300,7 @@ "nodefaultlib", "noout", "notfound", + "nowarn", "npages", "nproc", "nrounds", @@ -423,6 +424,7 @@ "qpdftypes", "qpdfusage", "qpdfvalue", + "qpdfvalueproxy", "qpdfwriter", "qpdfx", "qpdfxrefentry", diff --git a/include/qpdf/QPDF.hh b/include/qpdf/QPDF.hh index 567817f1..c7ac5281 100644 --- a/include/qpdf/QPDF.hh +++ b/include/qpdf/QPDF.hh @@ -842,11 +842,11 @@ class QPDF } }; - // Resolver class is restricted to QPDFObject so that only it can - // resolve indirect references. + // Resolver class is restricted to QPDFValueProxy so that only it + // can resolve indirect references. class Resolver { - friend class QPDFObject; + friend class QPDFValueProxy; private: static void @@ -952,7 +952,7 @@ class QPDF { } ObjCache( - std::shared_ptr object, + std::shared_ptr object, qpdf_offset_t end_before_space, qpdf_offset_t end_after_space) : object(object), @@ -961,7 +961,7 @@ class QPDF { } - std::shared_ptr object; + std::shared_ptr object; qpdf_offset_t end_before_space; qpdf_offset_t end_after_space; }; @@ -1186,12 +1186,12 @@ class QPDF QPDFObjectHandle reserveObjectIfNotExists(QPDFObjGen const& og); QPDFObjectHandle reserveStream(QPDFObjGen const& og); QPDFObjectHandle - newIndirect(QPDFObjGen const&, std::shared_ptr const&); + newIndirect(QPDFObjGen const&, std::shared_ptr const&); bool isCached(QPDFObjGen const& og); bool isUnresolved(QPDFObjGen const& og); void updateCache( QPDFObjGen const& og, - std::shared_ptr const& object, + std::shared_ptr const& object, qpdf_offset_t end_before_space, qpdf_offset_t end_after_space); diff --git a/include/qpdf/QPDFObjectHandle.hh b/include/qpdf/QPDFObjectHandle.hh index 8f1858a1..de085bb6 100644 --- a/include/qpdf/QPDFObjectHandle.hh +++ b/include/qpdf/QPDFObjectHandle.hh @@ -54,7 +54,7 @@ class QPDF_Real; class QPDF_Reserved; class QPDF_Stream; class QPDF_String; -class QPDFObject; +class QPDFValueProxy; class QPDFTokenizer; class QPDFExc; class Pl_QPDFTokenizer; @@ -1453,7 +1453,7 @@ class QPDFObjectHandle private: static QPDFObjectHandle - newIndirect(std::shared_ptr const& obj) + newIndirect(std::shared_ptr const& obj) { return QPDFObjectHandle(obj); } @@ -1478,7 +1478,7 @@ class QPDFObjectHandle friend class QPDF; private: - static std::shared_ptr + static std::shared_ptr getObject(QPDFObjectHandle& o) { if (!o.dereference()) { @@ -1560,7 +1560,7 @@ class QPDFObjectHandle bool isImage(bool exclude_imagemask = true); private: - QPDFObjectHandle(std::shared_ptr const& obj) : + QPDFObjectHandle(std::shared_ptr const& obj) : obj(obj) { } @@ -1613,7 +1613,7 @@ class QPDFObjectHandle // Moving members of QPDFObjectHandle into a smart pointer incurs // a substantial performance penalty since QPDFObjectHandle // objects are copied around so frequently. - std::shared_ptr obj; + std::shared_ptr obj; }; #ifndef QPDF_NO_QPDF_STRING diff --git a/libqpdf/CMakeLists.txt b/libqpdf/CMakeLists.txt index 686ea04a..95024c64 100644 --- a/libqpdf/CMakeLists.txt +++ b/libqpdf/CMakeLists.txt @@ -72,7 +72,6 @@ set(libqpdf_SOURCES QPDFMatrix.cc QPDFNameTreeObjectHelper.cc QPDFNumberTreeObjectHelper.cc - QPDFObject.cc QPDFObjectHandle.cc QPDFObjGen.cc QPDFOutlineDocumentHelper.cc @@ -86,6 +85,7 @@ set(libqpdf_SOURCES QPDFTokenizer.cc QPDFUsage.cc QPDFValue.cc + QPDFValueProxy.cc QPDFWriter.cc QPDFXRefEntry.cc QPDF_Array.cc diff --git a/libqpdf/QPDF.cc b/libqpdf/QPDF.cc index 15636d34..aa97de4b 100644 --- a/libqpdf/QPDF.cc +++ b/libqpdf/QPDF.cc @@ -21,7 +21,7 @@ #include #include #include -#include +#include #include #include #include @@ -2114,7 +2114,8 @@ QPDF::resolveObjectsInStream(int obj_stream_number) } QPDFObjectHandle -QPDF::newIndirect(QPDFObjGen const& og, std::shared_ptr const& obj) +QPDF::newIndirect( + QPDFObjGen const& og, std::shared_ptr const& obj) { obj->setObjGen(this, og); if (!obj->hasDescription()) { @@ -2126,7 +2127,7 @@ QPDF::newIndirect(QPDFObjGen const& og, std::shared_ptr const& obj) void QPDF::updateCache( QPDFObjGen const& og, - std::shared_ptr const& object, + std::shared_ptr const& object, qpdf_offset_t end_before_space, qpdf_offset_t end_after_space) { diff --git a/libqpdf/QPDFObjectHandle.cc b/libqpdf/QPDFObjectHandle.cc index 4b1ebe43..838d389f 100644 --- a/libqpdf/QPDFObjectHandle.cc +++ b/libqpdf/QPDFObjectHandle.cc @@ -7,9 +7,9 @@ #include #include #include -#include #include #include +#include #include #include #include @@ -2257,7 +2257,7 @@ QPDFObjectHandle::copyObject( " reserved object handle direct"); } - std::shared_ptr new_obj; + std::shared_ptr new_obj; if (isBool() || isInteger() || isName() || isNull() || isReal() || isString()) { diff --git a/libqpdf/QPDFValue.cc b/libqpdf/QPDFValue.cc index 8a6222d2..957cc350 100644 --- a/libqpdf/QPDFValue.cc +++ b/libqpdf/QPDFValue.cc @@ -1,11 +1,11 @@ #include -#include +#include -std::shared_ptr +std::shared_ptr QPDFValue::do_create(QPDFValue* object) { - std::shared_ptr obj(new QPDFObject()); + std::shared_ptr obj(new QPDFValueProxy()); obj->value = std::shared_ptr(object); return obj; } diff --git a/libqpdf/QPDFObject.cc b/libqpdf/QPDFValueProxy.cc similarity index 63% rename from libqpdf/QPDFObject.cc rename to libqpdf/QPDFValueProxy.cc index 8b538021..461d8177 100644 --- a/libqpdf/QPDFObject.cc +++ b/libqpdf/QPDFValueProxy.cc @@ -1,9 +1,9 @@ -#include +#include #include void -QPDFObject::doResolve() +QPDFValueProxy::doResolve() { auto og = value->og; QPDF::Resolver::resolve(value->qpdf, og); diff --git a/libqpdf/QPDF_Array.cc b/libqpdf/QPDF_Array.cc index 7d42508c..5cce8909 100644 --- a/libqpdf/QPDF_Array.cc +++ b/libqpdf/QPDF_Array.cc @@ -16,19 +16,19 @@ QPDF_Array::QPDF_Array(SparseOHArray const& items) : { } -std::shared_ptr +std::shared_ptr QPDF_Array::create(std::vector const& items) { return do_create(new QPDF_Array(items)); } -std::shared_ptr +std::shared_ptr QPDF_Array::create(SparseOHArray const& items) { return do_create(new QPDF_Array(items)); } -std::shared_ptr +std::shared_ptr QPDF_Array::shallowCopy() { return create(elements); diff --git a/libqpdf/QPDF_Bool.cc b/libqpdf/QPDF_Bool.cc index efbfd6c9..8b4c6a7a 100644 --- a/libqpdf/QPDF_Bool.cc +++ b/libqpdf/QPDF_Bool.cc @@ -6,13 +6,13 @@ QPDF_Bool::QPDF_Bool(bool val) : { } -std::shared_ptr +std::shared_ptr QPDF_Bool::create(bool value) { return do_create(new QPDF_Bool(value)); } -std::shared_ptr +std::shared_ptr QPDF_Bool::shallowCopy() { return create(val); diff --git a/libqpdf/QPDF_Dictionary.cc b/libqpdf/QPDF_Dictionary.cc index be0104d0..41760993 100644 --- a/libqpdf/QPDF_Dictionary.cc +++ b/libqpdf/QPDF_Dictionary.cc @@ -9,13 +9,13 @@ QPDF_Dictionary::QPDF_Dictionary( { } -std::shared_ptr +std::shared_ptr QPDF_Dictionary::create(std::map const& items) { return do_create(new QPDF_Dictionary(items)); } -std::shared_ptr +std::shared_ptr QPDF_Dictionary::shallowCopy() { return create(items); diff --git a/libqpdf/QPDF_InlineImage.cc b/libqpdf/QPDF_InlineImage.cc index 76318196..a675514a 100644 --- a/libqpdf/QPDF_InlineImage.cc +++ b/libqpdf/QPDF_InlineImage.cc @@ -6,13 +6,13 @@ QPDF_InlineImage::QPDF_InlineImage(std::string const& val) : { } -std::shared_ptr +std::shared_ptr QPDF_InlineImage::create(std::string const& val) { return do_create(new QPDF_InlineImage(val)); } -std::shared_ptr +std::shared_ptr QPDF_InlineImage::shallowCopy() { return create(val); diff --git a/libqpdf/QPDF_Integer.cc b/libqpdf/QPDF_Integer.cc index 24812573..cb9066bd 100644 --- a/libqpdf/QPDF_Integer.cc +++ b/libqpdf/QPDF_Integer.cc @@ -8,13 +8,13 @@ QPDF_Integer::QPDF_Integer(long long val) : { } -std::shared_ptr +std::shared_ptr QPDF_Integer::create(long long value) { return do_create(new QPDF_Integer(value)); } -std::shared_ptr +std::shared_ptr QPDF_Integer::shallowCopy() { return create(val); diff --git a/libqpdf/QPDF_Name.cc b/libqpdf/QPDF_Name.cc index c86d34b4..e793affb 100644 --- a/libqpdf/QPDF_Name.cc +++ b/libqpdf/QPDF_Name.cc @@ -10,13 +10,13 @@ QPDF_Name::QPDF_Name(std::string const& name) : { } -std::shared_ptr +std::shared_ptr QPDF_Name::create(std::string const& name) { return do_create(new QPDF_Name(name)); } -std::shared_ptr +std::shared_ptr QPDF_Name::shallowCopy() { return create(name); diff --git a/libqpdf/QPDF_Null.cc b/libqpdf/QPDF_Null.cc index f60dda1f..0b824828 100644 --- a/libqpdf/QPDF_Null.cc +++ b/libqpdf/QPDF_Null.cc @@ -5,13 +5,13 @@ QPDF_Null::QPDF_Null() : { } -std::shared_ptr +std::shared_ptr QPDF_Null::create() { return do_create(new QPDF_Null()); } -std::shared_ptr +std::shared_ptr QPDF_Null::shallowCopy() { return create(); diff --git a/libqpdf/QPDF_Operator.cc b/libqpdf/QPDF_Operator.cc index 547ff40a..f29ab23d 100644 --- a/libqpdf/QPDF_Operator.cc +++ b/libqpdf/QPDF_Operator.cc @@ -6,13 +6,13 @@ QPDF_Operator::QPDF_Operator(std::string const& val) : { } -std::shared_ptr +std::shared_ptr QPDF_Operator::create(std::string const& val) { return do_create(new QPDF_Operator(val)); } -std::shared_ptr +std::shared_ptr QPDF_Operator::shallowCopy() { return create(val); diff --git a/libqpdf/QPDF_Real.cc b/libqpdf/QPDF_Real.cc index 85c9ceeb..32c03b63 100644 --- a/libqpdf/QPDF_Real.cc +++ b/libqpdf/QPDF_Real.cc @@ -15,20 +15,20 @@ QPDF_Real::QPDF_Real( { } -std::shared_ptr +std::shared_ptr QPDF_Real::create(std::string const& val) { return do_create(new QPDF_Real(val)); } -std::shared_ptr +std::shared_ptr QPDF_Real::create(double value, int decimal_places, bool trim_trailing_zeroes) { return do_create( new QPDF_Real(value, decimal_places, trim_trailing_zeroes)); } -std::shared_ptr +std::shared_ptr QPDF_Real::shallowCopy() { return create(val); diff --git a/libqpdf/QPDF_Reserved.cc b/libqpdf/QPDF_Reserved.cc index f5af4688..420cf765 100644 --- a/libqpdf/QPDF_Reserved.cc +++ b/libqpdf/QPDF_Reserved.cc @@ -7,13 +7,13 @@ QPDF_Reserved::QPDF_Reserved() : { } -std::shared_ptr +std::shared_ptr QPDF_Reserved::create() { return do_create(new QPDF_Reserved()); } -std::shared_ptr +std::shared_ptr QPDF_Reserved::shallowCopy() { return create(); diff --git a/libqpdf/QPDF_Stream.cc b/libqpdf/QPDF_Stream.cc index 4e5e2013..bf11bd92 100644 --- a/libqpdf/QPDF_Stream.cc +++ b/libqpdf/QPDF_Stream.cc @@ -130,7 +130,7 @@ QPDF_Stream::QPDF_Stream( qpdf, qpdf->getFilename() + ", stream object " + og.unparse(' ')); } -std::shared_ptr +std::shared_ptr QPDF_Stream::create( QPDF* qpdf, QPDFObjGen const& og, @@ -141,7 +141,7 @@ QPDF_Stream::create( return do_create(new QPDF_Stream(qpdf, og, stream_dict, offset, length)); } -std::shared_ptr +std::shared_ptr QPDF_Stream::shallowCopy() { throw std::logic_error("stream objects cannot be cloned"); diff --git a/libqpdf/QPDF_String.cc b/libqpdf/QPDF_String.cc index c6cb6c41..a9819325 100644 --- a/libqpdf/QPDF_String.cc +++ b/libqpdf/QPDF_String.cc @@ -26,13 +26,13 @@ QPDF_String::QPDF_String(std::string const& val) : { } -std::shared_ptr +std::shared_ptr QPDF_String::create(std::string const& val) { return do_create(new QPDF_String(val)); } -std::shared_ptr +std::shared_ptr QPDF_String::create_utf16(std::string const& utf8_val) { std::string result; @@ -42,7 +42,7 @@ QPDF_String::create_utf16(std::string const& utf8_val) return do_create(new QPDF_String(result)); } -std::shared_ptr +std::shared_ptr QPDF_String::shallowCopy() { return create(val); diff --git a/libqpdf/QPDF_Unresolved.cc b/libqpdf/QPDF_Unresolved.cc index f824a9a6..f72281c0 100644 --- a/libqpdf/QPDF_Unresolved.cc +++ b/libqpdf/QPDF_Unresolved.cc @@ -7,13 +7,13 @@ QPDF_Unresolved::QPDF_Unresolved(QPDF* qpdf, QPDFObjGen const& og) : { } -std::shared_ptr +std::shared_ptr QPDF_Unresolved::create(QPDF* qpdf, QPDFObjGen const& og) { return do_create(new QPDF_Unresolved(qpdf, og)); } -std::shared_ptr +std::shared_ptr QPDF_Unresolved::shallowCopy() { throw std::logic_error( diff --git a/libqpdf/qpdf/QPDFValue.hh b/libqpdf/qpdf/QPDFValue.hh index abcd02fc..bac573d6 100644 --- a/libqpdf/qpdf/QPDFValue.hh +++ b/libqpdf/qpdf/QPDFValue.hh @@ -11,16 +11,16 @@ class QPDF; class QPDFObjectHandle; -class QPDFObject; +class QPDFValueProxy; class QPDFValue { - friend class QPDFObject; + friend class QPDFValueProxy; public: virtual ~QPDFValue() = default; - virtual std::shared_ptr shallowCopy() = 0; + virtual std::shared_ptr shallowCopy() = 0; virtual std::string unparse() = 0; virtual JSON getJSON(int json_version) = 0; virtual void @@ -87,7 +87,7 @@ class QPDFValue { } - static std::shared_ptr do_create(QPDFValue*); + static std::shared_ptr do_create(QPDFValue*); private: QPDFValue(QPDFValue const&) = delete; diff --git a/libqpdf/qpdf/QPDFObject.hh b/libqpdf/qpdf/QPDFValueProxy.hh similarity index 86% rename from libqpdf/qpdf/QPDFObject.hh rename to libqpdf/qpdf/QPDFValueProxy.hh index 9d3c1fec..e190318c 100644 --- a/libqpdf/qpdf/QPDFObject.hh +++ b/libqpdf/qpdf/QPDFValueProxy.hh @@ -1,5 +1,5 @@ -#ifndef QPDFOBJECT_HH -#define QPDFOBJECT_HH +#ifndef QPDFVALUEPROXY_HH +#define QPDFVALUEPROXY_HH #include #include @@ -12,14 +12,14 @@ class QPDF; class QPDFObjectHandle; -class QPDFObject +class QPDFValueProxy { friend class QPDFValue; public: - QPDFObject() = default; + QPDFValueProxy() = default; - std::shared_ptr + std::shared_ptr shallowCopy() { return value->shallowCopy(); @@ -87,12 +87,12 @@ class QPDFObject return value->getParsedOffset(); } void - assign(std::shared_ptr o) + assign(std::shared_ptr o) { value = o->value; } void - swapWith(std::shared_ptr o) + swapWith(std::shared_ptr o) { auto v = value; value = o->value; @@ -138,9 +138,9 @@ class QPDFObject } private: - QPDFObject(QPDFObject const&) = delete; - QPDFObject& operator=(QPDFObject const&) = delete; + QPDFValueProxy(QPDFValueProxy const&) = delete; + QPDFValueProxy& operator=(QPDFValueProxy const&) = delete; std::shared_ptr value; }; -#endif // QPDFOBJECT_HH +#endif // QPDFVALUEPROXY_HH diff --git a/libqpdf/qpdf/QPDF_Array.hh b/libqpdf/qpdf/QPDF_Array.hh index 672e87f6..4bae85f7 100644 --- a/libqpdf/qpdf/QPDF_Array.hh +++ b/libqpdf/qpdf/QPDF_Array.hh @@ -11,10 +11,10 @@ class QPDF_Array: public QPDFValue { public: virtual ~QPDF_Array() = default; - static std::shared_ptr + static std::shared_ptr create(std::vector const& items); - static std::shared_ptr create(SparseOHArray const& items); - virtual std::shared_ptr shallowCopy(); + static std::shared_ptr create(SparseOHArray const& items); + virtual std::shared_ptr shallowCopy(); virtual std::string unparse(); virtual JSON getJSON(int json_version); diff --git a/libqpdf/qpdf/QPDF_Bool.hh b/libqpdf/qpdf/QPDF_Bool.hh index 3e45cd8e..33704176 100644 --- a/libqpdf/qpdf/QPDF_Bool.hh +++ b/libqpdf/qpdf/QPDF_Bool.hh @@ -7,8 +7,8 @@ class QPDF_Bool: public QPDFValue { public: virtual ~QPDF_Bool() = default; - static std::shared_ptr create(bool val); - virtual std::shared_ptr shallowCopy(); + static std::shared_ptr create(bool val); + virtual std::shared_ptr shallowCopy(); virtual std::string unparse(); virtual JSON getJSON(int json_version); bool getVal() const; diff --git a/libqpdf/qpdf/QPDF_Dictionary.hh b/libqpdf/qpdf/QPDF_Dictionary.hh index 00de85e9..11970161 100644 --- a/libqpdf/qpdf/QPDF_Dictionary.hh +++ b/libqpdf/qpdf/QPDF_Dictionary.hh @@ -12,9 +12,9 @@ class QPDF_Dictionary: public QPDFValue { public: virtual ~QPDF_Dictionary() = default; - static std::shared_ptr + static std::shared_ptr create(std::map const& items); - virtual std::shared_ptr shallowCopy(); + virtual std::shared_ptr shallowCopy(); virtual std::string unparse(); virtual JSON getJSON(int json_version); diff --git a/libqpdf/qpdf/QPDF_InlineImage.hh b/libqpdf/qpdf/QPDF_InlineImage.hh index b7bea9c7..9c21c183 100644 --- a/libqpdf/qpdf/QPDF_InlineImage.hh +++ b/libqpdf/qpdf/QPDF_InlineImage.hh @@ -7,8 +7,8 @@ class QPDF_InlineImage: public QPDFValue { public: virtual ~QPDF_InlineImage() = default; - static std::shared_ptr create(std::string const& val); - virtual std::shared_ptr shallowCopy(); + static std::shared_ptr create(std::string const& val); + virtual std::shared_ptr shallowCopy(); virtual std::string unparse(); virtual JSON getJSON(int json_version); std::string getVal() const; diff --git a/libqpdf/qpdf/QPDF_Integer.hh b/libqpdf/qpdf/QPDF_Integer.hh index 7e09673c..448bc059 100644 --- a/libqpdf/qpdf/QPDF_Integer.hh +++ b/libqpdf/qpdf/QPDF_Integer.hh @@ -7,8 +7,8 @@ class QPDF_Integer: public QPDFValue { public: virtual ~QPDF_Integer() = default; - static std::shared_ptr create(long long value); - virtual std::shared_ptr shallowCopy(); + static std::shared_ptr create(long long value); + virtual std::shared_ptr shallowCopy(); virtual std::string unparse(); virtual JSON getJSON(int json_version); long long getVal() const; diff --git a/libqpdf/qpdf/QPDF_Name.hh b/libqpdf/qpdf/QPDF_Name.hh index 74fc7e44..bf46ee14 100644 --- a/libqpdf/qpdf/QPDF_Name.hh +++ b/libqpdf/qpdf/QPDF_Name.hh @@ -7,8 +7,8 @@ class QPDF_Name: public QPDFValue { public: virtual ~QPDF_Name() = default; - static std::shared_ptr create(std::string const& name); - virtual std::shared_ptr shallowCopy(); + static std::shared_ptr create(std::string const& name); + virtual std::shared_ptr shallowCopy(); virtual std::string unparse(); virtual JSON getJSON(int json_version); std::string getName() const; diff --git a/libqpdf/qpdf/QPDF_Null.hh b/libqpdf/qpdf/QPDF_Null.hh index 68973de9..90ccda38 100644 --- a/libqpdf/qpdf/QPDF_Null.hh +++ b/libqpdf/qpdf/QPDF_Null.hh @@ -7,8 +7,8 @@ class QPDF_Null: public QPDFValue { public: virtual ~QPDF_Null() = default; - static std::shared_ptr create(); - virtual std::shared_ptr shallowCopy(); + static std::shared_ptr create(); + virtual std::shared_ptr shallowCopy(); virtual std::string unparse(); virtual JSON getJSON(int json_version); diff --git a/libqpdf/qpdf/QPDF_Operator.hh b/libqpdf/qpdf/QPDF_Operator.hh index 767c0ba0..30c40070 100644 --- a/libqpdf/qpdf/QPDF_Operator.hh +++ b/libqpdf/qpdf/QPDF_Operator.hh @@ -7,8 +7,8 @@ class QPDF_Operator: public QPDFValue { public: virtual ~QPDF_Operator() = default; - static std::shared_ptr create(std::string const& val); - virtual std::shared_ptr shallowCopy(); + static std::shared_ptr create(std::string const& val); + virtual std::shared_ptr shallowCopy(); virtual std::string unparse(); virtual JSON getJSON(int json_version); std::string getVal() const; diff --git a/libqpdf/qpdf/QPDF_Real.hh b/libqpdf/qpdf/QPDF_Real.hh index dc0f3ff8..2e5bfa02 100644 --- a/libqpdf/qpdf/QPDF_Real.hh +++ b/libqpdf/qpdf/QPDF_Real.hh @@ -7,10 +7,10 @@ class QPDF_Real: public QPDFValue { public: virtual ~QPDF_Real() = default; - static std::shared_ptr create(std::string const& val); - static std::shared_ptr + static std::shared_ptr create(std::string const& val); + static std::shared_ptr create(double value, int decimal_places, bool trim_trailing_zeroes); - virtual std::shared_ptr shallowCopy(); + virtual std::shared_ptr shallowCopy(); virtual std::string unparse(); virtual JSON getJSON(int json_version); std::string getVal(); diff --git a/libqpdf/qpdf/QPDF_Reserved.hh b/libqpdf/qpdf/QPDF_Reserved.hh index f90242a9..23b72ec3 100644 --- a/libqpdf/qpdf/QPDF_Reserved.hh +++ b/libqpdf/qpdf/QPDF_Reserved.hh @@ -7,8 +7,8 @@ class QPDF_Reserved: public QPDFValue { public: virtual ~QPDF_Reserved() = default; - static std::shared_ptr create(); - virtual std::shared_ptr shallowCopy(); + static std::shared_ptr create(); + virtual std::shared_ptr shallowCopy(); virtual std::string unparse(); virtual JSON getJSON(int json_version); diff --git a/libqpdf/qpdf/QPDF_Stream.hh b/libqpdf/qpdf/QPDF_Stream.hh index 6430ae58..2f38e486 100644 --- a/libqpdf/qpdf/QPDF_Stream.hh +++ b/libqpdf/qpdf/QPDF_Stream.hh @@ -17,13 +17,13 @@ class QPDF_Stream: public QPDFValue { public: virtual ~QPDF_Stream() = default; - static std::shared_ptr create( + static std::shared_ptr create( QPDF*, QPDFObjGen const& og, QPDFObjectHandle stream_dict, qpdf_offset_t offset, size_t length); - virtual std::shared_ptr shallowCopy(); + virtual std::shared_ptr shallowCopy(); virtual std::string unparse(); virtual JSON getJSON(int json_version); virtual void setDescription(QPDF*, std::string const&); diff --git a/libqpdf/qpdf/QPDF_String.hh b/libqpdf/qpdf/QPDF_String.hh index a92427e3..a2cf9246 100644 --- a/libqpdf/qpdf/QPDF_String.hh +++ b/libqpdf/qpdf/QPDF_String.hh @@ -11,10 +11,10 @@ class QPDF_String: public QPDFValue public: virtual ~QPDF_String() = default; - static std::shared_ptr create(std::string const& val); - static std::shared_ptr + static std::shared_ptr create(std::string const& val); + static std::shared_ptr create_utf16(std::string const& utf8_val); - virtual std::shared_ptr shallowCopy(); + virtual std::shared_ptr shallowCopy(); virtual std::string unparse(); std::string unparse(bool force_binary); virtual JSON getJSON(int json_version); diff --git a/libqpdf/qpdf/QPDF_Unresolved.hh b/libqpdf/qpdf/QPDF_Unresolved.hh index efcf4e3d..80d27102 100644 --- a/libqpdf/qpdf/QPDF_Unresolved.hh +++ b/libqpdf/qpdf/QPDF_Unresolved.hh @@ -7,8 +7,9 @@ class QPDF_Unresolved: public QPDFValue { public: virtual ~QPDF_Unresolved() = default; - static std::shared_ptr create(QPDF* qpdf, QPDFObjGen const& og); - virtual std::shared_ptr shallowCopy(); + static std::shared_ptr + create(QPDF* qpdf, QPDFObjGen const& og); + virtual std::shared_ptr shallowCopy(); virtual std::string unparse(); virtual JSON getJSON(int json_version);