1 // Copyright 2016 PDFium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6 7 #ifndef CORE_FPDFAPI_PARSER_CPDF_NULL_H_ 8 #define CORE_FPDFAPI_PARSER_CPDF_NULL_H_ 9 10 #include <memory> 11 12 #include "core/fpdfapi/parser/cpdf_object.h" 13 14 class CPDF_Null final : public CPDF_Object { 15 public: 16 template <typename T, typename... Args> 17 friend RetainPtr<T> pdfium::MakeRetain(Args&&... args); 18 19 // CPDF_Object. 20 Type GetType() const override; 21 RetainPtr<CPDF_Object> Clone() const override; 22 bool WriteTo(IFX_ArchiveStream* archive, 23 const CPDF_Encryptor* encryptor) const override; 24 bool IsNull() const override; 25 26 private: 27 CPDF_Null(); 28 }; 29 30 #endif // CORE_FPDFAPI_PARSER_CPDF_NULL_H_ 31