The final game: mark everything final.
Then revert the ones that break compilation.
Fix one IWYU noticed during presubmit.
Change-Id: I881a8a72818e55dbc4816247e35ff5e3015194e7
Reviewed-on: https://pdfium-review.googlesource.com/41470
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
diff --git a/xfa/fxfa/cxfa_ffarc.h b/xfa/fxfa/cxfa_ffarc.h
index 8e8b292..908ba0a 100644
--- a/xfa/fxfa/cxfa_ffarc.h
+++ b/xfa/fxfa/cxfa_ffarc.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/cxfa_ffwidget.h"
-class CXFA_FFArc : public CXFA_FFWidget {
+class CXFA_FFArc final : public CXFA_FFWidget {
public:
explicit CXFA_FFArc(CXFA_Node* pnode);
~CXFA_FFArc() override;
diff --git a/xfa/fxfa/cxfa_ffbarcode.h b/xfa/fxfa/cxfa_ffbarcode.h
index 672f89c..5b55062 100644
--- a/xfa/fxfa/cxfa_ffbarcode.h
+++ b/xfa/fxfa/cxfa_ffbarcode.h
@@ -86,7 +86,7 @@
class CXFA_Barcode;
-class CXFA_FFBarcode : public CXFA_FFTextEdit {
+class CXFA_FFBarcode final : public CXFA_FFTextEdit {
public:
static const BarCodeInfo* GetBarcodeTypeByName(const WideString& wsName);
diff --git a/xfa/fxfa/cxfa_ffcheckbutton.h b/xfa/fxfa/cxfa_ffcheckbutton.h
index 0bbec75..0d34cf9 100644
--- a/xfa/fxfa/cxfa_ffcheckbutton.h
+++ b/xfa/fxfa/cxfa_ffcheckbutton.h
@@ -14,7 +14,7 @@
class CXFA_CheckButton;
-class CXFA_FFCheckButton : public CXFA_FFField {
+class CXFA_FFCheckButton final : public CXFA_FFField {
public:
CXFA_FFCheckButton(CXFA_Node* pNode, CXFA_CheckButton* button);
~CXFA_FFCheckButton() override;
diff --git a/xfa/fxfa/cxfa_ffcombobox.h b/xfa/fxfa/cxfa_ffcombobox.h
index ed68df0..9ed8c40 100644
--- a/xfa/fxfa/cxfa_ffcombobox.h
+++ b/xfa/fxfa/cxfa_ffcombobox.h
@@ -12,7 +12,7 @@
class CXFA_EventParam;
-class CXFA_FFComboBox : public CXFA_FFDropDown {
+class CXFA_FFComboBox final : public CXFA_FFDropDown {
public:
explicit CXFA_FFComboBox(CXFA_Node* pNode);
~CXFA_FFComboBox() override;
diff --git a/xfa/fxfa/cxfa_ffdatetimeedit.h b/xfa/fxfa/cxfa_ffdatetimeedit.h
index 3a60ada..64a6ef0 100644
--- a/xfa/fxfa/cxfa_ffdatetimeedit.h
+++ b/xfa/fxfa/cxfa_ffdatetimeedit.h
@@ -20,7 +20,7 @@
class CFWL_Event;
class CFWL_Widget;
-class CXFA_FFDateTimeEdit : public CXFA_FFTextEdit {
+class CXFA_FFDateTimeEdit final : public CXFA_FFTextEdit {
public:
explicit CXFA_FFDateTimeEdit(CXFA_Node* pNode);
~CXFA_FFDateTimeEdit() override;
diff --git a/xfa/fxfa/cxfa_ffexclgroup.h b/xfa/fxfa/cxfa_ffexclgroup.h
index b904301..7b16248 100644
--- a/xfa/fxfa/cxfa_ffexclgroup.h
+++ b/xfa/fxfa/cxfa_ffexclgroup.h
@@ -10,7 +10,7 @@
#include "xfa/fxfa/cxfa_ffpageview.h"
#include "xfa/fxfa/cxfa_ffwidget.h"
-class CXFA_FFExclGroup : public CXFA_FFWidget {
+class CXFA_FFExclGroup final : public CXFA_FFWidget {
public:
explicit CXFA_FFExclGroup(CXFA_Node* pNode);
~CXFA_FFExclGroup() override;
diff --git a/xfa/fxfa/cxfa_ffimage.h b/xfa/fxfa/cxfa_ffimage.h
index 7859f10..655c679f 100644
--- a/xfa/fxfa/cxfa_ffimage.h
+++ b/xfa/fxfa/cxfa_ffimage.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/cxfa_ffwidget.h"
-class CXFA_FFImage : public CXFA_FFWidget {
+class CXFA_FFImage final : public CXFA_FFWidget {
public:
explicit CXFA_FFImage(CXFA_Node* pNode);
~CXFA_FFImage() override;
diff --git a/xfa/fxfa/cxfa_ffimageedit.h b/xfa/fxfa/cxfa_ffimageedit.h
index c2fd7f7..0339448 100644
--- a/xfa/fxfa/cxfa_ffimageedit.h
+++ b/xfa/fxfa/cxfa_ffimageedit.h
@@ -10,7 +10,7 @@
#include "core/fxcrt/unowned_ptr.h"
#include "xfa/fxfa/cxfa_fffield.h"
-class CXFA_FFImageEdit : public CXFA_FFField {
+class CXFA_FFImageEdit final : public CXFA_FFField {
public:
explicit CXFA_FFImageEdit(CXFA_Node* pNode);
~CXFA_FFImageEdit() override;
diff --git a/xfa/fxfa/cxfa_ffline.h b/xfa/fxfa/cxfa_ffline.h
index ff8d461..f5c8247 100644
--- a/xfa/fxfa/cxfa_ffline.h
+++ b/xfa/fxfa/cxfa_ffline.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/cxfa_ffwidget.h"
-class CXFA_FFLine : public CXFA_FFWidget {
+class CXFA_FFLine final : public CXFA_FFWidget {
public:
explicit CXFA_FFLine(CXFA_Node* pNode);
~CXFA_FFLine() override;
diff --git a/xfa/fxfa/cxfa_fflistbox.h b/xfa/fxfa/cxfa_fflistbox.h
index 4b12b59..d65dd8f 100644
--- a/xfa/fxfa/cxfa_fflistbox.h
+++ b/xfa/fxfa/cxfa_fflistbox.h
@@ -10,7 +10,7 @@
#include "core/fxcrt/unowned_ptr.h"
#include "xfa/fxfa/cxfa_ffdropdown.h"
-class CXFA_FFListBox : public CXFA_FFDropDown {
+class CXFA_FFListBox final : public CXFA_FFDropDown {
public:
explicit CXFA_FFListBox(CXFA_Node* pNode);
~CXFA_FFListBox() override;
diff --git a/xfa/fxfa/cxfa_ffnumericedit.h b/xfa/fxfa/cxfa_ffnumericedit.h
index 8982ee0..b2c39ce 100644
--- a/xfa/fxfa/cxfa_ffnumericedit.h
+++ b/xfa/fxfa/cxfa_ffnumericedit.h
@@ -13,7 +13,7 @@
class CFWL_Event;
class CFWL_Widget;
-class CXFA_FFNumericEdit : public CXFA_FFTextEdit {
+class CXFA_FFNumericEdit final : public CXFA_FFTextEdit {
public:
explicit CXFA_FFNumericEdit(CXFA_Node* pNode);
~CXFA_FFNumericEdit() override;
diff --git a/xfa/fxfa/cxfa_ffpageview.h b/xfa/fxfa/cxfa_ffpageview.h
index 31ce63f..a745b06 100644
--- a/xfa/fxfa/cxfa_ffpageview.h
+++ b/xfa/fxfa/cxfa_ffpageview.h
@@ -17,7 +17,7 @@
class CXFA_FFWidget;
class CXFA_FFDocView;
-class CXFA_FFPageView : public CXFA_ContainerLayoutItem {
+class CXFA_FFPageView final : public CXFA_ContainerLayoutItem {
public:
CXFA_FFPageView(CXFA_FFDocView* pDocView, CXFA_Node* pPageArea);
~CXFA_FFPageView() override;
@@ -33,7 +33,7 @@
UnownedPtr<CXFA_FFDocView> const m_pDocView;
};
-class CXFA_FFPageWidgetIterator : public IXFA_WidgetIterator {
+class CXFA_FFPageWidgetIterator final : public IXFA_WidgetIterator {
public:
CXFA_FFPageWidgetIterator(CXFA_FFPageView* pPageView, uint32_t dwFilter);
~CXFA_FFPageWidgetIterator() override;
@@ -71,7 +71,7 @@
std::vector<CXFA_FFWidget*> m_Children;
};
-class CXFA_FFTabOrderPageWidgetIterator : public IXFA_WidgetIterator {
+class CXFA_FFTabOrderPageWidgetIterator final : public IXFA_WidgetIterator {
public:
CXFA_FFTabOrderPageWidgetIterator(CXFA_FFPageView* pPageView,
uint32_t dwFilter);
diff --git a/xfa/fxfa/cxfa_ffpasswordedit.h b/xfa/fxfa/cxfa_ffpasswordedit.h
index 8f5093f..3af4f96 100644
--- a/xfa/fxfa/cxfa_ffpasswordedit.h
+++ b/xfa/fxfa/cxfa_ffpasswordedit.h
@@ -12,7 +12,7 @@
class CXFA_PasswordEdit;
-class CXFA_FFPasswordEdit : public CXFA_FFTextEdit {
+class CXFA_FFPasswordEdit final : public CXFA_FFTextEdit {
public:
CXFA_FFPasswordEdit(CXFA_Node* pNode, CXFA_PasswordEdit* password_node);
~CXFA_FFPasswordEdit() override;
diff --git a/xfa/fxfa/cxfa_ffpushbutton.h b/xfa/fxfa/cxfa_ffpushbutton.h
index 9c12dacc..604497a 100644
--- a/xfa/fxfa/cxfa_ffpushbutton.h
+++ b/xfa/fxfa/cxfa_ffpushbutton.h
@@ -20,7 +20,7 @@
class CXFA_TextLayout;
class CXFA_TextProvider;
-class CXFA_FFPushButton : public CXFA_FFField {
+class CXFA_FFPushButton final : public CXFA_FFField {
public:
CXFA_FFPushButton(CXFA_Node* pNode, CXFA_Button* button);
~CXFA_FFPushButton() override;
diff --git a/xfa/fxfa/cxfa_ffrectangle.h b/xfa/fxfa/cxfa_ffrectangle.h
index d05f4d7..c1f5864 100644
--- a/xfa/fxfa/cxfa_ffrectangle.h
+++ b/xfa/fxfa/cxfa_ffrectangle.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/cxfa_ffwidget.h"
-class CXFA_FFRectangle : public CXFA_FFWidget {
+class CXFA_FFRectangle final : public CXFA_FFWidget {
public:
explicit CXFA_FFRectangle(CXFA_Node* pNode);
~CXFA_FFRectangle() override;
diff --git a/xfa/fxfa/cxfa_fftext.h b/xfa/fxfa/cxfa_fftext.h
index 9da39d4..7561fdc 100644
--- a/xfa/fxfa/cxfa_fftext.h
+++ b/xfa/fxfa/cxfa_fftext.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/cxfa_ffwidget.h"
-class CXFA_FFText : public CXFA_FFWidget {
+class CXFA_FFText final : public CXFA_FFWidget {
public:
explicit CXFA_FFText(CXFA_Node* pNode);
~CXFA_FFText() override;
diff --git a/xfa/fxfa/cxfa_linkuserdata.h b/xfa/fxfa/cxfa_linkuserdata.h
index f62bd3c..baa39aa 100644
--- a/xfa/fxfa/cxfa_linkuserdata.h
+++ b/xfa/fxfa/cxfa_linkuserdata.h
@@ -11,7 +11,7 @@
#include "core/fxcrt/fx_system.h"
#include "core/fxcrt/retain_ptr.h"
-class CXFA_LinkUserData : public Retainable {
+class CXFA_LinkUserData final : public Retainable {
public:
template <typename T, typename... Args>
friend RetainPtr<T> pdfium::MakeRetain(Args&&... args);
diff --git a/xfa/fxfa/cxfa_textparser_unittest.cpp b/xfa/fxfa/cxfa_textparser_unittest.cpp
index bd748cd..5198638 100644
--- a/xfa/fxfa/cxfa_textparser_unittest.cpp
+++ b/xfa/fxfa/cxfa_textparser_unittest.cpp
@@ -6,7 +6,7 @@
#include "testing/gtest/include/gtest/gtest.h"
-class CXFA_TestTextParser : public CXFA_TextParser {
+class CXFA_TestTextParser final : public CXFA_TextParser {
public:
CXFA_TestTextParser() : CXFA_TextParser() {}
diff --git a/xfa/fxfa/cxfa_textuserdata.h b/xfa/fxfa/cxfa_textuserdata.h
index c1af217..1fe4fae 100644
--- a/xfa/fxfa/cxfa_textuserdata.h
+++ b/xfa/fxfa/cxfa_textuserdata.h
@@ -12,7 +12,7 @@
class CFX_CSSComputedStyle;
class CXFA_LinkUserData;
-class CXFA_TextUserData : public Retainable {
+class CXFA_TextUserData final : public Retainable {
public:
template <typename T, typename... Args>
friend RetainPtr<T> pdfium::MakeRetain(Args&&... args);
diff --git a/xfa/fxfa/fm2js/cxfa_fmexpression.h b/xfa/fxfa/fm2js/cxfa_fmexpression.h
index bff62c1..c20d76b 100644
--- a/xfa/fxfa/fm2js/cxfa_fmexpression.h
+++ b/xfa/fxfa/fm2js/cxfa_fmexpression.h
@@ -23,7 +23,7 @@
CXFA_FMExpression();
};
-class CXFA_FMFunctionDefinition : public CXFA_FMExpression {
+class CXFA_FMFunctionDefinition final : public CXFA_FMExpression {
public:
CXFA_FMFunctionDefinition(
const WideStringView& wsName,
@@ -51,7 +51,7 @@
std::vector<std::unique_ptr<CXFA_FMExpression>> expressions_;
};
-class CXFA_FMVarExpression : public CXFA_FMExpression {
+class CXFA_FMVarExpression final : public CXFA_FMExpression {
public:
CXFA_FMVarExpression(const WideStringView& wsName,
std::unique_ptr<CXFA_FMSimpleExpression> pInit);
@@ -64,7 +64,7 @@
std::unique_ptr<CXFA_FMSimpleExpression> m_pInit;
};
-class CXFA_FMExpExpression : public CXFA_FMExpression {
+class CXFA_FMExpExpression final : public CXFA_FMExpression {
public:
explicit CXFA_FMExpExpression(
std::unique_ptr<CXFA_FMSimpleExpression> pExpression);
@@ -76,7 +76,7 @@
std::unique_ptr<CXFA_FMSimpleExpression> m_pExpression;
};
-class CXFA_FMBlockExpression : public CXFA_FMExpression {
+class CXFA_FMBlockExpression final : public CXFA_FMExpression {
public:
CXFA_FMBlockExpression(
std::vector<std::unique_ptr<CXFA_FMExpression>>&& pExpressionList);
@@ -88,7 +88,7 @@
std::vector<std::unique_ptr<CXFA_FMExpression>> m_ExpressionList;
};
-class CXFA_FMDoExpression : public CXFA_FMExpression {
+class CXFA_FMDoExpression final : public CXFA_FMExpression {
public:
explicit CXFA_FMDoExpression(std::unique_ptr<CXFA_FMExpression> pList);
~CXFA_FMDoExpression() override;
@@ -99,7 +99,7 @@
std::unique_ptr<CXFA_FMExpression> m_pList;
};
-class CXFA_FMIfExpression : public CXFA_FMExpression {
+class CXFA_FMIfExpression final : public CXFA_FMExpression {
public:
CXFA_FMIfExpression(
std::unique_ptr<CXFA_FMSimpleExpression> pExpression,
@@ -117,7 +117,7 @@
std::unique_ptr<CXFA_FMExpression> m_pElseExpression;
};
-class CXFA_FMWhileExpression : public CXFA_FMExpression {
+class CXFA_FMWhileExpression final : public CXFA_FMExpression {
public:
CXFA_FMWhileExpression(std::unique_ptr<CXFA_FMSimpleExpression> pCodition,
std::unique_ptr<CXFA_FMExpression> pExpression);
@@ -130,7 +130,7 @@
std::unique_ptr<CXFA_FMExpression> m_pExpression;
};
-class CXFA_FMBreakExpression : public CXFA_FMExpression {
+class CXFA_FMBreakExpression final : public CXFA_FMExpression {
public:
CXFA_FMBreakExpression();
~CXFA_FMBreakExpression() override;
@@ -138,7 +138,7 @@
bool ToJavaScript(CFX_WideTextBuf* js, ReturnType type) override;
};
-class CXFA_FMContinueExpression : public CXFA_FMExpression {
+class CXFA_FMContinueExpression final : public CXFA_FMExpression {
public:
CXFA_FMContinueExpression();
~CXFA_FMContinueExpression() override;
@@ -146,7 +146,7 @@
bool ToJavaScript(CFX_WideTextBuf* js, ReturnType type) override;
};
-class CXFA_FMForExpression : public CXFA_FMExpression {
+class CXFA_FMForExpression final : public CXFA_FMExpression {
public:
CXFA_FMForExpression(const WideStringView& wsVariant,
std::unique_ptr<CXFA_FMSimpleExpression> pAssignment,
@@ -167,7 +167,7 @@
std::unique_ptr<CXFA_FMExpression> m_pList;
};
-class CXFA_FMForeachExpression : public CXFA_FMExpression {
+class CXFA_FMForeachExpression final : public CXFA_FMExpression {
public:
// Takes ownership of |pAccessors|.
CXFA_FMForeachExpression(
diff --git a/xfa/fxfa/fm2js/cxfa_fmsimpleexpression.h b/xfa/fxfa/fm2js/cxfa_fmsimpleexpression.h
index 0f3df31..275d7d4 100644
--- a/xfa/fxfa/fm2js/cxfa_fmsimpleexpression.h
+++ b/xfa/fxfa/fm2js/cxfa_fmsimpleexpression.h
@@ -36,7 +36,7 @@
const XFA_FM_TOKEN m_op;
};
-class CXFA_FMNullExpression : public CXFA_FMSimpleExpression {
+class CXFA_FMNullExpression final : public CXFA_FMSimpleExpression {
public:
CXFA_FMNullExpression();
~CXFA_FMNullExpression() override {}
@@ -44,7 +44,7 @@
bool ToJavaScript(CFX_WideTextBuf* js, ReturnType type) override;
};
-class CXFA_FMNumberExpression : public CXFA_FMSimpleExpression {
+class CXFA_FMNumberExpression final : public CXFA_FMSimpleExpression {
public:
explicit CXFA_FMNumberExpression(WideStringView wsNumber);
~CXFA_FMNumberExpression() override;
@@ -55,7 +55,7 @@
WideStringView m_wsNumber;
};
-class CXFA_FMStringExpression : public CXFA_FMSimpleExpression {
+class CXFA_FMStringExpression final : public CXFA_FMSimpleExpression {
public:
explicit CXFA_FMStringExpression(WideStringView wsString);
~CXFA_FMStringExpression() override;
@@ -66,7 +66,7 @@
WideStringView m_wsString;
};
-class CXFA_FMIdentifierExpression : public CXFA_FMSimpleExpression {
+class CXFA_FMIdentifierExpression final : public CXFA_FMSimpleExpression {
public:
explicit CXFA_FMIdentifierExpression(WideStringView wsIdentifier);
~CXFA_FMIdentifierExpression() override;
@@ -77,7 +77,7 @@
WideStringView m_wsIdentifier;
};
-class CXFA_FMAssignExpression : public CXFA_FMSimpleExpression {
+class CXFA_FMAssignExpression final : public CXFA_FMSimpleExpression {
public:
CXFA_FMAssignExpression(XFA_FM_TOKEN op,
std::unique_ptr<CXFA_FMSimpleExpression> pExp1,
@@ -109,7 +109,7 @@
std::unique_ptr<CXFA_FMSimpleExpression> m_pExp2;
};
-class CXFA_FMLogicalOrExpression : public CXFA_FMBinExpression {
+class CXFA_FMLogicalOrExpression final : public CXFA_FMBinExpression {
public:
CXFA_FMLogicalOrExpression(XFA_FM_TOKEN op,
std::unique_ptr<CXFA_FMSimpleExpression> pExp1,
@@ -117,7 +117,7 @@
~CXFA_FMLogicalOrExpression() override {}
};
-class CXFA_FMLogicalAndExpression : public CXFA_FMBinExpression {
+class CXFA_FMLogicalAndExpression final : public CXFA_FMBinExpression {
public:
CXFA_FMLogicalAndExpression(XFA_FM_TOKEN op,
std::unique_ptr<CXFA_FMSimpleExpression> pExp1,
@@ -125,7 +125,7 @@
~CXFA_FMLogicalAndExpression() override {}
};
-class CXFA_FMEqualExpression : public CXFA_FMBinExpression {
+class CXFA_FMEqualExpression final : public CXFA_FMBinExpression {
public:
CXFA_FMEqualExpression(XFA_FM_TOKEN op,
std::unique_ptr<CXFA_FMSimpleExpression> pExp1,
@@ -133,7 +133,7 @@
~CXFA_FMEqualExpression() override {}
};
-class CXFA_FMNotEqualExpression : public CXFA_FMBinExpression {
+class CXFA_FMNotEqualExpression final : public CXFA_FMBinExpression {
public:
CXFA_FMNotEqualExpression(XFA_FM_TOKEN op,
std::unique_ptr<CXFA_FMSimpleExpression> pExp1,
@@ -141,7 +141,7 @@
~CXFA_FMNotEqualExpression() override {}
};
-class CXFA_FMGtExpression : public CXFA_FMBinExpression {
+class CXFA_FMGtExpression final : public CXFA_FMBinExpression {
public:
CXFA_FMGtExpression(XFA_FM_TOKEN op,
std::unique_ptr<CXFA_FMSimpleExpression> pExp1,
@@ -149,7 +149,7 @@
~CXFA_FMGtExpression() override {}
};
-class CXFA_FMGeExpression : public CXFA_FMBinExpression {
+class CXFA_FMGeExpression final : public CXFA_FMBinExpression {
public:
CXFA_FMGeExpression(XFA_FM_TOKEN op,
std::unique_ptr<CXFA_FMSimpleExpression> pExp1,
@@ -157,7 +157,7 @@
~CXFA_FMGeExpression() override {}
};
-class CXFA_FMLtExpression : public CXFA_FMBinExpression {
+class CXFA_FMLtExpression final : public CXFA_FMBinExpression {
public:
CXFA_FMLtExpression(XFA_FM_TOKEN op,
std::unique_ptr<CXFA_FMSimpleExpression> pExp1,
@@ -165,7 +165,7 @@
~CXFA_FMLtExpression() override {}
};
-class CXFA_FMLeExpression : public CXFA_FMBinExpression {
+class CXFA_FMLeExpression final : public CXFA_FMBinExpression {
public:
CXFA_FMLeExpression(XFA_FM_TOKEN op,
std::unique_ptr<CXFA_FMSimpleExpression> pExp1,
@@ -173,7 +173,7 @@
~CXFA_FMLeExpression() override {}
};
-class CXFA_FMPlusExpression : public CXFA_FMBinExpression {
+class CXFA_FMPlusExpression final : public CXFA_FMBinExpression {
public:
CXFA_FMPlusExpression(XFA_FM_TOKEN op,
std::unique_ptr<CXFA_FMSimpleExpression> pExp1,
@@ -181,7 +181,7 @@
~CXFA_FMPlusExpression() override {}
};
-class CXFA_FMMinusExpression : public CXFA_FMBinExpression {
+class CXFA_FMMinusExpression final : public CXFA_FMBinExpression {
public:
CXFA_FMMinusExpression(XFA_FM_TOKEN op,
std::unique_ptr<CXFA_FMSimpleExpression> pExp1,
@@ -189,7 +189,7 @@
~CXFA_FMMinusExpression() override {}
};
-class CXFA_FMMulExpression : public CXFA_FMBinExpression {
+class CXFA_FMMulExpression final : public CXFA_FMBinExpression {
public:
CXFA_FMMulExpression(XFA_FM_TOKEN op,
std::unique_ptr<CXFA_FMSimpleExpression> pExp1,
@@ -197,7 +197,7 @@
~CXFA_FMMulExpression() override {}
};
-class CXFA_FMDivExpression : public CXFA_FMBinExpression {
+class CXFA_FMDivExpression final : public CXFA_FMBinExpression {
public:
CXFA_FMDivExpression(XFA_FM_TOKEN op,
std::unique_ptr<CXFA_FMSimpleExpression> pExp1,
@@ -221,25 +221,25 @@
std::unique_ptr<CXFA_FMSimpleExpression> m_pExp;
};
-class CXFA_FMPosExpression : public CXFA_FMUnaryExpression {
+class CXFA_FMPosExpression final : public CXFA_FMUnaryExpression {
public:
explicit CXFA_FMPosExpression(std::unique_ptr<CXFA_FMSimpleExpression> pExp);
~CXFA_FMPosExpression() override {}
};
-class CXFA_FMNegExpression : public CXFA_FMUnaryExpression {
+class CXFA_FMNegExpression final : public CXFA_FMUnaryExpression {
public:
explicit CXFA_FMNegExpression(std::unique_ptr<CXFA_FMSimpleExpression> pExp);
~CXFA_FMNegExpression() override {}
};
-class CXFA_FMNotExpression : public CXFA_FMUnaryExpression {
+class CXFA_FMNotExpression final : public CXFA_FMUnaryExpression {
public:
explicit CXFA_FMNotExpression(std::unique_ptr<CXFA_FMSimpleExpression> pExp);
~CXFA_FMNotExpression() override {}
};
-class CXFA_FMCallExpression : public CXFA_FMSimpleExpression {
+class CXFA_FMCallExpression final : public CXFA_FMSimpleExpression {
public:
CXFA_FMCallExpression(
std::unique_ptr<CXFA_FMSimpleExpression> pExp,
@@ -257,7 +257,7 @@
std::vector<std::unique_ptr<CXFA_FMSimpleExpression>> m_Arguments;
};
-class CXFA_FMDotAccessorExpression : public CXFA_FMSimpleExpression {
+class CXFA_FMDotAccessorExpression final : public CXFA_FMSimpleExpression {
public:
CXFA_FMDotAccessorExpression(
std::unique_ptr<CXFA_FMSimpleExpression> pAccessor,
@@ -274,7 +274,7 @@
std::unique_ptr<CXFA_FMSimpleExpression> m_pExp2;
};
-class CXFA_FMIndexExpression : public CXFA_FMSimpleExpression {
+class CXFA_FMIndexExpression final : public CXFA_FMSimpleExpression {
public:
CXFA_FMIndexExpression(XFA_FM_AccessorIndex accessorIndex,
std::unique_ptr<CXFA_FMSimpleExpression> pIndexExp,
@@ -289,7 +289,7 @@
bool m_bIsStarIndex;
};
-class CXFA_FMDotDotAccessorExpression : public CXFA_FMSimpleExpression {
+class CXFA_FMDotDotAccessorExpression final : public CXFA_FMSimpleExpression {
public:
CXFA_FMDotDotAccessorExpression(
std::unique_ptr<CXFA_FMSimpleExpression> pAccessor,
@@ -306,7 +306,7 @@
std::unique_ptr<CXFA_FMSimpleExpression> m_pExp2;
};
-class CXFA_FMMethodCallExpression : public CXFA_FMSimpleExpression {
+class CXFA_FMMethodCallExpression final : public CXFA_FMSimpleExpression {
public:
CXFA_FMMethodCallExpression(
std::unique_ptr<CXFA_FMSimpleExpression> pAccessorExp1,
diff --git a/xfa/fxfa/parser/cscript_datawindow.h b/xfa/fxfa/parser/cscript_datawindow.h
index 85a0a93..ceed58e 100644
--- a/xfa/fxfa/parser/cscript_datawindow.h
+++ b/xfa/fxfa/parser/cscript_datawindow.h
@@ -11,7 +11,7 @@
class CXFA_Document;
-class CScript_DataWindow : public CXFA_Object {
+class CScript_DataWindow final : public CXFA_Object {
public:
explicit CScript_DataWindow(CXFA_Document* pDocument);
~CScript_DataWindow() override;
diff --git a/xfa/fxfa/parser/cscript_eventpseudomodel.h b/xfa/fxfa/parser/cscript_eventpseudomodel.h
index 22957f3..8104162 100644
--- a/xfa/fxfa/parser/cscript_eventpseudomodel.h
+++ b/xfa/fxfa/parser/cscript_eventpseudomodel.h
@@ -11,7 +11,7 @@
class CXFA_Document;
-class CScript_EventPseudoModel : public CXFA_Object {
+class CScript_EventPseudoModel final : public CXFA_Object {
public:
explicit CScript_EventPseudoModel(CXFA_Document* pDocument);
~CScript_EventPseudoModel() override;
diff --git a/xfa/fxfa/parser/cscript_hostpseudomodel.h b/xfa/fxfa/parser/cscript_hostpseudomodel.h
index 8fb06c5..c8af249 100644
--- a/xfa/fxfa/parser/cscript_hostpseudomodel.h
+++ b/xfa/fxfa/parser/cscript_hostpseudomodel.h
@@ -11,7 +11,7 @@
class CXFA_Document;
-class CScript_HostPseudoModel : public CXFA_Object {
+class CScript_HostPseudoModel final : public CXFA_Object {
public:
explicit CScript_HostPseudoModel(CXFA_Document* pDocument);
~CScript_HostPseudoModel() override;
diff --git a/xfa/fxfa/parser/cscript_layoutpseudomodel.h b/xfa/fxfa/parser/cscript_layoutpseudomodel.h
index 0b49505..e88a6aa 100644
--- a/xfa/fxfa/parser/cscript_layoutpseudomodel.h
+++ b/xfa/fxfa/parser/cscript_layoutpseudomodel.h
@@ -11,7 +11,7 @@
class CXFA_Document;
-class CScript_LayoutPseudoModel : public CXFA_Object {
+class CScript_LayoutPseudoModel final : public CXFA_Object {
public:
explicit CScript_LayoutPseudoModel(CXFA_Document* pDocument);
~CScript_LayoutPseudoModel() override;
diff --git a/xfa/fxfa/parser/cscript_logpseudomodel.h b/xfa/fxfa/parser/cscript_logpseudomodel.h
index e4a33f4..aa11bea 100644
--- a/xfa/fxfa/parser/cscript_logpseudomodel.h
+++ b/xfa/fxfa/parser/cscript_logpseudomodel.h
@@ -11,7 +11,7 @@
class CXFA_Document;
-class CScript_LogPseudoModel : public CXFA_Object {
+class CScript_LogPseudoModel final : public CXFA_Object {
public:
explicit CScript_LogPseudoModel(CXFA_Document* pDocument);
~CScript_LogPseudoModel() override;
diff --git a/xfa/fxfa/parser/cscript_signaturepseudomodel.h b/xfa/fxfa/parser/cscript_signaturepseudomodel.h
index c2ecb2b..532a767 100644
--- a/xfa/fxfa/parser/cscript_signaturepseudomodel.h
+++ b/xfa/fxfa/parser/cscript_signaturepseudomodel.h
@@ -11,7 +11,7 @@
class CXFA_Document;
-class CScript_SignaturePseudoModel : public CXFA_Object {
+class CScript_SignaturePseudoModel final : public CXFA_Object {
public:
explicit CScript_SignaturePseudoModel(CXFA_Document* pDocument);
~CScript_SignaturePseudoModel() override;
diff --git a/xfa/fxfa/parser/cxfa_accessiblecontent.h b/xfa/fxfa/parser/cxfa_accessiblecontent.h
index 84ad8fc..2aea151 100644
--- a/xfa/fxfa/parser/cxfa_accessiblecontent.h
+++ b/xfa/fxfa/parser/cxfa_accessiblecontent.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_AccessibleContent : public CXFA_Node {
+class CXFA_AccessibleContent final : public CXFA_Node {
public:
CXFA_AccessibleContent(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_AccessibleContent() override;
diff --git a/xfa/fxfa/parser/cxfa_acrobat.h b/xfa/fxfa/parser/cxfa_acrobat.h
index 3701d59..5711178 100644
--- a/xfa/fxfa/parser/cxfa_acrobat.h
+++ b/xfa/fxfa/parser/cxfa_acrobat.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Acrobat : public CXFA_Node {
+class CXFA_Acrobat final : public CXFA_Node {
public:
CXFA_Acrobat(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Acrobat() override;
diff --git a/xfa/fxfa/parser/cxfa_acrobat7.h b/xfa/fxfa/parser/cxfa_acrobat7.h
index 579864a..8f64044 100644
--- a/xfa/fxfa/parser/cxfa_acrobat7.h
+++ b/xfa/fxfa/parser/cxfa_acrobat7.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Acrobat7 : public CXFA_Node {
+class CXFA_Acrobat7 final : public CXFA_Node {
public:
CXFA_Acrobat7(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Acrobat7() override;
diff --git a/xfa/fxfa/parser/cxfa_adbe_jsconsole.h b/xfa/fxfa/parser/cxfa_adbe_jsconsole.h
index 9fab6a1..e894479 100644
--- a/xfa/fxfa/parser/cxfa_adbe_jsconsole.h
+++ b/xfa/fxfa/parser/cxfa_adbe_jsconsole.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_aDBE_JSConsole : public CXFA_Node {
+class CXFA_aDBE_JSConsole final : public CXFA_Node {
public:
CXFA_aDBE_JSConsole(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_aDBE_JSConsole() override;
diff --git a/xfa/fxfa/parser/cxfa_adbe_jsdebugger.h b/xfa/fxfa/parser/cxfa_adbe_jsdebugger.h
index ed821d4..f7da535 100644
--- a/xfa/fxfa/parser/cxfa_adbe_jsdebugger.h
+++ b/xfa/fxfa/parser/cxfa_adbe_jsdebugger.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_aDBE_JSDebugger : public CXFA_Node {
+class CXFA_aDBE_JSDebugger final : public CXFA_Node {
public:
CXFA_aDBE_JSDebugger(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_aDBE_JSDebugger() override;
diff --git a/xfa/fxfa/parser/cxfa_addsilentprint.h b/xfa/fxfa/parser/cxfa_addsilentprint.h
index a251969..abfff47 100644
--- a/xfa/fxfa/parser/cxfa_addsilentprint.h
+++ b/xfa/fxfa/parser/cxfa_addsilentprint.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_AddSilentPrint : public CXFA_Node {
+class CXFA_AddSilentPrint final : public CXFA_Node {
public:
CXFA_AddSilentPrint(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_AddSilentPrint() override;
diff --git a/xfa/fxfa/parser/cxfa_addviewerpreferences.h b/xfa/fxfa/parser/cxfa_addviewerpreferences.h
index cf10868..62fd6e3 100644
--- a/xfa/fxfa/parser/cxfa_addviewerpreferences.h
+++ b/xfa/fxfa/parser/cxfa_addviewerpreferences.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_AddViewerPreferences : public CXFA_Node {
+class CXFA_AddViewerPreferences final : public CXFA_Node {
public:
CXFA_AddViewerPreferences(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_AddViewerPreferences() override;
diff --git a/xfa/fxfa/parser/cxfa_adjustdata.h b/xfa/fxfa/parser/cxfa_adjustdata.h
index 3c004c2..463f2e6 100644
--- a/xfa/fxfa/parser/cxfa_adjustdata.h
+++ b/xfa/fxfa/parser/cxfa_adjustdata.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_AdjustData : public CXFA_Node {
+class CXFA_AdjustData final : public CXFA_Node {
public:
CXFA_AdjustData(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_AdjustData() override;
diff --git a/xfa/fxfa/parser/cxfa_adobeextensionlevel.h b/xfa/fxfa/parser/cxfa_adobeextensionlevel.h
index 91a830f..5e0a507 100644
--- a/xfa/fxfa/parser/cxfa_adobeextensionlevel.h
+++ b/xfa/fxfa/parser/cxfa_adobeextensionlevel.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_AdobeExtensionLevel : public CXFA_Node {
+class CXFA_AdobeExtensionLevel final : public CXFA_Node {
public:
CXFA_AdobeExtensionLevel(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_AdobeExtensionLevel() override;
diff --git a/xfa/fxfa/parser/cxfa_agent.h b/xfa/fxfa/parser/cxfa_agent.h
index 65d826d..a84d2ac 100644
--- a/xfa/fxfa/parser/cxfa_agent.h
+++ b/xfa/fxfa/parser/cxfa_agent.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Agent : public CXFA_Node {
+class CXFA_Agent final : public CXFA_Node {
public:
CXFA_Agent(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Agent() override;
diff --git a/xfa/fxfa/parser/cxfa_alwaysembed.h b/xfa/fxfa/parser/cxfa_alwaysembed.h
index 1780976..754fd89 100644
--- a/xfa/fxfa/parser/cxfa_alwaysembed.h
+++ b/xfa/fxfa/parser/cxfa_alwaysembed.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_AlwaysEmbed : public CXFA_Node {
+class CXFA_AlwaysEmbed final : public CXFA_Node {
public:
CXFA_AlwaysEmbed(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_AlwaysEmbed() override;
diff --git a/xfa/fxfa/parser/cxfa_amd.h b/xfa/fxfa/parser/cxfa_amd.h
index 951c6ca..6d6562c 100644
--- a/xfa/fxfa/parser/cxfa_amd.h
+++ b/xfa/fxfa/parser/cxfa_amd.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Amd : public CXFA_Node {
+class CXFA_Amd final : public CXFA_Node {
public:
CXFA_Amd(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Amd() override;
diff --git a/xfa/fxfa/parser/cxfa_appearancefilter.h b/xfa/fxfa/parser/cxfa_appearancefilter.h
index 341232e..80b0ba4 100644
--- a/xfa/fxfa/parser/cxfa_appearancefilter.h
+++ b/xfa/fxfa/parser/cxfa_appearancefilter.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_AppearanceFilter : public CXFA_Node {
+class CXFA_AppearanceFilter final : public CXFA_Node {
public:
CXFA_AppearanceFilter(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_AppearanceFilter() override;
diff --git a/xfa/fxfa/parser/cxfa_arc.h b/xfa/fxfa/parser/cxfa_arc.h
index fd903aa..70d1b00 100644
--- a/xfa/fxfa/parser/cxfa_arc.h
+++ b/xfa/fxfa/parser/cxfa_arc.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_box.h"
-class CXFA_Arc : public CXFA_Box {
+class CXFA_Arc final : public CXFA_Box {
public:
CXFA_Arc(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Arc() override;
diff --git a/xfa/fxfa/parser/cxfa_area.h b/xfa/fxfa/parser/cxfa_area.h
index 6568e73..cf1ff87 100644
--- a/xfa/fxfa/parser/cxfa_area.h
+++ b/xfa/fxfa/parser/cxfa_area.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Area : public CXFA_Node {
+class CXFA_Area final : public CXFA_Node {
public:
CXFA_Area(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Area() override;
diff --git a/xfa/fxfa/parser/cxfa_arraynodelist.h b/xfa/fxfa/parser/cxfa_arraynodelist.h
index dc798bc..d723df3 100644
--- a/xfa/fxfa/parser/cxfa_arraynodelist.h
+++ b/xfa/fxfa/parser/cxfa_arraynodelist.h
@@ -14,7 +14,7 @@
class CXFA_Document;
class CXFA_Node;
-class CXFA_ArrayNodeList : public CXFA_TreeList {
+class CXFA_ArrayNodeList final : public CXFA_TreeList {
public:
explicit CXFA_ArrayNodeList(CXFA_Document* pDocument);
~CXFA_ArrayNodeList() override;
diff --git a/xfa/fxfa/parser/cxfa_assist.h b/xfa/fxfa/parser/cxfa_assist.h
index d0e9020..77643cf 100644
--- a/xfa/fxfa/parser/cxfa_assist.h
+++ b/xfa/fxfa/parser/cxfa_assist.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Assist : public CXFA_Node {
+class CXFA_Assist final : public CXFA_Node {
public:
CXFA_Assist(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Assist() override;
diff --git a/xfa/fxfa/parser/cxfa_attachnodelist.h b/xfa/fxfa/parser/cxfa_attachnodelist.h
index f4cebe4..a8248e6 100644
--- a/xfa/fxfa/parser/cxfa_attachnodelist.h
+++ b/xfa/fxfa/parser/cxfa_attachnodelist.h
@@ -12,7 +12,7 @@
class CXFA_Document;
class CXFA_Node;
-class CXFA_AttachNodeList : public CXFA_TreeList {
+class CXFA_AttachNodeList final : public CXFA_TreeList {
public:
CXFA_AttachNodeList(CXFA_Document* pDocument, CXFA_Node* pAttachNode);
~CXFA_AttachNodeList() override;
diff --git a/xfa/fxfa/parser/cxfa_attributes.h b/xfa/fxfa/parser/cxfa_attributes.h
index fd73da8..099ecea 100644
--- a/xfa/fxfa/parser/cxfa_attributes.h
+++ b/xfa/fxfa/parser/cxfa_attributes.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Attributes : public CXFA_Node {
+class CXFA_Attributes final : public CXFA_Node {
public:
CXFA_Attributes(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Attributes() override;
diff --git a/xfa/fxfa/parser/cxfa_autosave.h b/xfa/fxfa/parser/cxfa_autosave.h
index b58ccf1..5324351 100644
--- a/xfa/fxfa/parser/cxfa_autosave.h
+++ b/xfa/fxfa/parser/cxfa_autosave.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_AutoSave : public CXFA_Node {
+class CXFA_AutoSave final : public CXFA_Node {
public:
CXFA_AutoSave(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_AutoSave() override;
diff --git a/xfa/fxfa/parser/cxfa_barcode.h b/xfa/fxfa/parser/cxfa_barcode.h
index 463e97f..bf503e5 100644
--- a/xfa/fxfa/parser/cxfa_barcode.h
+++ b/xfa/fxfa/parser/cxfa_barcode.h
@@ -11,7 +11,7 @@
#include "third_party/base/optional.h"
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Barcode : public CXFA_Node {
+class CXFA_Barcode final : public CXFA_Node {
public:
CXFA_Barcode(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Barcode() override;
diff --git a/xfa/fxfa/parser/cxfa_base.h b/xfa/fxfa/parser/cxfa_base.h
index 3974343..3f1c9ba 100644
--- a/xfa/fxfa/parser/cxfa_base.h
+++ b/xfa/fxfa/parser/cxfa_base.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Base : public CXFA_Node {
+class CXFA_Base final : public CXFA_Node {
public:
CXFA_Base(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Base() override;
diff --git a/xfa/fxfa/parser/cxfa_batchoutput.h b/xfa/fxfa/parser/cxfa_batchoutput.h
index 9faa6cf..8d1de09 100644
--- a/xfa/fxfa/parser/cxfa_batchoutput.h
+++ b/xfa/fxfa/parser/cxfa_batchoutput.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_BatchOutput : public CXFA_Node {
+class CXFA_BatchOutput final : public CXFA_Node {
public:
CXFA_BatchOutput(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_BatchOutput() override;
diff --git a/xfa/fxfa/parser/cxfa_behavioroverride.h b/xfa/fxfa/parser/cxfa_behavioroverride.h
index cb082112..d7dce1b 100644
--- a/xfa/fxfa/parser/cxfa_behavioroverride.h
+++ b/xfa/fxfa/parser/cxfa_behavioroverride.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_BehaviorOverride : public CXFA_Node {
+class CXFA_BehaviorOverride final : public CXFA_Node {
public:
CXFA_BehaviorOverride(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_BehaviorOverride() override;
diff --git a/xfa/fxfa/parser/cxfa_bind.h b/xfa/fxfa/parser/cxfa_bind.h
index 1924cb6..f6331d6 100644
--- a/xfa/fxfa/parser/cxfa_bind.h
+++ b/xfa/fxfa/parser/cxfa_bind.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Bind : public CXFA_Node {
+class CXFA_Bind final : public CXFA_Node {
public:
CXFA_Bind(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Bind() override;
diff --git a/xfa/fxfa/parser/cxfa_binditems.h b/xfa/fxfa/parser/cxfa_binditems.h
index f1a490d..34a4b67 100644
--- a/xfa/fxfa/parser/cxfa_binditems.h
+++ b/xfa/fxfa/parser/cxfa_binditems.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_BindItems : public CXFA_Node {
+class CXFA_BindItems final : public CXFA_Node {
public:
CXFA_BindItems(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_BindItems() override;
diff --git a/xfa/fxfa/parser/cxfa_bookend.h b/xfa/fxfa/parser/cxfa_bookend.h
index 82eb13c..1c68763 100644
--- a/xfa/fxfa/parser/cxfa_bookend.h
+++ b/xfa/fxfa/parser/cxfa_bookend.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Bookend : public CXFA_Node {
+class CXFA_Bookend final : public CXFA_Node {
public:
CXFA_Bookend(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Bookend() override;
diff --git a/xfa/fxfa/parser/cxfa_boolean.h b/xfa/fxfa/parser/cxfa_boolean.h
index 4121e36..60b8e5e 100644
--- a/xfa/fxfa/parser/cxfa_boolean.h
+++ b/xfa/fxfa/parser/cxfa_boolean.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Boolean : public CXFA_Node {
+class CXFA_Boolean final : public CXFA_Node {
public:
CXFA_Boolean(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Boolean() override;
diff --git a/xfa/fxfa/parser/cxfa_border.h b/xfa/fxfa/parser/cxfa_border.h
index 24f3bb9..6071a77 100644
--- a/xfa/fxfa/parser/cxfa_border.h
+++ b/xfa/fxfa/parser/cxfa_border.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_rectangle.h"
-class CXFA_Border : public CXFA_Rectangle {
+class CXFA_Border final : public CXFA_Rectangle {
public:
CXFA_Border(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Border() override;
diff --git a/xfa/fxfa/parser/cxfa_break.h b/xfa/fxfa/parser/cxfa_break.h
index c0d937c..4bf7dde 100644
--- a/xfa/fxfa/parser/cxfa_break.h
+++ b/xfa/fxfa/parser/cxfa_break.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Break : public CXFA_Node {
+class CXFA_Break final : public CXFA_Node {
public:
CXFA_Break(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Break() override;
diff --git a/xfa/fxfa/parser/cxfa_breakafter.h b/xfa/fxfa/parser/cxfa_breakafter.h
index 952b0c9..c607ef5 100644
--- a/xfa/fxfa/parser/cxfa_breakafter.h
+++ b/xfa/fxfa/parser/cxfa_breakafter.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_BreakAfter : public CXFA_Node {
+class CXFA_BreakAfter final : public CXFA_Node {
public:
CXFA_BreakAfter(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_BreakAfter() override;
diff --git a/xfa/fxfa/parser/cxfa_breakbefore.h b/xfa/fxfa/parser/cxfa_breakbefore.h
index 358e477..1b6dc63 100644
--- a/xfa/fxfa/parser/cxfa_breakbefore.h
+++ b/xfa/fxfa/parser/cxfa_breakbefore.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_BreakBefore : public CXFA_Node {
+class CXFA_BreakBefore final : public CXFA_Node {
public:
CXFA_BreakBefore(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_BreakBefore() override;
diff --git a/xfa/fxfa/parser/cxfa_button.h b/xfa/fxfa/parser/cxfa_button.h
index cea685f..d9d67a9 100644
--- a/xfa/fxfa/parser/cxfa_button.h
+++ b/xfa/fxfa/parser/cxfa_button.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Button : public CXFA_Node {
+class CXFA_Button final : public CXFA_Node {
public:
CXFA_Button(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Button() override;
diff --git a/xfa/fxfa/parser/cxfa_cache.h b/xfa/fxfa/parser/cxfa_cache.h
index e3907c6..430163a 100644
--- a/xfa/fxfa/parser/cxfa_cache.h
+++ b/xfa/fxfa/parser/cxfa_cache.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Cache : public CXFA_Node {
+class CXFA_Cache final : public CXFA_Node {
public:
CXFA_Cache(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Cache() override;
diff --git a/xfa/fxfa/parser/cxfa_calculate.h b/xfa/fxfa/parser/cxfa_calculate.h
index a5be908..46c8770 100644
--- a/xfa/fxfa/parser/cxfa_calculate.h
+++ b/xfa/fxfa/parser/cxfa_calculate.h
@@ -11,7 +11,7 @@
class CXFA_Script;
-class CXFA_Calculate : public CXFA_Node {
+class CXFA_Calculate final : public CXFA_Node {
public:
CXFA_Calculate(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Calculate() override;
diff --git a/xfa/fxfa/parser/cxfa_calendarsymbols.h b/xfa/fxfa/parser/cxfa_calendarsymbols.h
index 1b1f007..82ecde4 100644
--- a/xfa/fxfa/parser/cxfa_calendarsymbols.h
+++ b/xfa/fxfa/parser/cxfa_calendarsymbols.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_CalendarSymbols : public CXFA_Node {
+class CXFA_CalendarSymbols final : public CXFA_Node {
public:
CXFA_CalendarSymbols(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_CalendarSymbols() override;
diff --git a/xfa/fxfa/parser/cxfa_caption.h b/xfa/fxfa/parser/cxfa_caption.h
index c790787..8f3dfdc 100644
--- a/xfa/fxfa/parser/cxfa_caption.h
+++ b/xfa/fxfa/parser/cxfa_caption.h
@@ -13,7 +13,7 @@
class CXFA_Margin;
class CXFA_Value;
-class CXFA_Caption : public CXFA_Node {
+class CXFA_Caption final : public CXFA_Node {
public:
static constexpr XFA_AttributeEnum kDefaultPlacementType =
XFA_AttributeEnum::Left;
diff --git a/xfa/fxfa/parser/cxfa_certificate.h b/xfa/fxfa/parser/cxfa_certificate.h
index 48106da..4923d57 100644
--- a/xfa/fxfa/parser/cxfa_certificate.h
+++ b/xfa/fxfa/parser/cxfa_certificate.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Certificate : public CXFA_Node {
+class CXFA_Certificate final : public CXFA_Node {
public:
CXFA_Certificate(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Certificate() override;
diff --git a/xfa/fxfa/parser/cxfa_certificates.h b/xfa/fxfa/parser/cxfa_certificates.h
index a1bed73..6817d03 100644
--- a/xfa/fxfa/parser/cxfa_certificates.h
+++ b/xfa/fxfa/parser/cxfa_certificates.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Certificates : public CXFA_Node {
+class CXFA_Certificates final : public CXFA_Node {
public:
CXFA_Certificates(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Certificates() override;
diff --git a/xfa/fxfa/parser/cxfa_change.h b/xfa/fxfa/parser/cxfa_change.h
index f39b92e..2fa4ba9 100644
--- a/xfa/fxfa/parser/cxfa_change.h
+++ b/xfa/fxfa/parser/cxfa_change.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Change : public CXFA_Node {
+class CXFA_Change final : public CXFA_Node {
public:
CXFA_Change(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Change() override;
diff --git a/xfa/fxfa/parser/cxfa_checkbutton.h b/xfa/fxfa/parser/cxfa_checkbutton.h
index e239a46..7d78919 100644
--- a/xfa/fxfa/parser/cxfa_checkbutton.h
+++ b/xfa/fxfa/parser/cxfa_checkbutton.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_CheckButton : public CXFA_Node {
+class CXFA_CheckButton final : public CXFA_Node {
public:
CXFA_CheckButton(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_CheckButton() override;
diff --git a/xfa/fxfa/parser/cxfa_choicelist.h b/xfa/fxfa/parser/cxfa_choicelist.h
index d621d8a..cff1463 100644
--- a/xfa/fxfa/parser/cxfa_choicelist.h
+++ b/xfa/fxfa/parser/cxfa_choicelist.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_ChoiceList : public CXFA_Node {
+class CXFA_ChoiceList final : public CXFA_Node {
public:
CXFA_ChoiceList(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_ChoiceList() override;
diff --git a/xfa/fxfa/parser/cxfa_color.h b/xfa/fxfa/parser/cxfa_color.h
index b15c9d8..d13a553 100644
--- a/xfa/fxfa/parser/cxfa_color.h
+++ b/xfa/fxfa/parser/cxfa_color.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Color : public CXFA_Node {
+class CXFA_Color final : public CXFA_Node {
public:
static constexpr FX_ARGB kBlackColor = 0xFF000000;
diff --git a/xfa/fxfa/parser/cxfa_comb.h b/xfa/fxfa/parser/cxfa_comb.h
index 1f2b538..4193a9c 100644
--- a/xfa/fxfa/parser/cxfa_comb.h
+++ b/xfa/fxfa/parser/cxfa_comb.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Comb : public CXFA_Node {
+class CXFA_Comb final : public CXFA_Node {
public:
CXFA_Comb(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Comb() override;
diff --git a/xfa/fxfa/parser/cxfa_command.h b/xfa/fxfa/parser/cxfa_command.h
index 88b74f3..46f9854 100644
--- a/xfa/fxfa/parser/cxfa_command.h
+++ b/xfa/fxfa/parser/cxfa_command.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Command : public CXFA_Node {
+class CXFA_Command final : public CXFA_Node {
public:
CXFA_Command(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Command() override;
diff --git a/xfa/fxfa/parser/cxfa_common.h b/xfa/fxfa/parser/cxfa_common.h
index d0ce0ea..7cab852 100644
--- a/xfa/fxfa/parser/cxfa_common.h
+++ b/xfa/fxfa/parser/cxfa_common.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Common : public CXFA_Node {
+class CXFA_Common final : public CXFA_Node {
public:
CXFA_Common(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Common() override;
diff --git a/xfa/fxfa/parser/cxfa_compress.h b/xfa/fxfa/parser/cxfa_compress.h
index bec1883..2b56390 100644
--- a/xfa/fxfa/parser/cxfa_compress.h
+++ b/xfa/fxfa/parser/cxfa_compress.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Compress : public CXFA_Node {
+class CXFA_Compress final : public CXFA_Node {
public:
CXFA_Compress(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Compress() override;
diff --git a/xfa/fxfa/parser/cxfa_compression.h b/xfa/fxfa/parser/cxfa_compression.h
index f0e26cb..7a571ae 100644
--- a/xfa/fxfa/parser/cxfa_compression.h
+++ b/xfa/fxfa/parser/cxfa_compression.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Compression : public CXFA_Node {
+class CXFA_Compression final : public CXFA_Node {
public:
CXFA_Compression(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Compression() override;
diff --git a/xfa/fxfa/parser/cxfa_compresslogicalstructure.h b/xfa/fxfa/parser/cxfa_compresslogicalstructure.h
index a8b5068..843eb60 100644
--- a/xfa/fxfa/parser/cxfa_compresslogicalstructure.h
+++ b/xfa/fxfa/parser/cxfa_compresslogicalstructure.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_CompressLogicalStructure : public CXFA_Node {
+class CXFA_CompressLogicalStructure final : public CXFA_Node {
public:
CXFA_CompressLogicalStructure(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_CompressLogicalStructure() override;
diff --git a/xfa/fxfa/parser/cxfa_compressobjectstream.h b/xfa/fxfa/parser/cxfa_compressobjectstream.h
index 94e02ce..bce7c65 100644
--- a/xfa/fxfa/parser/cxfa_compressobjectstream.h
+++ b/xfa/fxfa/parser/cxfa_compressobjectstream.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_CompressObjectStream : public CXFA_Node {
+class CXFA_CompressObjectStream final : public CXFA_Node {
public:
CXFA_CompressObjectStream(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_CompressObjectStream() override;
diff --git a/xfa/fxfa/parser/cxfa_config.h b/xfa/fxfa/parser/cxfa_config.h
index 2ddb692..644c475 100644
--- a/xfa/fxfa/parser/cxfa_config.h
+++ b/xfa/fxfa/parser/cxfa_config.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Config : public CXFA_Node {
+class CXFA_Config final : public CXFA_Node {
public:
CXFA_Config(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Config() override;
diff --git a/xfa/fxfa/parser/cxfa_conformance.h b/xfa/fxfa/parser/cxfa_conformance.h
index 11a72e7..829bb1c 100644
--- a/xfa/fxfa/parser/cxfa_conformance.h
+++ b/xfa/fxfa/parser/cxfa_conformance.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Conformance : public CXFA_Node {
+class CXFA_Conformance final : public CXFA_Node {
public:
CXFA_Conformance(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Conformance() override;
diff --git a/xfa/fxfa/parser/cxfa_connect.h b/xfa/fxfa/parser/cxfa_connect.h
index ac91577..3d616ce 100644
--- a/xfa/fxfa/parser/cxfa_connect.h
+++ b/xfa/fxfa/parser/cxfa_connect.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Connect : public CXFA_Node {
+class CXFA_Connect final : public CXFA_Node {
public:
CXFA_Connect(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Connect() override;
diff --git a/xfa/fxfa/parser/cxfa_connectionset.h b/xfa/fxfa/parser/cxfa_connectionset.h
index 59316f7..74238e0 100644
--- a/xfa/fxfa/parser/cxfa_connectionset.h
+++ b/xfa/fxfa/parser/cxfa_connectionset.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_ConnectionSet : public CXFA_Node {
+class CXFA_ConnectionSet final : public CXFA_Node {
public:
CXFA_ConnectionSet(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_ConnectionSet() override;
diff --git a/xfa/fxfa/parser/cxfa_connectstring.h b/xfa/fxfa/parser/cxfa_connectstring.h
index 6c3a0b0..88dd7bc 100644
--- a/xfa/fxfa/parser/cxfa_connectstring.h
+++ b/xfa/fxfa/parser/cxfa_connectstring.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_ConnectString : public CXFA_Node {
+class CXFA_ConnectString final : public CXFA_Node {
public:
CXFA_ConnectString(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_ConnectString() override;
diff --git a/xfa/fxfa/parser/cxfa_contentarea.h b/xfa/fxfa/parser/cxfa_contentarea.h
index 3c5ff60..43f6868 100644
--- a/xfa/fxfa/parser/cxfa_contentarea.h
+++ b/xfa/fxfa/parser/cxfa_contentarea.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_ContentArea : public CXFA_Node {
+class CXFA_ContentArea final : public CXFA_Node {
public:
CXFA_ContentArea(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_ContentArea() override;
diff --git a/xfa/fxfa/parser/cxfa_contentcopy.h b/xfa/fxfa/parser/cxfa_contentcopy.h
index d394c74..5b32beb 100644
--- a/xfa/fxfa/parser/cxfa_contentcopy.h
+++ b/xfa/fxfa/parser/cxfa_contentcopy.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_ContentCopy : public CXFA_Node {
+class CXFA_ContentCopy final : public CXFA_Node {
public:
CXFA_ContentCopy(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_ContentCopy() override;
diff --git a/xfa/fxfa/parser/cxfa_copies.h b/xfa/fxfa/parser/cxfa_copies.h
index 1ecd616..46497f9 100644
--- a/xfa/fxfa/parser/cxfa_copies.h
+++ b/xfa/fxfa/parser/cxfa_copies.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Copies : public CXFA_Node {
+class CXFA_Copies final : public CXFA_Node {
public:
CXFA_Copies(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Copies() override;
diff --git a/xfa/fxfa/parser/cxfa_corner.h b/xfa/fxfa/parser/cxfa_corner.h
index 1042729..7dcaf32 100644
--- a/xfa/fxfa/parser/cxfa_corner.h
+++ b/xfa/fxfa/parser/cxfa_corner.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_stroke.h"
-class CXFA_Corner : public CXFA_Stroke {
+class CXFA_Corner final : public CXFA_Stroke {
public:
CXFA_Corner(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Corner() override;
diff --git a/xfa/fxfa/parser/cxfa_creator.h b/xfa/fxfa/parser/cxfa_creator.h
index c046883..437fab5 100644
--- a/xfa/fxfa/parser/cxfa_creator.h
+++ b/xfa/fxfa/parser/cxfa_creator.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Creator : public CXFA_Node {
+class CXFA_Creator final : public CXFA_Node {
public:
CXFA_Creator(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Creator() override;
diff --git a/xfa/fxfa/parser/cxfa_currencysymbol.h b/xfa/fxfa/parser/cxfa_currencysymbol.h
index 271f7fc..3d7b5bd 100644
--- a/xfa/fxfa/parser/cxfa_currencysymbol.h
+++ b/xfa/fxfa/parser/cxfa_currencysymbol.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_CurrencySymbol : public CXFA_Node {
+class CXFA_CurrencySymbol final : public CXFA_Node {
public:
CXFA_CurrencySymbol(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_CurrencySymbol() override;
diff --git a/xfa/fxfa/parser/cxfa_currencysymbols.h b/xfa/fxfa/parser/cxfa_currencysymbols.h
index acd3f2a..2ce27cf 100644
--- a/xfa/fxfa/parser/cxfa_currencysymbols.h
+++ b/xfa/fxfa/parser/cxfa_currencysymbols.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_CurrencySymbols : public CXFA_Node {
+class CXFA_CurrencySymbols final : public CXFA_Node {
public:
CXFA_CurrencySymbols(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_CurrencySymbols() override;
diff --git a/xfa/fxfa/parser/cxfa_currentpage.h b/xfa/fxfa/parser/cxfa_currentpage.h
index d526b4a..5bba6a0 100644
--- a/xfa/fxfa/parser/cxfa_currentpage.h
+++ b/xfa/fxfa/parser/cxfa_currentpage.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_CurrentPage : public CXFA_Node {
+class CXFA_CurrentPage final : public CXFA_Node {
public:
CXFA_CurrentPage(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_CurrentPage() override;
diff --git a/xfa/fxfa/parser/cxfa_data.h b/xfa/fxfa/parser/cxfa_data.h
index cb30f61..44cf40d 100644
--- a/xfa/fxfa/parser/cxfa_data.h
+++ b/xfa/fxfa/parser/cxfa_data.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Data : public CXFA_Node {
+class CXFA_Data final : public CXFA_Node {
public:
CXFA_Data(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Data() override;
diff --git a/xfa/fxfa/parser/cxfa_datagroup.h b/xfa/fxfa/parser/cxfa_datagroup.h
index 649b096..5a61704 100644
--- a/xfa/fxfa/parser/cxfa_datagroup.h
+++ b/xfa/fxfa/parser/cxfa_datagroup.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_DataGroup : public CXFA_Node {
+class CXFA_DataGroup final : public CXFA_Node {
public:
CXFA_DataGroup(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_DataGroup() override;
diff --git a/xfa/fxfa/parser/cxfa_datamodel.h b/xfa/fxfa/parser/cxfa_datamodel.h
index f414ea3..8a1bd42 100644
--- a/xfa/fxfa/parser/cxfa_datamodel.h
+++ b/xfa/fxfa/parser/cxfa_datamodel.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_DataModel : public CXFA_Node {
+class CXFA_DataModel final : public CXFA_Node {
public:
CXFA_DataModel(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_DataModel() override;
diff --git a/xfa/fxfa/parser/cxfa_datavalue.h b/xfa/fxfa/parser/cxfa_datavalue.h
index 8170aba..ee2c621 100644
--- a/xfa/fxfa/parser/cxfa_datavalue.h
+++ b/xfa/fxfa/parser/cxfa_datavalue.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_DataValue : public CXFA_Node {
+class CXFA_DataValue final : public CXFA_Node {
public:
CXFA_DataValue(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_DataValue() override;
diff --git a/xfa/fxfa/parser/cxfa_date.h b/xfa/fxfa/parser/cxfa_date.h
index e5ebb25..3fb7ba7 100644
--- a/xfa/fxfa/parser/cxfa_date.h
+++ b/xfa/fxfa/parser/cxfa_date.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Date : public CXFA_Node {
+class CXFA_Date final : public CXFA_Node {
public:
CXFA_Date(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Date() override;
diff --git a/xfa/fxfa/parser/cxfa_datepattern.h b/xfa/fxfa/parser/cxfa_datepattern.h
index b661478..e67a61f 100644
--- a/xfa/fxfa/parser/cxfa_datepattern.h
+++ b/xfa/fxfa/parser/cxfa_datepattern.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_DatePattern : public CXFA_Node {
+class CXFA_DatePattern final : public CXFA_Node {
public:
CXFA_DatePattern(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_DatePattern() override;
diff --git a/xfa/fxfa/parser/cxfa_datepatterns.h b/xfa/fxfa/parser/cxfa_datepatterns.h
index dfc55d0..6c2dca4 100644
--- a/xfa/fxfa/parser/cxfa_datepatterns.h
+++ b/xfa/fxfa/parser/cxfa_datepatterns.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_DatePatterns : public CXFA_Node {
+class CXFA_DatePatterns final : public CXFA_Node {
public:
CXFA_DatePatterns(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_DatePatterns() override;
diff --git a/xfa/fxfa/parser/cxfa_datetime.h b/xfa/fxfa/parser/cxfa_datetime.h
index f5cd6f6..ca71daf 100644
--- a/xfa/fxfa/parser/cxfa_datetime.h
+++ b/xfa/fxfa/parser/cxfa_datetime.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_DateTime : public CXFA_Node {
+class CXFA_DateTime final : public CXFA_Node {
public:
CXFA_DateTime(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_DateTime() override;
diff --git a/xfa/fxfa/parser/cxfa_datetimeedit.h b/xfa/fxfa/parser/cxfa_datetimeedit.h
index 662a1ef..de76e2a 100644
--- a/xfa/fxfa/parser/cxfa_datetimeedit.h
+++ b/xfa/fxfa/parser/cxfa_datetimeedit.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_DateTimeEdit : public CXFA_Node {
+class CXFA_DateTimeEdit final : public CXFA_Node {
public:
CXFA_DateTimeEdit(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_DateTimeEdit() override;
diff --git a/xfa/fxfa/parser/cxfa_datetimesymbols.h b/xfa/fxfa/parser/cxfa_datetimesymbols.h
index e2296d6..cfbe069 100644
--- a/xfa/fxfa/parser/cxfa_datetimesymbols.h
+++ b/xfa/fxfa/parser/cxfa_datetimesymbols.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_DateTimeSymbols : public CXFA_Node {
+class CXFA_DateTimeSymbols final : public CXFA_Node {
public:
CXFA_DateTimeSymbols(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_DateTimeSymbols() override;
diff --git a/xfa/fxfa/parser/cxfa_day.h b/xfa/fxfa/parser/cxfa_day.h
index 8d04bf4..6fb2f45 100644
--- a/xfa/fxfa/parser/cxfa_day.h
+++ b/xfa/fxfa/parser/cxfa_day.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Day : public CXFA_Node {
+class CXFA_Day final : public CXFA_Node {
public:
CXFA_Day(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Day() override;
diff --git a/xfa/fxfa/parser/cxfa_daynames.h b/xfa/fxfa/parser/cxfa_daynames.h
index d566e50..229d69c 100644
--- a/xfa/fxfa/parser/cxfa_daynames.h
+++ b/xfa/fxfa/parser/cxfa_daynames.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_DayNames : public CXFA_Node {
+class CXFA_DayNames final : public CXFA_Node {
public:
CXFA_DayNames(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_DayNames() override;
diff --git a/xfa/fxfa/parser/cxfa_debug.h b/xfa/fxfa/parser/cxfa_debug.h
index e2e4ed1..1a254f0 100644
--- a/xfa/fxfa/parser/cxfa_debug.h
+++ b/xfa/fxfa/parser/cxfa_debug.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Debug : public CXFA_Node {
+class CXFA_Debug final : public CXFA_Node {
public:
CXFA_Debug(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Debug() override;
diff --git a/xfa/fxfa/parser/cxfa_decimal.h b/xfa/fxfa/parser/cxfa_decimal.h
index da58896..668f61a 100644
--- a/xfa/fxfa/parser/cxfa_decimal.h
+++ b/xfa/fxfa/parser/cxfa_decimal.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Decimal : public CXFA_Node {
+class CXFA_Decimal final : public CXFA_Node {
public:
CXFA_Decimal(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Decimal() override;
diff --git a/xfa/fxfa/parser/cxfa_defaulttypeface.h b/xfa/fxfa/parser/cxfa_defaulttypeface.h
index 511ed8f..a241bf8 100644
--- a/xfa/fxfa/parser/cxfa_defaulttypeface.h
+++ b/xfa/fxfa/parser/cxfa_defaulttypeface.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_DefaultTypeface : public CXFA_Node {
+class CXFA_DefaultTypeface final : public CXFA_Node {
public:
CXFA_DefaultTypeface(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_DefaultTypeface() override;
diff --git a/xfa/fxfa/parser/cxfa_defaultui.h b/xfa/fxfa/parser/cxfa_defaultui.h
index 5c20370..d09da0b 100644
--- a/xfa/fxfa/parser/cxfa_defaultui.h
+++ b/xfa/fxfa/parser/cxfa_defaultui.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_DefaultUi : public CXFA_Node {
+class CXFA_DefaultUi final : public CXFA_Node {
public:
CXFA_DefaultUi(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_DefaultUi() override;
diff --git a/xfa/fxfa/parser/cxfa_delete.h b/xfa/fxfa/parser/cxfa_delete.h
index 7c6058a..0ea6ab3 100644
--- a/xfa/fxfa/parser/cxfa_delete.h
+++ b/xfa/fxfa/parser/cxfa_delete.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Delete : public CXFA_Node {
+class CXFA_Delete final : public CXFA_Node {
public:
CXFA_Delete(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Delete() override;
diff --git a/xfa/fxfa/parser/cxfa_delta.h b/xfa/fxfa/parser/cxfa_delta.h
index 693287b..40bfa56 100644
--- a/xfa/fxfa/parser/cxfa_delta.h
+++ b/xfa/fxfa/parser/cxfa_delta.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Delta : public CXFA_Node {
+class CXFA_Delta final : public CXFA_Node {
public:
CXFA_Delta(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Delta() override;
diff --git a/xfa/fxfa/parser/cxfa_desc.h b/xfa/fxfa/parser/cxfa_desc.h
index 1811c63..11baa90 100644
--- a/xfa/fxfa/parser/cxfa_desc.h
+++ b/xfa/fxfa/parser/cxfa_desc.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Desc : public CXFA_Node {
+class CXFA_Desc final : public CXFA_Node {
public:
CXFA_Desc(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Desc() override;
diff --git a/xfa/fxfa/parser/cxfa_destination.h b/xfa/fxfa/parser/cxfa_destination.h
index d9fc553..d31434f 100644
--- a/xfa/fxfa/parser/cxfa_destination.h
+++ b/xfa/fxfa/parser/cxfa_destination.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Destination : public CXFA_Node {
+class CXFA_Destination final : public CXFA_Node {
public:
CXFA_Destination(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Destination() override;
diff --git a/xfa/fxfa/parser/cxfa_digestmethod.h b/xfa/fxfa/parser/cxfa_digestmethod.h
index 4ac22bb..777f46a 100644
--- a/xfa/fxfa/parser/cxfa_digestmethod.h
+++ b/xfa/fxfa/parser/cxfa_digestmethod.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_DigestMethod : public CXFA_Node {
+class CXFA_DigestMethod final : public CXFA_Node {
public:
CXFA_DigestMethod(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_DigestMethod() override;
diff --git a/xfa/fxfa/parser/cxfa_digestmethods.h b/xfa/fxfa/parser/cxfa_digestmethods.h
index 65d40fb..61dac97 100644
--- a/xfa/fxfa/parser/cxfa_digestmethods.h
+++ b/xfa/fxfa/parser/cxfa_digestmethods.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_DigestMethods : public CXFA_Node {
+class CXFA_DigestMethods final : public CXFA_Node {
public:
CXFA_DigestMethods(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_DigestMethods() override;
diff --git a/xfa/fxfa/parser/cxfa_document.h b/xfa/fxfa/parser/cxfa_document.h
index 590a4cf..0449f06 100644
--- a/xfa/fxfa/parser/cxfa_document.h
+++ b/xfa/fxfa/parser/cxfa_document.h
@@ -54,7 +54,7 @@
class CXFA_Node;
class CXFA_Object;
-class CXFA_Document : public CXFA_NodeOwner {
+class CXFA_Document final : public CXFA_NodeOwner {
public:
explicit CXFA_Document(CXFA_FFNotify* notify);
~CXFA_Document() override;
diff --git a/xfa/fxfa/parser/cxfa_documentassembly.h b/xfa/fxfa/parser/cxfa_documentassembly.h
index c22d4a9..92cde65 100644
--- a/xfa/fxfa/parser/cxfa_documentassembly.h
+++ b/xfa/fxfa/parser/cxfa_documentassembly.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_DocumentAssembly : public CXFA_Node {
+class CXFA_DocumentAssembly final : public CXFA_Node {
public:
CXFA_DocumentAssembly(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_DocumentAssembly() override;
diff --git a/xfa/fxfa/parser/cxfa_draw.h b/xfa/fxfa/parser/cxfa_draw.h
index 603103b..c1b9006 100644
--- a/xfa/fxfa/parser/cxfa_draw.h
+++ b/xfa/fxfa/parser/cxfa_draw.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Draw : public CXFA_Node {
+class CXFA_Draw final : public CXFA_Node {
public:
CXFA_Draw(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Draw() override;
diff --git a/xfa/fxfa/parser/cxfa_driver.h b/xfa/fxfa/parser/cxfa_driver.h
index aee732e..f58e153 100644
--- a/xfa/fxfa/parser/cxfa_driver.h
+++ b/xfa/fxfa/parser/cxfa_driver.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Driver : public CXFA_Node {
+class CXFA_Driver final : public CXFA_Node {
public:
CXFA_Driver(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Driver() override;
diff --git a/xfa/fxfa/parser/cxfa_dsigdata.h b/xfa/fxfa/parser/cxfa_dsigdata.h
index 0cbaeb4..06e691c 100644
--- a/xfa/fxfa/parser/cxfa_dsigdata.h
+++ b/xfa/fxfa/parser/cxfa_dsigdata.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_DSigData : public CXFA_Node {
+class CXFA_DSigData final : public CXFA_Node {
public:
CXFA_DSigData(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_DSigData() override;
diff --git a/xfa/fxfa/parser/cxfa_duplexoption.h b/xfa/fxfa/parser/cxfa_duplexoption.h
index 69034ce..5bf8e50 100644
--- a/xfa/fxfa/parser/cxfa_duplexoption.h
+++ b/xfa/fxfa/parser/cxfa_duplexoption.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_DuplexOption : public CXFA_Node {
+class CXFA_DuplexOption final : public CXFA_Node {
public:
CXFA_DuplexOption(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_DuplexOption() override;
diff --git a/xfa/fxfa/parser/cxfa_dynamicrender.h b/xfa/fxfa/parser/cxfa_dynamicrender.h
index f7c54fa..78b75a7 100644
--- a/xfa/fxfa/parser/cxfa_dynamicrender.h
+++ b/xfa/fxfa/parser/cxfa_dynamicrender.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_DynamicRender : public CXFA_Node {
+class CXFA_DynamicRender final : public CXFA_Node {
public:
CXFA_DynamicRender(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_DynamicRender() override;
diff --git a/xfa/fxfa/parser/cxfa_edge.h b/xfa/fxfa/parser/cxfa_edge.h
index 36fee55..79c7f14 100644
--- a/xfa/fxfa/parser/cxfa_edge.h
+++ b/xfa/fxfa/parser/cxfa_edge.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_stroke.h"
-class CXFA_Edge : public CXFA_Stroke {
+class CXFA_Edge final : public CXFA_Stroke {
public:
static constexpr FX_ARGB kDefaultColor = 0xFF000000;
diff --git a/xfa/fxfa/parser/cxfa_effectiveinputpolicy.h b/xfa/fxfa/parser/cxfa_effectiveinputpolicy.h
index 52a60a4..4f4fb8e 100644
--- a/xfa/fxfa/parser/cxfa_effectiveinputpolicy.h
+++ b/xfa/fxfa/parser/cxfa_effectiveinputpolicy.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_EffectiveInputPolicy : public CXFA_Node {
+class CXFA_EffectiveInputPolicy final : public CXFA_Node {
public:
CXFA_EffectiveInputPolicy(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_EffectiveInputPolicy() override;
diff --git a/xfa/fxfa/parser/cxfa_effectiveoutputpolicy.h b/xfa/fxfa/parser/cxfa_effectiveoutputpolicy.h
index b2317d5..9b15a47 100644
--- a/xfa/fxfa/parser/cxfa_effectiveoutputpolicy.h
+++ b/xfa/fxfa/parser/cxfa_effectiveoutputpolicy.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_EffectiveOutputPolicy : public CXFA_Node {
+class CXFA_EffectiveOutputPolicy final : public CXFA_Node {
public:
CXFA_EffectiveOutputPolicy(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_EffectiveOutputPolicy() override;
diff --git a/xfa/fxfa/parser/cxfa_embed.h b/xfa/fxfa/parser/cxfa_embed.h
index d130840..8772b30 100644
--- a/xfa/fxfa/parser/cxfa_embed.h
+++ b/xfa/fxfa/parser/cxfa_embed.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Embed : public CXFA_Node {
+class CXFA_Embed final : public CXFA_Node {
public:
CXFA_Embed(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Embed() override;
diff --git a/xfa/fxfa/parser/cxfa_encoding.h b/xfa/fxfa/parser/cxfa_encoding.h
index ad41b01..b98ea21 100644
--- a/xfa/fxfa/parser/cxfa_encoding.h
+++ b/xfa/fxfa/parser/cxfa_encoding.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Encoding : public CXFA_Node {
+class CXFA_Encoding final : public CXFA_Node {
public:
CXFA_Encoding(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Encoding() override;
diff --git a/xfa/fxfa/parser/cxfa_encodings.h b/xfa/fxfa/parser/cxfa_encodings.h
index d3876de..3e8de09 100644
--- a/xfa/fxfa/parser/cxfa_encodings.h
+++ b/xfa/fxfa/parser/cxfa_encodings.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Encodings : public CXFA_Node {
+class CXFA_Encodings final : public CXFA_Node {
public:
CXFA_Encodings(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Encodings() override;
diff --git a/xfa/fxfa/parser/cxfa_encrypt.h b/xfa/fxfa/parser/cxfa_encrypt.h
index 4968db6..afb74b4 100644
--- a/xfa/fxfa/parser/cxfa_encrypt.h
+++ b/xfa/fxfa/parser/cxfa_encrypt.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Encrypt : public CXFA_Node {
+class CXFA_Encrypt final : public CXFA_Node {
public:
CXFA_Encrypt(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Encrypt() override;
diff --git a/xfa/fxfa/parser/cxfa_encryption.h b/xfa/fxfa/parser/cxfa_encryption.h
index f2028ee..1bcf48f 100644
--- a/xfa/fxfa/parser/cxfa_encryption.h
+++ b/xfa/fxfa/parser/cxfa_encryption.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Encryption : public CXFA_Node {
+class CXFA_Encryption final : public CXFA_Node {
public:
CXFA_Encryption(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Encryption() override;
diff --git a/xfa/fxfa/parser/cxfa_encryptionlevel.h b/xfa/fxfa/parser/cxfa_encryptionlevel.h
index 1bb80ce..faf300b 100644
--- a/xfa/fxfa/parser/cxfa_encryptionlevel.h
+++ b/xfa/fxfa/parser/cxfa_encryptionlevel.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_EncryptionLevel : public CXFA_Node {
+class CXFA_EncryptionLevel final : public CXFA_Node {
public:
CXFA_EncryptionLevel(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_EncryptionLevel() override;
diff --git a/xfa/fxfa/parser/cxfa_encryptionmethod.h b/xfa/fxfa/parser/cxfa_encryptionmethod.h
index 2c86001..cae708f 100644
--- a/xfa/fxfa/parser/cxfa_encryptionmethod.h
+++ b/xfa/fxfa/parser/cxfa_encryptionmethod.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_EncryptionMethod : public CXFA_Node {
+class CXFA_EncryptionMethod final : public CXFA_Node {
public:
CXFA_EncryptionMethod(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_EncryptionMethod() override;
diff --git a/xfa/fxfa/parser/cxfa_encryptionmethods.h b/xfa/fxfa/parser/cxfa_encryptionmethods.h
index 9fcc0b5..825ee9f 100644
--- a/xfa/fxfa/parser/cxfa_encryptionmethods.h
+++ b/xfa/fxfa/parser/cxfa_encryptionmethods.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_EncryptionMethods : public CXFA_Node {
+class CXFA_EncryptionMethods final : public CXFA_Node {
public:
CXFA_EncryptionMethods(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_EncryptionMethods() override;
diff --git a/xfa/fxfa/parser/cxfa_enforce.h b/xfa/fxfa/parser/cxfa_enforce.h
index 3ccd8b8..ec7d745 100644
--- a/xfa/fxfa/parser/cxfa_enforce.h
+++ b/xfa/fxfa/parser/cxfa_enforce.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Enforce : public CXFA_Node {
+class CXFA_Enforce final : public CXFA_Node {
public:
CXFA_Enforce(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Enforce() override;
diff --git a/xfa/fxfa/parser/cxfa_equate.h b/xfa/fxfa/parser/cxfa_equate.h
index 0a28182..fc1f8d6 100644
--- a/xfa/fxfa/parser/cxfa_equate.h
+++ b/xfa/fxfa/parser/cxfa_equate.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Equate : public CXFA_Node {
+class CXFA_Equate final : public CXFA_Node {
public:
CXFA_Equate(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Equate() override;
diff --git a/xfa/fxfa/parser/cxfa_equaterange.h b/xfa/fxfa/parser/cxfa_equaterange.h
index 86c86b1..56f05e1 100644
--- a/xfa/fxfa/parser/cxfa_equaterange.h
+++ b/xfa/fxfa/parser/cxfa_equaterange.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_EquateRange : public CXFA_Node {
+class CXFA_EquateRange final : public CXFA_Node {
public:
CXFA_EquateRange(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_EquateRange() override;
diff --git a/xfa/fxfa/parser/cxfa_era.h b/xfa/fxfa/parser/cxfa_era.h
index a46a574..e0ecdf7 100644
--- a/xfa/fxfa/parser/cxfa_era.h
+++ b/xfa/fxfa/parser/cxfa_era.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Era : public CXFA_Node {
+class CXFA_Era final : public CXFA_Node {
public:
CXFA_Era(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Era() override;
diff --git a/xfa/fxfa/parser/cxfa_eranames.h b/xfa/fxfa/parser/cxfa_eranames.h
index 4c8f788..468b658 100644
--- a/xfa/fxfa/parser/cxfa_eranames.h
+++ b/xfa/fxfa/parser/cxfa_eranames.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_EraNames : public CXFA_Node {
+class CXFA_EraNames final : public CXFA_Node {
public:
CXFA_EraNames(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_EraNames() override;
diff --git a/xfa/fxfa/parser/cxfa_event.h b/xfa/fxfa/parser/cxfa_event.h
index 6902b52..e7f5e1a 100644
--- a/xfa/fxfa/parser/cxfa_event.h
+++ b/xfa/fxfa/parser/cxfa_event.h
@@ -12,7 +12,7 @@
class CXFA_Script;
class CXFA_Submit;
-class CXFA_Event : public CXFA_Node {
+class CXFA_Event final : public CXFA_Node {
public:
CXFA_Event(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Event() override;
diff --git a/xfa/fxfa/parser/cxfa_exclgroup.h b/xfa/fxfa/parser/cxfa_exclgroup.h
index 5a3c8a3..390bb4a 100644
--- a/xfa/fxfa/parser/cxfa_exclgroup.h
+++ b/xfa/fxfa/parser/cxfa_exclgroup.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_ExclGroup : public CXFA_Node {
+class CXFA_ExclGroup final : public CXFA_Node {
public:
CXFA_ExclGroup(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_ExclGroup() override;
diff --git a/xfa/fxfa/parser/cxfa_exclude.h b/xfa/fxfa/parser/cxfa_exclude.h
index 0f78707..71f08fd 100644
--- a/xfa/fxfa/parser/cxfa_exclude.h
+++ b/xfa/fxfa/parser/cxfa_exclude.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Exclude : public CXFA_Node {
+class CXFA_Exclude final : public CXFA_Node {
public:
CXFA_Exclude(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Exclude() override;
diff --git a/xfa/fxfa/parser/cxfa_excludens.h b/xfa/fxfa/parser/cxfa_excludens.h
index c5cb548..9ce2e69 100644
--- a/xfa/fxfa/parser/cxfa_excludens.h
+++ b/xfa/fxfa/parser/cxfa_excludens.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_ExcludeNS : public CXFA_Node {
+class CXFA_ExcludeNS final : public CXFA_Node {
public:
CXFA_ExcludeNS(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_ExcludeNS() override;
diff --git a/xfa/fxfa/parser/cxfa_exdata.h b/xfa/fxfa/parser/cxfa_exdata.h
index 8eb3caf..8adf028 100644
--- a/xfa/fxfa/parser/cxfa_exdata.h
+++ b/xfa/fxfa/parser/cxfa_exdata.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_ExData : public CXFA_Node {
+class CXFA_ExData final : public CXFA_Node {
public:
CXFA_ExData(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_ExData() override;
diff --git a/xfa/fxfa/parser/cxfa_execute.h b/xfa/fxfa/parser/cxfa_execute.h
index 2d9f158..63fd18b 100644
--- a/xfa/fxfa/parser/cxfa_execute.h
+++ b/xfa/fxfa/parser/cxfa_execute.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Execute : public CXFA_Node {
+class CXFA_Execute final : public CXFA_Node {
public:
CXFA_Execute(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Execute() override;
diff --git a/xfa/fxfa/parser/cxfa_exobject.h b/xfa/fxfa/parser/cxfa_exobject.h
index b4d7de9..79ffdb9 100644
--- a/xfa/fxfa/parser/cxfa_exobject.h
+++ b/xfa/fxfa/parser/cxfa_exobject.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_ExObject : public CXFA_Node {
+class CXFA_ExObject final : public CXFA_Node {
public:
CXFA_ExObject(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_ExObject() override;
diff --git a/xfa/fxfa/parser/cxfa_extras.h b/xfa/fxfa/parser/cxfa_extras.h
index 3b3c6b4..82108d0 100644
--- a/xfa/fxfa/parser/cxfa_extras.h
+++ b/xfa/fxfa/parser/cxfa_extras.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Extras : public CXFA_Node {
+class CXFA_Extras final : public CXFA_Node {
public:
CXFA_Extras(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Extras() override;
diff --git a/xfa/fxfa/parser/cxfa_field.h b/xfa/fxfa/parser/cxfa_field.h
index b2f7a05..e29cdd7 100644
--- a/xfa/fxfa/parser/cxfa_field.h
+++ b/xfa/fxfa/parser/cxfa_field.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Field : public CXFA_Node {
+class CXFA_Field final : public CXFA_Node {
public:
CXFA_Field(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Field() override;
diff --git a/xfa/fxfa/parser/cxfa_fill.h b/xfa/fxfa/parser/cxfa_fill.h
index 1ffdcdf..05fede9 100644
--- a/xfa/fxfa/parser/cxfa_fill.h
+++ b/xfa/fxfa/parser/cxfa_fill.h
@@ -18,7 +18,7 @@
class CXFA_Radial;
class CXFA_Stipple;
-class CXFA_Fill : public CXFA_Node {
+class CXFA_Fill final : public CXFA_Node {
public:
CXFA_Fill(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Fill() override;
diff --git a/xfa/fxfa/parser/cxfa_filter.h b/xfa/fxfa/parser/cxfa_filter.h
index 2ac069a..033d97c 100644
--- a/xfa/fxfa/parser/cxfa_filter.h
+++ b/xfa/fxfa/parser/cxfa_filter.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Filter : public CXFA_Node {
+class CXFA_Filter final : public CXFA_Node {
public:
CXFA_Filter(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Filter() override;
diff --git a/xfa/fxfa/parser/cxfa_fliplabel.h b/xfa/fxfa/parser/cxfa_fliplabel.h
index dac0564..e3f8165 100644
--- a/xfa/fxfa/parser/cxfa_fliplabel.h
+++ b/xfa/fxfa/parser/cxfa_fliplabel.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_FlipLabel : public CXFA_Node {
+class CXFA_FlipLabel final : public CXFA_Node {
public:
CXFA_FlipLabel(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_FlipLabel() override;
diff --git a/xfa/fxfa/parser/cxfa_float.h b/xfa/fxfa/parser/cxfa_float.h
index f93b3dd..a3fc1ae 100644
--- a/xfa/fxfa/parser/cxfa_float.h
+++ b/xfa/fxfa/parser/cxfa_float.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Float : public CXFA_Node {
+class CXFA_Float final : public CXFA_Node {
public:
CXFA_Float(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Float() override;
diff --git a/xfa/fxfa/parser/cxfa_font.h b/xfa/fxfa/parser/cxfa_font.h
index 346be76..fb80a32 100644
--- a/xfa/fxfa/parser/cxfa_font.h
+++ b/xfa/fxfa/parser/cxfa_font.h
@@ -10,7 +10,7 @@
#include "core/fxge/fx_dib.h"
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Font : public CXFA_Node {
+class CXFA_Font final : public CXFA_Node {
public:
CXFA_Font(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Font() override;
diff --git a/xfa/fxfa/parser/cxfa_fontinfo.h b/xfa/fxfa/parser/cxfa_fontinfo.h
index f9facd8..b798c55 100644
--- a/xfa/fxfa/parser/cxfa_fontinfo.h
+++ b/xfa/fxfa/parser/cxfa_fontinfo.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_FontInfo : public CXFA_Node {
+class CXFA_FontInfo final : public CXFA_Node {
public:
CXFA_FontInfo(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_FontInfo() override;
diff --git a/xfa/fxfa/parser/cxfa_form.h b/xfa/fxfa/parser/cxfa_form.h
index 39d1d90..a0e2f32 100644
--- a/xfa/fxfa/parser/cxfa_form.h
+++ b/xfa/fxfa/parser/cxfa_form.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Form : public CXFA_Node {
+class CXFA_Form final : public CXFA_Node {
public:
CXFA_Form(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Form() override;
diff --git a/xfa/fxfa/parser/cxfa_format.h b/xfa/fxfa/parser/cxfa_format.h
index 3e31716..7e74a1c 100644
--- a/xfa/fxfa/parser/cxfa_format.h
+++ b/xfa/fxfa/parser/cxfa_format.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Format : public CXFA_Node {
+class CXFA_Format final : public CXFA_Node {
public:
CXFA_Format(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Format() override;
diff --git a/xfa/fxfa/parser/cxfa_formfieldfilling.h b/xfa/fxfa/parser/cxfa_formfieldfilling.h
index 77f1b8f..f9e7447 100644
--- a/xfa/fxfa/parser/cxfa_formfieldfilling.h
+++ b/xfa/fxfa/parser/cxfa_formfieldfilling.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_FormFieldFilling : public CXFA_Node {
+class CXFA_FormFieldFilling final : public CXFA_Node {
public:
CXFA_FormFieldFilling(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_FormFieldFilling() override;
diff --git a/xfa/fxfa/parser/cxfa_groupparent.h b/xfa/fxfa/parser/cxfa_groupparent.h
index 7de296c..eb63a6a 100644
--- a/xfa/fxfa/parser/cxfa_groupparent.h
+++ b/xfa/fxfa/parser/cxfa_groupparent.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_GroupParent : public CXFA_Node {
+class CXFA_GroupParent final : public CXFA_Node {
public:
CXFA_GroupParent(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_GroupParent() override;
diff --git a/xfa/fxfa/parser/cxfa_handler.h b/xfa/fxfa/parser/cxfa_handler.h
index e575c0b..1ab1c4d 100644
--- a/xfa/fxfa/parser/cxfa_handler.h
+++ b/xfa/fxfa/parser/cxfa_handler.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Handler : public CXFA_Node {
+class CXFA_Handler final : public CXFA_Node {
public:
CXFA_Handler(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Handler() override;
diff --git a/xfa/fxfa/parser/cxfa_hyphenation.h b/xfa/fxfa/parser/cxfa_hyphenation.h
index 2601c5f..77b49e9 100644
--- a/xfa/fxfa/parser/cxfa_hyphenation.h
+++ b/xfa/fxfa/parser/cxfa_hyphenation.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Hyphenation : public CXFA_Node {
+class CXFA_Hyphenation final : public CXFA_Node {
public:
CXFA_Hyphenation(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Hyphenation() override;
diff --git a/xfa/fxfa/parser/cxfa_ifempty.h b/xfa/fxfa/parser/cxfa_ifempty.h
index 3c3c1b4..401faa7 100644
--- a/xfa/fxfa/parser/cxfa_ifempty.h
+++ b/xfa/fxfa/parser/cxfa_ifempty.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_IfEmpty : public CXFA_Node {
+class CXFA_IfEmpty final : public CXFA_Node {
public:
CXFA_IfEmpty(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_IfEmpty() override;
diff --git a/xfa/fxfa/parser/cxfa_image.h b/xfa/fxfa/parser/cxfa_image.h
index 3670863..01f12eb 100644
--- a/xfa/fxfa/parser/cxfa_image.h
+++ b/xfa/fxfa/parser/cxfa_image.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Image : public CXFA_Node {
+class CXFA_Image final : public CXFA_Node {
public:
CXFA_Image(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Image() override;
diff --git a/xfa/fxfa/parser/cxfa_imageedit.h b/xfa/fxfa/parser/cxfa_imageedit.h
index 0a950d8..884c219 100644
--- a/xfa/fxfa/parser/cxfa_imageedit.h
+++ b/xfa/fxfa/parser/cxfa_imageedit.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_ImageEdit : public CXFA_Node {
+class CXFA_ImageEdit final : public CXFA_Node {
public:
CXFA_ImageEdit(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_ImageEdit() override;
diff --git a/xfa/fxfa/parser/cxfa_includexdpcontent.h b/xfa/fxfa/parser/cxfa_includexdpcontent.h
index 309a7c6..15c5bbe 100644
--- a/xfa/fxfa/parser/cxfa_includexdpcontent.h
+++ b/xfa/fxfa/parser/cxfa_includexdpcontent.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_IncludeXDPContent : public CXFA_Node {
+class CXFA_IncludeXDPContent final : public CXFA_Node {
public:
CXFA_IncludeXDPContent(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_IncludeXDPContent() override;
diff --git a/xfa/fxfa/parser/cxfa_incrementalload.h b/xfa/fxfa/parser/cxfa_incrementalload.h
index 9ea8f29..253a2ae 100644
--- a/xfa/fxfa/parser/cxfa_incrementalload.h
+++ b/xfa/fxfa/parser/cxfa_incrementalload.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_IncrementalLoad : public CXFA_Node {
+class CXFA_IncrementalLoad final : public CXFA_Node {
public:
CXFA_IncrementalLoad(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_IncrementalLoad() override;
diff --git a/xfa/fxfa/parser/cxfa_incrementalmerge.h b/xfa/fxfa/parser/cxfa_incrementalmerge.h
index c8e6554..4ec65af 100644
--- a/xfa/fxfa/parser/cxfa_incrementalmerge.h
+++ b/xfa/fxfa/parser/cxfa_incrementalmerge.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_IncrementalMerge : public CXFA_Node {
+class CXFA_IncrementalMerge final : public CXFA_Node {
public:
CXFA_IncrementalMerge(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_IncrementalMerge() override;
diff --git a/xfa/fxfa/parser/cxfa_insert.h b/xfa/fxfa/parser/cxfa_insert.h
index 92579c3..e157a82 100644
--- a/xfa/fxfa/parser/cxfa_insert.h
+++ b/xfa/fxfa/parser/cxfa_insert.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Insert : public CXFA_Node {
+class CXFA_Insert final : public CXFA_Node {
public:
CXFA_Insert(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Insert() override;
diff --git a/xfa/fxfa/parser/cxfa_instancemanager.h b/xfa/fxfa/parser/cxfa_instancemanager.h
index 1910b92..3ace0e9 100644
--- a/xfa/fxfa/parser/cxfa_instancemanager.h
+++ b/xfa/fxfa/parser/cxfa_instancemanager.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_InstanceManager : public CXFA_Node {
+class CXFA_InstanceManager final : public CXFA_Node {
public:
CXFA_InstanceManager(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_InstanceManager() override;
diff --git a/xfa/fxfa/parser/cxfa_integer.h b/xfa/fxfa/parser/cxfa_integer.h
index 2e5631d..ac94133 100644
--- a/xfa/fxfa/parser/cxfa_integer.h
+++ b/xfa/fxfa/parser/cxfa_integer.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Integer : public CXFA_Node {
+class CXFA_Integer final : public CXFA_Node {
public:
CXFA_Integer(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Integer() override;
diff --git a/xfa/fxfa/parser/cxfa_interactive.h b/xfa/fxfa/parser/cxfa_interactive.h
index 69f2918..12db0bf 100644
--- a/xfa/fxfa/parser/cxfa_interactive.h
+++ b/xfa/fxfa/parser/cxfa_interactive.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Interactive : public CXFA_Node {
+class CXFA_Interactive final : public CXFA_Node {
public:
CXFA_Interactive(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Interactive() override;
diff --git a/xfa/fxfa/parser/cxfa_issuers.h b/xfa/fxfa/parser/cxfa_issuers.h
index 6b94f15..11ba8b4 100644
--- a/xfa/fxfa/parser/cxfa_issuers.h
+++ b/xfa/fxfa/parser/cxfa_issuers.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Issuers : public CXFA_Node {
+class CXFA_Issuers final : public CXFA_Node {
public:
CXFA_Issuers(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Issuers() override;
diff --git a/xfa/fxfa/parser/cxfa_items.h b/xfa/fxfa/parser/cxfa_items.h
index 586fabd..609b028 100644
--- a/xfa/fxfa/parser/cxfa_items.h
+++ b/xfa/fxfa/parser/cxfa_items.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Items : public CXFA_Node {
+class CXFA_Items final : public CXFA_Node {
public:
CXFA_Items(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Items() override;
diff --git a/xfa/fxfa/parser/cxfa_jog.h b/xfa/fxfa/parser/cxfa_jog.h
index 266ccd1..a40a488 100644
--- a/xfa/fxfa/parser/cxfa_jog.h
+++ b/xfa/fxfa/parser/cxfa_jog.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Jog : public CXFA_Node {
+class CXFA_Jog final : public CXFA_Node {
public:
CXFA_Jog(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Jog() override;
diff --git a/xfa/fxfa/parser/cxfa_keep.h b/xfa/fxfa/parser/cxfa_keep.h
index 7d53f96..0d4a2e0 100644
--- a/xfa/fxfa/parser/cxfa_keep.h
+++ b/xfa/fxfa/parser/cxfa_keep.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Keep : public CXFA_Node {
+class CXFA_Keep final : public CXFA_Node {
public:
CXFA_Keep(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Keep() override;
diff --git a/xfa/fxfa/parser/cxfa_keyusage.h b/xfa/fxfa/parser/cxfa_keyusage.h
index b258074..3409e3f 100644
--- a/xfa/fxfa/parser/cxfa_keyusage.h
+++ b/xfa/fxfa/parser/cxfa_keyusage.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_KeyUsage : public CXFA_Node {
+class CXFA_KeyUsage final : public CXFA_Node {
public:
CXFA_KeyUsage(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_KeyUsage() override;
diff --git a/xfa/fxfa/parser/cxfa_labelprinter.h b/xfa/fxfa/parser/cxfa_labelprinter.h
index e3f5d3b..74a5e82 100644
--- a/xfa/fxfa/parser/cxfa_labelprinter.h
+++ b/xfa/fxfa/parser/cxfa_labelprinter.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_LabelPrinter : public CXFA_Node {
+class CXFA_LabelPrinter final : public CXFA_Node {
public:
CXFA_LabelPrinter(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_LabelPrinter() override;
diff --git a/xfa/fxfa/parser/cxfa_layout.h b/xfa/fxfa/parser/cxfa_layout.h
index 93e069e..ad25efa 100644
--- a/xfa/fxfa/parser/cxfa_layout.h
+++ b/xfa/fxfa/parser/cxfa_layout.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Layout : public CXFA_Node {
+class CXFA_Layout final : public CXFA_Node {
public:
CXFA_Layout(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Layout() override;
diff --git a/xfa/fxfa/parser/cxfa_level.h b/xfa/fxfa/parser/cxfa_level.h
index abdd048..8cc03dc 100644
--- a/xfa/fxfa/parser/cxfa_level.h
+++ b/xfa/fxfa/parser/cxfa_level.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Level : public CXFA_Node {
+class CXFA_Level final : public CXFA_Node {
public:
CXFA_Level(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Level() override;
diff --git a/xfa/fxfa/parser/cxfa_line.h b/xfa/fxfa/parser/cxfa_line.h
index 18faacd..98a132d 100644
--- a/xfa/fxfa/parser/cxfa_line.h
+++ b/xfa/fxfa/parser/cxfa_line.h
@@ -11,7 +11,7 @@
class CXFA_Edge;
-class CXFA_Line : public CXFA_Node {
+class CXFA_Line final : public CXFA_Node {
public:
CXFA_Line(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Line() override;
diff --git a/xfa/fxfa/parser/cxfa_linear.h b/xfa/fxfa/parser/cxfa_linear.h
index bb55f80..1315f9a 100644
--- a/xfa/fxfa/parser/cxfa_linear.h
+++ b/xfa/fxfa/parser/cxfa_linear.h
@@ -14,7 +14,7 @@
class CXFA_Color;
class CXFA_Graphics;
-class CXFA_Linear : public CXFA_Node {
+class CXFA_Linear final : public CXFA_Node {
public:
static constexpr XFA_AttributeEnum kDefaultType = XFA_AttributeEnum::ToRight;
diff --git a/xfa/fxfa/parser/cxfa_linearized.h b/xfa/fxfa/parser/cxfa_linearized.h
index df7846e..d2fe2d7 100644
--- a/xfa/fxfa/parser/cxfa_linearized.h
+++ b/xfa/fxfa/parser/cxfa_linearized.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Linearized : public CXFA_Node {
+class CXFA_Linearized final : public CXFA_Node {
public:
CXFA_Linearized(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Linearized() override;
diff --git a/xfa/fxfa/parser/cxfa_locale.h b/xfa/fxfa/parser/cxfa_locale.h
index 3a7e83d..67bee33 100644
--- a/xfa/fxfa/parser/cxfa_locale.h
+++ b/xfa/fxfa/parser/cxfa_locale.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Locale : public CXFA_Node {
+class CXFA_Locale final : public CXFA_Node {
public:
CXFA_Locale(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Locale() override;
diff --git a/xfa/fxfa/parser/cxfa_localeset.h b/xfa/fxfa/parser/cxfa_localeset.h
index 1d65ad1..dc6521a 100644
--- a/xfa/fxfa/parser/cxfa_localeset.h
+++ b/xfa/fxfa/parser/cxfa_localeset.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_LocaleSet : public CXFA_Node {
+class CXFA_LocaleSet final : public CXFA_Node {
public:
CXFA_LocaleSet(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_LocaleSet() override;
diff --git a/xfa/fxfa/parser/cxfa_lockdocument.h b/xfa/fxfa/parser/cxfa_lockdocument.h
index 025031a..1328d34 100644
--- a/xfa/fxfa/parser/cxfa_lockdocument.h
+++ b/xfa/fxfa/parser/cxfa_lockdocument.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_LockDocument : public CXFA_Node {
+class CXFA_LockDocument final : public CXFA_Node {
public:
CXFA_LockDocument(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_LockDocument() override;
diff --git a/xfa/fxfa/parser/cxfa_log.h b/xfa/fxfa/parser/cxfa_log.h
index 17fd290..27173cd 100644
--- a/xfa/fxfa/parser/cxfa_log.h
+++ b/xfa/fxfa/parser/cxfa_log.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Log : public CXFA_Node {
+class CXFA_Log final : public CXFA_Node {
public:
CXFA_Log(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Log() override;
diff --git a/xfa/fxfa/parser/cxfa_manifest.h b/xfa/fxfa/parser/cxfa_manifest.h
index a13cdac..d5ca05f 100644
--- a/xfa/fxfa/parser/cxfa_manifest.h
+++ b/xfa/fxfa/parser/cxfa_manifest.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Manifest : public CXFA_Node {
+class CXFA_Manifest final : public CXFA_Node {
public:
CXFA_Manifest(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Manifest() override;
diff --git a/xfa/fxfa/parser/cxfa_map.h b/xfa/fxfa/parser/cxfa_map.h
index c49568f..f8e0797 100644
--- a/xfa/fxfa/parser/cxfa_map.h
+++ b/xfa/fxfa/parser/cxfa_map.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Map : public CXFA_Node {
+class CXFA_Map final : public CXFA_Node {
public:
CXFA_Map(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Map() override;
diff --git a/xfa/fxfa/parser/cxfa_margin.h b/xfa/fxfa/parser/cxfa_margin.h
index e7f95b6..813bdfe 100644
--- a/xfa/fxfa/parser/cxfa_margin.h
+++ b/xfa/fxfa/parser/cxfa_margin.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Margin : public CXFA_Node {
+class CXFA_Margin final : public CXFA_Node {
public:
CXFA_Margin(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Margin() override;
diff --git a/xfa/fxfa/parser/cxfa_mdp.h b/xfa/fxfa/parser/cxfa_mdp.h
index 0ae626d..79b1480 100644
--- a/xfa/fxfa/parser/cxfa_mdp.h
+++ b/xfa/fxfa/parser/cxfa_mdp.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Mdp : public CXFA_Node {
+class CXFA_Mdp final : public CXFA_Node {
public:
CXFA_Mdp(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Mdp() override;
diff --git a/xfa/fxfa/parser/cxfa_medium.h b/xfa/fxfa/parser/cxfa_medium.h
index b9b9c5d..49be83f 100644
--- a/xfa/fxfa/parser/cxfa_medium.h
+++ b/xfa/fxfa/parser/cxfa_medium.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Medium : public CXFA_Node {
+class CXFA_Medium final : public CXFA_Node {
public:
CXFA_Medium(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Medium() override;
diff --git a/xfa/fxfa/parser/cxfa_mediuminfo.h b/xfa/fxfa/parser/cxfa_mediuminfo.h
index da100ea..65e58df 100644
--- a/xfa/fxfa/parser/cxfa_mediuminfo.h
+++ b/xfa/fxfa/parser/cxfa_mediuminfo.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_MediumInfo : public CXFA_Node {
+class CXFA_MediumInfo final : public CXFA_Node {
public:
CXFA_MediumInfo(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_MediumInfo() override;
diff --git a/xfa/fxfa/parser/cxfa_meridiem.h b/xfa/fxfa/parser/cxfa_meridiem.h
index 30bd4b0..40c956c 100644
--- a/xfa/fxfa/parser/cxfa_meridiem.h
+++ b/xfa/fxfa/parser/cxfa_meridiem.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Meridiem : public CXFA_Node {
+class CXFA_Meridiem final : public CXFA_Node {
public:
CXFA_Meridiem(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Meridiem() override;
diff --git a/xfa/fxfa/parser/cxfa_meridiemnames.h b/xfa/fxfa/parser/cxfa_meridiemnames.h
index 8cade21..00fbbb7 100644
--- a/xfa/fxfa/parser/cxfa_meridiemnames.h
+++ b/xfa/fxfa/parser/cxfa_meridiemnames.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_MeridiemNames : public CXFA_Node {
+class CXFA_MeridiemNames final : public CXFA_Node {
public:
CXFA_MeridiemNames(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_MeridiemNames() override;
diff --git a/xfa/fxfa/parser/cxfa_message.h b/xfa/fxfa/parser/cxfa_message.h
index f172e06..81cb751 100644
--- a/xfa/fxfa/parser/cxfa_message.h
+++ b/xfa/fxfa/parser/cxfa_message.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Message : public CXFA_Node {
+class CXFA_Message final : public CXFA_Node {
public:
CXFA_Message(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Message() override;
diff --git a/xfa/fxfa/parser/cxfa_messaging.h b/xfa/fxfa/parser/cxfa_messaging.h
index 48d16b3..86e16f3 100644
--- a/xfa/fxfa/parser/cxfa_messaging.h
+++ b/xfa/fxfa/parser/cxfa_messaging.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Messaging : public CXFA_Node {
+class CXFA_Messaging final : public CXFA_Node {
public:
CXFA_Messaging(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Messaging() override;
diff --git a/xfa/fxfa/parser/cxfa_mode.h b/xfa/fxfa/parser/cxfa_mode.h
index 1dfd426..46675db 100644
--- a/xfa/fxfa/parser/cxfa_mode.h
+++ b/xfa/fxfa/parser/cxfa_mode.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Mode : public CXFA_Node {
+class CXFA_Mode final : public CXFA_Node {
public:
CXFA_Mode(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Mode() override;
diff --git a/xfa/fxfa/parser/cxfa_modifyannots.h b/xfa/fxfa/parser/cxfa_modifyannots.h
index 4e10921..c92b05b 100644
--- a/xfa/fxfa/parser/cxfa_modifyannots.h
+++ b/xfa/fxfa/parser/cxfa_modifyannots.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_ModifyAnnots : public CXFA_Node {
+class CXFA_ModifyAnnots final : public CXFA_Node {
public:
CXFA_ModifyAnnots(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_ModifyAnnots() override;
diff --git a/xfa/fxfa/parser/cxfa_month.h b/xfa/fxfa/parser/cxfa_month.h
index 69361f5..f63095d 100644
--- a/xfa/fxfa/parser/cxfa_month.h
+++ b/xfa/fxfa/parser/cxfa_month.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Month : public CXFA_Node {
+class CXFA_Month final : public CXFA_Node {
public:
CXFA_Month(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Month() override;
diff --git a/xfa/fxfa/parser/cxfa_monthnames.h b/xfa/fxfa/parser/cxfa_monthnames.h
index f95512b..cf0c331 100644
--- a/xfa/fxfa/parser/cxfa_monthnames.h
+++ b/xfa/fxfa/parser/cxfa_monthnames.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_MonthNames : public CXFA_Node {
+class CXFA_MonthNames final : public CXFA_Node {
public:
CXFA_MonthNames(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_MonthNames() override;
diff --git a/xfa/fxfa/parser/cxfa_msgid.h b/xfa/fxfa/parser/cxfa_msgid.h
index 333085a..4c166d7 100644
--- a/xfa/fxfa/parser/cxfa_msgid.h
+++ b/xfa/fxfa/parser/cxfa_msgid.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_MsgId : public CXFA_Node {
+class CXFA_MsgId final : public CXFA_Node {
public:
CXFA_MsgId(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_MsgId() override;
diff --git a/xfa/fxfa/parser/cxfa_nameattr.h b/xfa/fxfa/parser/cxfa_nameattr.h
index 05514c0..f346bf6 100644
--- a/xfa/fxfa/parser/cxfa_nameattr.h
+++ b/xfa/fxfa/parser/cxfa_nameattr.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_NameAttr : public CXFA_Node {
+class CXFA_NameAttr final : public CXFA_Node {
public:
CXFA_NameAttr(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_NameAttr() override;
diff --git a/xfa/fxfa/parser/cxfa_neverembed.h b/xfa/fxfa/parser/cxfa_neverembed.h
index 11ec928..70f90a3 100644
--- a/xfa/fxfa/parser/cxfa_neverembed.h
+++ b/xfa/fxfa/parser/cxfa_neverembed.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_NeverEmbed : public CXFA_Node {
+class CXFA_NeverEmbed final : public CXFA_Node {
public:
CXFA_NeverEmbed(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_NeverEmbed() override;
diff --git a/xfa/fxfa/parser/cxfa_node.cpp b/xfa/fxfa/parser/cxfa_node.cpp
index 7e582c0..7d707d0 100644
--- a/xfa/fxfa/parser/cxfa_node.cpp
+++ b/xfa/fxfa/parser/cxfa_node.cpp
@@ -418,7 +418,7 @@
float m_fWidgetHeight = -1.0f;
};
-class CXFA_TextLayoutData : public CXFA_WidgetLayoutData {
+class CXFA_TextLayoutData final : public CXFA_WidgetLayoutData {
public:
CXFA_TextLayoutData() = default;
~CXFA_TextLayoutData() override = default;
@@ -443,7 +443,7 @@
std::unique_ptr<CXFA_TextProvider> m_pTextProvider;
};
-class CXFA_ImageLayoutData : public CXFA_WidgetLayoutData {
+class CXFA_ImageLayoutData final : public CXFA_WidgetLayoutData {
public:
CXFA_ImageLayoutData() = default;
~CXFA_ImageLayoutData() override = default;
@@ -503,7 +503,7 @@
std::vector<float> m_FieldSplitArray;
};
-class CXFA_TextEditData : public CXFA_FieldLayoutData {
+class CXFA_TextEditData final : public CXFA_FieldLayoutData {
public:
CXFA_TextEditData() = default;
~CXFA_TextEditData() override = default;
@@ -511,7 +511,7 @@
CXFA_TextEditData* AsTextEditData() override { return this; }
};
-class CXFA_ImageEditData : public CXFA_FieldLayoutData {
+class CXFA_ImageEditData final : public CXFA_FieldLayoutData {
public:
CXFA_ImageEditData() = default;
~CXFA_ImageEditData() override = default;
diff --git a/xfa/fxfa/parser/cxfa_node_unittest.cpp b/xfa/fxfa/parser/cxfa_node_unittest.cpp
index 81e2189..7b3c09d 100644
--- a/xfa/fxfa/parser/cxfa_node_unittest.cpp
+++ b/xfa/fxfa/parser/cxfa_node_unittest.cpp
@@ -10,7 +10,7 @@
namespace {
-class TestNode : public CXFA_Node {
+class TestNode final : public CXFA_Node {
public:
explicit TestNode(CXFA_Document* doc)
: CXFA_Node(doc,
diff --git a/xfa/fxfa/parser/cxfa_nodelocale.h b/xfa/fxfa/parser/cxfa_nodelocale.h
index e802cd9..da6846b 100644
--- a/xfa/fxfa/parser/cxfa_nodelocale.h
+++ b/xfa/fxfa/parser/cxfa_nodelocale.h
@@ -16,7 +16,7 @@
WideString XFA_PatternToString(FX_LOCALENUMSUBCATEGORY category);
-class CXFA_NodeLocale : public LocaleIface {
+class CXFA_NodeLocale final : public LocaleIface {
public:
explicit CXFA_NodeLocale(CXFA_Node* pLocale);
~CXFA_NodeLocale() override;
diff --git a/xfa/fxfa/parser/cxfa_numberofcopies.h b/xfa/fxfa/parser/cxfa_numberofcopies.h
index 04bb599..3215bb3 100644
--- a/xfa/fxfa/parser/cxfa_numberofcopies.h
+++ b/xfa/fxfa/parser/cxfa_numberofcopies.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_NumberOfCopies : public CXFA_Node {
+class CXFA_NumberOfCopies final : public CXFA_Node {
public:
CXFA_NumberOfCopies(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_NumberOfCopies() override;
diff --git a/xfa/fxfa/parser/cxfa_numberpattern.h b/xfa/fxfa/parser/cxfa_numberpattern.h
index 0a4fabd..5c42d46 100644
--- a/xfa/fxfa/parser/cxfa_numberpattern.h
+++ b/xfa/fxfa/parser/cxfa_numberpattern.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_NumberPattern : public CXFA_Node {
+class CXFA_NumberPattern final : public CXFA_Node {
public:
CXFA_NumberPattern(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_NumberPattern() override;
diff --git a/xfa/fxfa/parser/cxfa_numberpatterns.h b/xfa/fxfa/parser/cxfa_numberpatterns.h
index ef4f889..58c8cb6 100644
--- a/xfa/fxfa/parser/cxfa_numberpatterns.h
+++ b/xfa/fxfa/parser/cxfa_numberpatterns.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_NumberPatterns : public CXFA_Node {
+class CXFA_NumberPatterns final : public CXFA_Node {
public:
CXFA_NumberPatterns(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_NumberPatterns() override;
diff --git a/xfa/fxfa/parser/cxfa_numbersymbol.h b/xfa/fxfa/parser/cxfa_numbersymbol.h
index c164b03..404f366 100644
--- a/xfa/fxfa/parser/cxfa_numbersymbol.h
+++ b/xfa/fxfa/parser/cxfa_numbersymbol.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_NumberSymbol : public CXFA_Node {
+class CXFA_NumberSymbol final : public CXFA_Node {
public:
CXFA_NumberSymbol(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_NumberSymbol() override;
diff --git a/xfa/fxfa/parser/cxfa_numbersymbols.h b/xfa/fxfa/parser/cxfa_numbersymbols.h
index 972df9f..37bb6fc 100644
--- a/xfa/fxfa/parser/cxfa_numbersymbols.h
+++ b/xfa/fxfa/parser/cxfa_numbersymbols.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_NumberSymbols : public CXFA_Node {
+class CXFA_NumberSymbols final : public CXFA_Node {
public:
CXFA_NumberSymbols(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_NumberSymbols() override;
diff --git a/xfa/fxfa/parser/cxfa_numericedit.h b/xfa/fxfa/parser/cxfa_numericedit.h
index 1a96f46..145bf08 100644
--- a/xfa/fxfa/parser/cxfa_numericedit.h
+++ b/xfa/fxfa/parser/cxfa_numericedit.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_NumericEdit : public CXFA_Node {
+class CXFA_NumericEdit final : public CXFA_Node {
public:
CXFA_NumericEdit(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_NumericEdit() override;
diff --git a/xfa/fxfa/parser/cxfa_occur.h b/xfa/fxfa/parser/cxfa_occur.h
index 070c15c..58029a3 100644
--- a/xfa/fxfa/parser/cxfa_occur.h
+++ b/xfa/fxfa/parser/cxfa_occur.h
@@ -11,7 +11,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Occur : public CXFA_Node {
+class CXFA_Occur final : public CXFA_Node {
public:
static constexpr int32_t kDefaultMax = 1;
static constexpr int32_t kDefaultMin = 1;
diff --git a/xfa/fxfa/parser/cxfa_oid.h b/xfa/fxfa/parser/cxfa_oid.h
index 45abf8b..c9ccb71 100644
--- a/xfa/fxfa/parser/cxfa_oid.h
+++ b/xfa/fxfa/parser/cxfa_oid.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Oid : public CXFA_Node {
+class CXFA_Oid final : public CXFA_Node {
public:
CXFA_Oid(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Oid() override;
diff --git a/xfa/fxfa/parser/cxfa_oids.h b/xfa/fxfa/parser/cxfa_oids.h
index cc8cd9c..f537601 100644
--- a/xfa/fxfa/parser/cxfa_oids.h
+++ b/xfa/fxfa/parser/cxfa_oids.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Oids : public CXFA_Node {
+class CXFA_Oids final : public CXFA_Node {
public:
CXFA_Oids(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Oids() override;
diff --git a/xfa/fxfa/parser/cxfa_openaction.h b/xfa/fxfa/parser/cxfa_openaction.h
index d84eb29..2eff67c 100644
--- a/xfa/fxfa/parser/cxfa_openaction.h
+++ b/xfa/fxfa/parser/cxfa_openaction.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_OpenAction : public CXFA_Node {
+class CXFA_OpenAction final : public CXFA_Node {
public:
CXFA_OpenAction(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_OpenAction() override;
diff --git a/xfa/fxfa/parser/cxfa_operation.h b/xfa/fxfa/parser/cxfa_operation.h
index 454a354..4df63aa 100644
--- a/xfa/fxfa/parser/cxfa_operation.h
+++ b/xfa/fxfa/parser/cxfa_operation.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Operation : public CXFA_Node {
+class CXFA_Operation final : public CXFA_Node {
public:
CXFA_Operation(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Operation() override;
diff --git a/xfa/fxfa/parser/cxfa_output.h b/xfa/fxfa/parser/cxfa_output.h
index 2eb1391..45555be 100644
--- a/xfa/fxfa/parser/cxfa_output.h
+++ b/xfa/fxfa/parser/cxfa_output.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Output : public CXFA_Node {
+class CXFA_Output final : public CXFA_Node {
public:
CXFA_Output(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Output() override;
diff --git a/xfa/fxfa/parser/cxfa_outputbin.h b/xfa/fxfa/parser/cxfa_outputbin.h
index 25a1ae0..7ab4540 100644
--- a/xfa/fxfa/parser/cxfa_outputbin.h
+++ b/xfa/fxfa/parser/cxfa_outputbin.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_OutputBin : public CXFA_Node {
+class CXFA_OutputBin final : public CXFA_Node {
public:
CXFA_OutputBin(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_OutputBin() override;
diff --git a/xfa/fxfa/parser/cxfa_outputxsl.h b/xfa/fxfa/parser/cxfa_outputxsl.h
index 4535523..361ea42 100644
--- a/xfa/fxfa/parser/cxfa_outputxsl.h
+++ b/xfa/fxfa/parser/cxfa_outputxsl.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_OutputXSL : public CXFA_Node {
+class CXFA_OutputXSL final : public CXFA_Node {
public:
CXFA_OutputXSL(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_OutputXSL() override;
diff --git a/xfa/fxfa/parser/cxfa_overflow.h b/xfa/fxfa/parser/cxfa_overflow.h
index e6627ba..da2717a 100644
--- a/xfa/fxfa/parser/cxfa_overflow.h
+++ b/xfa/fxfa/parser/cxfa_overflow.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Overflow : public CXFA_Node {
+class CXFA_Overflow final : public CXFA_Node {
public:
CXFA_Overflow(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Overflow() override;
diff --git a/xfa/fxfa/parser/cxfa_overprint.h b/xfa/fxfa/parser/cxfa_overprint.h
index a9ec241..e5e360d 100644
--- a/xfa/fxfa/parser/cxfa_overprint.h
+++ b/xfa/fxfa/parser/cxfa_overprint.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Overprint : public CXFA_Node {
+class CXFA_Overprint final : public CXFA_Node {
public:
CXFA_Overprint(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Overprint() override;
diff --git a/xfa/fxfa/parser/cxfa_packet.h b/xfa/fxfa/parser/cxfa_packet.h
index 6bda61d..c94c74c 100644
--- a/xfa/fxfa/parser/cxfa_packet.h
+++ b/xfa/fxfa/parser/cxfa_packet.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Packet : public CXFA_Node {
+class CXFA_Packet final : public CXFA_Node {
public:
CXFA_Packet(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Packet() override;
diff --git a/xfa/fxfa/parser/cxfa_packets.h b/xfa/fxfa/parser/cxfa_packets.h
index ebf29b6..5e0f408 100644
--- a/xfa/fxfa/parser/cxfa_packets.h
+++ b/xfa/fxfa/parser/cxfa_packets.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Packets : public CXFA_Node {
+class CXFA_Packets final : public CXFA_Node {
public:
CXFA_Packets(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Packets() override;
diff --git a/xfa/fxfa/parser/cxfa_pagearea.h b/xfa/fxfa/parser/cxfa_pagearea.h
index f3cab1e..8a8afaa 100644
--- a/xfa/fxfa/parser/cxfa_pagearea.h
+++ b/xfa/fxfa/parser/cxfa_pagearea.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_PageArea : public CXFA_Node {
+class CXFA_PageArea final : public CXFA_Node {
public:
CXFA_PageArea(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_PageArea() override;
diff --git a/xfa/fxfa/parser/cxfa_pageoffset.h b/xfa/fxfa/parser/cxfa_pageoffset.h
index a396c57..d090b11 100644
--- a/xfa/fxfa/parser/cxfa_pageoffset.h
+++ b/xfa/fxfa/parser/cxfa_pageoffset.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_PageOffset : public CXFA_Node {
+class CXFA_PageOffset final : public CXFA_Node {
public:
CXFA_PageOffset(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_PageOffset() override;
diff --git a/xfa/fxfa/parser/cxfa_pagerange.h b/xfa/fxfa/parser/cxfa_pagerange.h
index 949276a..a0317b5 100644
--- a/xfa/fxfa/parser/cxfa_pagerange.h
+++ b/xfa/fxfa/parser/cxfa_pagerange.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_PageRange : public CXFA_Node {
+class CXFA_PageRange final : public CXFA_Node {
public:
CXFA_PageRange(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_PageRange() override;
diff --git a/xfa/fxfa/parser/cxfa_pageset.h b/xfa/fxfa/parser/cxfa_pageset.h
index 9cc3b17..da71581 100644
--- a/xfa/fxfa/parser/cxfa_pageset.h
+++ b/xfa/fxfa/parser/cxfa_pageset.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_PageSet : public CXFA_Node {
+class CXFA_PageSet final : public CXFA_Node {
public:
CXFA_PageSet(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_PageSet() override;
diff --git a/xfa/fxfa/parser/cxfa_pagination.h b/xfa/fxfa/parser/cxfa_pagination.h
index a455ecb..9bbd820 100644
--- a/xfa/fxfa/parser/cxfa_pagination.h
+++ b/xfa/fxfa/parser/cxfa_pagination.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Pagination : public CXFA_Node {
+class CXFA_Pagination final : public CXFA_Node {
public:
CXFA_Pagination(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Pagination() override;
diff --git a/xfa/fxfa/parser/cxfa_paginationoverride.h b/xfa/fxfa/parser/cxfa_paginationoverride.h
index 9cc9528..4f0efba 100644
--- a/xfa/fxfa/parser/cxfa_paginationoverride.h
+++ b/xfa/fxfa/parser/cxfa_paginationoverride.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_PaginationOverride : public CXFA_Node {
+class CXFA_PaginationOverride final : public CXFA_Node {
public:
CXFA_PaginationOverride(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_PaginationOverride() override;
diff --git a/xfa/fxfa/parser/cxfa_para.h b/xfa/fxfa/parser/cxfa_para.h
index afb48ce..7fd39a6 100644
--- a/xfa/fxfa/parser/cxfa_para.h
+++ b/xfa/fxfa/parser/cxfa_para.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Para : public CXFA_Node {
+class CXFA_Para final : public CXFA_Node {
public:
CXFA_Para(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Para() override;
diff --git a/xfa/fxfa/parser/cxfa_part.h b/xfa/fxfa/parser/cxfa_part.h
index 3db7639..99c2c59 100644
--- a/xfa/fxfa/parser/cxfa_part.h
+++ b/xfa/fxfa/parser/cxfa_part.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Part : public CXFA_Node {
+class CXFA_Part final : public CXFA_Node {
public:
CXFA_Part(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Part() override;
diff --git a/xfa/fxfa/parser/cxfa_password.h b/xfa/fxfa/parser/cxfa_password.h
index 904f91f..a2cbca7 100644
--- a/xfa/fxfa/parser/cxfa_password.h
+++ b/xfa/fxfa/parser/cxfa_password.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Password : public CXFA_Node {
+class CXFA_Password final : public CXFA_Node {
public:
CXFA_Password(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Password() override;
diff --git a/xfa/fxfa/parser/cxfa_passwordedit.h b/xfa/fxfa/parser/cxfa_passwordedit.h
index 6c8e8e5..fae812f 100644
--- a/xfa/fxfa/parser/cxfa_passwordedit.h
+++ b/xfa/fxfa/parser/cxfa_passwordedit.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_PasswordEdit : public CXFA_Node {
+class CXFA_PasswordEdit final : public CXFA_Node {
public:
CXFA_PasswordEdit(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_PasswordEdit() override;
diff --git a/xfa/fxfa/parser/cxfa_pattern.h b/xfa/fxfa/parser/cxfa_pattern.h
index 7533ac9..04119c4 100644
--- a/xfa/fxfa/parser/cxfa_pattern.h
+++ b/xfa/fxfa/parser/cxfa_pattern.h
@@ -14,7 +14,7 @@
class CXFA_Color;
class CXFA_Graphics;
-class CXFA_Pattern : public CXFA_Node {
+class CXFA_Pattern final : public CXFA_Node {
public:
static constexpr XFA_AttributeEnum kDefaultType = XFA_AttributeEnum::Unknown;
diff --git a/xfa/fxfa/parser/cxfa_pcl.h b/xfa/fxfa/parser/cxfa_pcl.h
index 9b78265..c9d94d6 100644
--- a/xfa/fxfa/parser/cxfa_pcl.h
+++ b/xfa/fxfa/parser/cxfa_pcl.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Pcl : public CXFA_Node {
+class CXFA_Pcl final : public CXFA_Node {
public:
CXFA_Pcl(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Pcl() override;
diff --git a/xfa/fxfa/parser/cxfa_pdf.h b/xfa/fxfa/parser/cxfa_pdf.h
index d0925c8..00e4d38 100644
--- a/xfa/fxfa/parser/cxfa_pdf.h
+++ b/xfa/fxfa/parser/cxfa_pdf.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Pdf : public CXFA_Node {
+class CXFA_Pdf final : public CXFA_Node {
public:
CXFA_Pdf(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Pdf() override;
diff --git a/xfa/fxfa/parser/cxfa_pdfa.h b/xfa/fxfa/parser/cxfa_pdfa.h
index d0816a2..e43f025 100644
--- a/xfa/fxfa/parser/cxfa_pdfa.h
+++ b/xfa/fxfa/parser/cxfa_pdfa.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Pdfa : public CXFA_Node {
+class CXFA_Pdfa final : public CXFA_Node {
public:
CXFA_Pdfa(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Pdfa() override;
diff --git a/xfa/fxfa/parser/cxfa_permissions.h b/xfa/fxfa/parser/cxfa_permissions.h
index dca9018..79b3bf1 100644
--- a/xfa/fxfa/parser/cxfa_permissions.h
+++ b/xfa/fxfa/parser/cxfa_permissions.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Permissions : public CXFA_Node {
+class CXFA_Permissions final : public CXFA_Node {
public:
CXFA_Permissions(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Permissions() override;
diff --git a/xfa/fxfa/parser/cxfa_picktraybypdfsize.h b/xfa/fxfa/parser/cxfa_picktraybypdfsize.h
index ef75e5c..3871552 100644
--- a/xfa/fxfa/parser/cxfa_picktraybypdfsize.h
+++ b/xfa/fxfa/parser/cxfa_picktraybypdfsize.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_PickTrayByPDFSize : public CXFA_Node {
+class CXFA_PickTrayByPDFSize final : public CXFA_Node {
public:
CXFA_PickTrayByPDFSize(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_PickTrayByPDFSize() override;
diff --git a/xfa/fxfa/parser/cxfa_picture.h b/xfa/fxfa/parser/cxfa_picture.h
index 9fd2c55..304c7b9 100644
--- a/xfa/fxfa/parser/cxfa_picture.h
+++ b/xfa/fxfa/parser/cxfa_picture.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Picture : public CXFA_Node {
+class CXFA_Picture final : public CXFA_Node {
public:
CXFA_Picture(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Picture() override;
diff --git a/xfa/fxfa/parser/cxfa_plaintextmetadata.h b/xfa/fxfa/parser/cxfa_plaintextmetadata.h
index 03dce65..65e0ded 100644
--- a/xfa/fxfa/parser/cxfa_plaintextmetadata.h
+++ b/xfa/fxfa/parser/cxfa_plaintextmetadata.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_PlaintextMetadata : public CXFA_Node {
+class CXFA_PlaintextMetadata final : public CXFA_Node {
public:
CXFA_PlaintextMetadata(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_PlaintextMetadata() override;
diff --git a/xfa/fxfa/parser/cxfa_presence.h b/xfa/fxfa/parser/cxfa_presence.h
index a9b7766..1bd6e45 100644
--- a/xfa/fxfa/parser/cxfa_presence.h
+++ b/xfa/fxfa/parser/cxfa_presence.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Presence : public CXFA_Node {
+class CXFA_Presence final : public CXFA_Node {
public:
CXFA_Presence(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Presence() override;
diff --git a/xfa/fxfa/parser/cxfa_present.h b/xfa/fxfa/parser/cxfa_present.h
index 13b3c61..36db503 100644
--- a/xfa/fxfa/parser/cxfa_present.h
+++ b/xfa/fxfa/parser/cxfa_present.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Present : public CXFA_Node {
+class CXFA_Present final : public CXFA_Node {
public:
CXFA_Present(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Present() override;
diff --git a/xfa/fxfa/parser/cxfa_print.h b/xfa/fxfa/parser/cxfa_print.h
index 5f2513e..7f6fff9 100644
--- a/xfa/fxfa/parser/cxfa_print.h
+++ b/xfa/fxfa/parser/cxfa_print.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Print : public CXFA_Node {
+class CXFA_Print final : public CXFA_Node {
public:
CXFA_Print(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Print() override;
diff --git a/xfa/fxfa/parser/cxfa_printername.h b/xfa/fxfa/parser/cxfa_printername.h
index 4f07885..a85d61e 100644
--- a/xfa/fxfa/parser/cxfa_printername.h
+++ b/xfa/fxfa/parser/cxfa_printername.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_PrinterName : public CXFA_Node {
+class CXFA_PrinterName final : public CXFA_Node {
public:
CXFA_PrinterName(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_PrinterName() override;
diff --git a/xfa/fxfa/parser/cxfa_printhighquality.h b/xfa/fxfa/parser/cxfa_printhighquality.h
index 6cd61125..6268489 100644
--- a/xfa/fxfa/parser/cxfa_printhighquality.h
+++ b/xfa/fxfa/parser/cxfa_printhighquality.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_PrintHighQuality : public CXFA_Node {
+class CXFA_PrintHighQuality final : public CXFA_Node {
public:
CXFA_PrintHighQuality(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_PrintHighQuality() override;
diff --git a/xfa/fxfa/parser/cxfa_printscaling.h b/xfa/fxfa/parser/cxfa_printscaling.h
index e21d427..76bf112 100644
--- a/xfa/fxfa/parser/cxfa_printscaling.h
+++ b/xfa/fxfa/parser/cxfa_printscaling.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_PrintScaling : public CXFA_Node {
+class CXFA_PrintScaling final : public CXFA_Node {
public:
CXFA_PrintScaling(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_PrintScaling() override;
diff --git a/xfa/fxfa/parser/cxfa_producer.h b/xfa/fxfa/parser/cxfa_producer.h
index 584826e..c40a334 100644
--- a/xfa/fxfa/parser/cxfa_producer.h
+++ b/xfa/fxfa/parser/cxfa_producer.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Producer : public CXFA_Node {
+class CXFA_Producer final : public CXFA_Node {
public:
CXFA_Producer(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Producer() override;
diff --git a/xfa/fxfa/parser/cxfa_proto.h b/xfa/fxfa/parser/cxfa_proto.h
index 8e1d84a..5af7ba2 100644
--- a/xfa/fxfa/parser/cxfa_proto.h
+++ b/xfa/fxfa/parser/cxfa_proto.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Proto : public CXFA_Node {
+class CXFA_Proto final : public CXFA_Node {
public:
CXFA_Proto(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Proto() override;
diff --git a/xfa/fxfa/parser/cxfa_ps.h b/xfa/fxfa/parser/cxfa_ps.h
index 5ef7e82..f51c510 100644
--- a/xfa/fxfa/parser/cxfa_ps.h
+++ b/xfa/fxfa/parser/cxfa_ps.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Ps : public CXFA_Node {
+class CXFA_Ps final : public CXFA_Node {
public:
CXFA_Ps(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Ps() override;
diff --git a/xfa/fxfa/parser/cxfa_psmap.h b/xfa/fxfa/parser/cxfa_psmap.h
index 8297aaa..802e123 100644
--- a/xfa/fxfa/parser/cxfa_psmap.h
+++ b/xfa/fxfa/parser/cxfa_psmap.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_PsMap : public CXFA_Node {
+class CXFA_PsMap final : public CXFA_Node {
public:
CXFA_PsMap(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_PsMap() override;
diff --git a/xfa/fxfa/parser/cxfa_query.h b/xfa/fxfa/parser/cxfa_query.h
index 548e7fc..7d62c68 100644
--- a/xfa/fxfa/parser/cxfa_query.h
+++ b/xfa/fxfa/parser/cxfa_query.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Query : public CXFA_Node {
+class CXFA_Query final : public CXFA_Node {
public:
CXFA_Query(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Query() override;
diff --git a/xfa/fxfa/parser/cxfa_radial.h b/xfa/fxfa/parser/cxfa_radial.h
index b7ce95c..8fb30b5 100644
--- a/xfa/fxfa/parser/cxfa_radial.h
+++ b/xfa/fxfa/parser/cxfa_radial.h
@@ -14,7 +14,7 @@
class CXFA_Color;
class CXFA_Graphics;
-class CXFA_Radial : public CXFA_Node {
+class CXFA_Radial final : public CXFA_Node {
public:
CXFA_Radial(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Radial() override;
diff --git a/xfa/fxfa/parser/cxfa_range.h b/xfa/fxfa/parser/cxfa_range.h
index 23c8d1f..5d8920d 100644
--- a/xfa/fxfa/parser/cxfa_range.h
+++ b/xfa/fxfa/parser/cxfa_range.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Range : public CXFA_Node {
+class CXFA_Range final : public CXFA_Node {
public:
CXFA_Range(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Range() override;
diff --git a/xfa/fxfa/parser/cxfa_reason.h b/xfa/fxfa/parser/cxfa_reason.h
index 451fd82..1475637 100644
--- a/xfa/fxfa/parser/cxfa_reason.h
+++ b/xfa/fxfa/parser/cxfa_reason.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Reason : public CXFA_Node {
+class CXFA_Reason final : public CXFA_Node {
public:
CXFA_Reason(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Reason() override;
diff --git a/xfa/fxfa/parser/cxfa_reasons.h b/xfa/fxfa/parser/cxfa_reasons.h
index 57e9e09..673a9b2 100644
--- a/xfa/fxfa/parser/cxfa_reasons.h
+++ b/xfa/fxfa/parser/cxfa_reasons.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Reasons : public CXFA_Node {
+class CXFA_Reasons final : public CXFA_Node {
public:
CXFA_Reasons(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Reasons() override;
diff --git a/xfa/fxfa/parser/cxfa_record.h b/xfa/fxfa/parser/cxfa_record.h
index bd2622d..de0d0c4 100644
--- a/xfa/fxfa/parser/cxfa_record.h
+++ b/xfa/fxfa/parser/cxfa_record.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Record : public CXFA_Node {
+class CXFA_Record final : public CXFA_Node {
public:
CXFA_Record(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Record() override;
diff --git a/xfa/fxfa/parser/cxfa_recordset.h b/xfa/fxfa/parser/cxfa_recordset.h
index c623516..a9895bd 100644
--- a/xfa/fxfa/parser/cxfa_recordset.h
+++ b/xfa/fxfa/parser/cxfa_recordset.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_RecordSet : public CXFA_Node {
+class CXFA_RecordSet final : public CXFA_Node {
public:
CXFA_RecordSet(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_RecordSet() override;
diff --git a/xfa/fxfa/parser/cxfa_ref.h b/xfa/fxfa/parser/cxfa_ref.h
index 630510f..5ab8e00 100644
--- a/xfa/fxfa/parser/cxfa_ref.h
+++ b/xfa/fxfa/parser/cxfa_ref.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Ref : public CXFA_Node {
+class CXFA_Ref final : public CXFA_Node {
public:
CXFA_Ref(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Ref() override;
diff --git a/xfa/fxfa/parser/cxfa_relevant.h b/xfa/fxfa/parser/cxfa_relevant.h
index 2018c95..03283c3 100644
--- a/xfa/fxfa/parser/cxfa_relevant.h
+++ b/xfa/fxfa/parser/cxfa_relevant.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Relevant : public CXFA_Node {
+class CXFA_Relevant final : public CXFA_Node {
public:
CXFA_Relevant(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Relevant() override;
diff --git a/xfa/fxfa/parser/cxfa_rename.h b/xfa/fxfa/parser/cxfa_rename.h
index 665c852..f50d852 100644
--- a/xfa/fxfa/parser/cxfa_rename.h
+++ b/xfa/fxfa/parser/cxfa_rename.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Rename : public CXFA_Node {
+class CXFA_Rename final : public CXFA_Node {
public:
CXFA_Rename(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Rename() override;
diff --git a/xfa/fxfa/parser/cxfa_renderpolicy.h b/xfa/fxfa/parser/cxfa_renderpolicy.h
index 24ddf46..4947289 100644
--- a/xfa/fxfa/parser/cxfa_renderpolicy.h
+++ b/xfa/fxfa/parser/cxfa_renderpolicy.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_RenderPolicy : public CXFA_Node {
+class CXFA_RenderPolicy final : public CXFA_Node {
public:
CXFA_RenderPolicy(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_RenderPolicy() override;
diff --git a/xfa/fxfa/parser/cxfa_rootelement.h b/xfa/fxfa/parser/cxfa_rootelement.h
index a995e8c..4a9218e 100644
--- a/xfa/fxfa/parser/cxfa_rootelement.h
+++ b/xfa/fxfa/parser/cxfa_rootelement.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_RootElement : public CXFA_Node {
+class CXFA_RootElement final : public CXFA_Node {
public:
CXFA_RootElement(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_RootElement() override;
diff --git a/xfa/fxfa/parser/cxfa_runscripts.h b/xfa/fxfa/parser/cxfa_runscripts.h
index d2ecaa0..2f80b0d 100644
--- a/xfa/fxfa/parser/cxfa_runscripts.h
+++ b/xfa/fxfa/parser/cxfa_runscripts.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_RunScripts : public CXFA_Node {
+class CXFA_RunScripts final : public CXFA_Node {
public:
CXFA_RunScripts(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_RunScripts() override;
diff --git a/xfa/fxfa/parser/cxfa_script.h b/xfa/fxfa/parser/cxfa_script.h
index 8ea7aac..5f48f45 100644
--- a/xfa/fxfa/parser/cxfa_script.h
+++ b/xfa/fxfa/parser/cxfa_script.h
@@ -10,7 +10,7 @@
#include "core/fxcrt/widestring.h"
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Script : public CXFA_Node {
+class CXFA_Script final : public CXFA_Node {
public:
enum class Type {
Formcalc = 0,
diff --git a/xfa/fxfa/parser/cxfa_scriptmodel.h b/xfa/fxfa/parser/cxfa_scriptmodel.h
index 40bc96e..a71073e 100644
--- a/xfa/fxfa/parser/cxfa_scriptmodel.h
+++ b/xfa/fxfa/parser/cxfa_scriptmodel.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_ScriptModel : public CXFA_Node {
+class CXFA_ScriptModel final : public CXFA_Node {
public:
CXFA_ScriptModel(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_ScriptModel() override;
diff --git a/xfa/fxfa/parser/cxfa_select.h b/xfa/fxfa/parser/cxfa_select.h
index 76651e0..82fc0d2 100644
--- a/xfa/fxfa/parser/cxfa_select.h
+++ b/xfa/fxfa/parser/cxfa_select.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Select : public CXFA_Node {
+class CXFA_Select final : public CXFA_Node {
public:
CXFA_Select(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Select() override;
diff --git a/xfa/fxfa/parser/cxfa_setproperty.h b/xfa/fxfa/parser/cxfa_setproperty.h
index 3f8f430..aab588b 100644
--- a/xfa/fxfa/parser/cxfa_setproperty.h
+++ b/xfa/fxfa/parser/cxfa_setproperty.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_SetProperty : public CXFA_Node {
+class CXFA_SetProperty final : public CXFA_Node {
public:
CXFA_SetProperty(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_SetProperty() override;
diff --git a/xfa/fxfa/parser/cxfa_severity.h b/xfa/fxfa/parser/cxfa_severity.h
index 7114455..b2283c9 100644
--- a/xfa/fxfa/parser/cxfa_severity.h
+++ b/xfa/fxfa/parser/cxfa_severity.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Severity : public CXFA_Node {
+class CXFA_Severity final : public CXFA_Node {
public:
CXFA_Severity(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Severity() override;
diff --git a/xfa/fxfa/parser/cxfa_sharptext.h b/xfa/fxfa/parser/cxfa_sharptext.h
index 89a050b..f2a41e8 100644
--- a/xfa/fxfa/parser/cxfa_sharptext.h
+++ b/xfa/fxfa/parser/cxfa_sharptext.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Sharptext : public CXFA_Node {
+class CXFA_Sharptext final : public CXFA_Node {
public:
CXFA_Sharptext(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Sharptext() override;
diff --git a/xfa/fxfa/parser/cxfa_sharpxhtml.h b/xfa/fxfa/parser/cxfa_sharpxhtml.h
index 3f6cf79..b73789d 100644
--- a/xfa/fxfa/parser/cxfa_sharpxhtml.h
+++ b/xfa/fxfa/parser/cxfa_sharpxhtml.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_SharpxHTML : public CXFA_Node {
+class CXFA_SharpxHTML final : public CXFA_Node {
public:
CXFA_SharpxHTML(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_SharpxHTML() override;
diff --git a/xfa/fxfa/parser/cxfa_sharpxml.h b/xfa/fxfa/parser/cxfa_sharpxml.h
index a065857..b2e467a 100644
--- a/xfa/fxfa/parser/cxfa_sharpxml.h
+++ b/xfa/fxfa/parser/cxfa_sharpxml.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Sharpxml : public CXFA_Node {
+class CXFA_Sharpxml final : public CXFA_Node {
public:
CXFA_Sharpxml(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Sharpxml() override;
diff --git a/xfa/fxfa/parser/cxfa_signature.h b/xfa/fxfa/parser/cxfa_signature.h
index 3491a1e..678e892 100644
--- a/xfa/fxfa/parser/cxfa_signature.h
+++ b/xfa/fxfa/parser/cxfa_signature.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Signature : public CXFA_Node {
+class CXFA_Signature final : public CXFA_Node {
public:
CXFA_Signature(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Signature() override;
diff --git a/xfa/fxfa/parser/cxfa_signatureproperties.h b/xfa/fxfa/parser/cxfa_signatureproperties.h
index 800b780..a66346e 100644
--- a/xfa/fxfa/parser/cxfa_signatureproperties.h
+++ b/xfa/fxfa/parser/cxfa_signatureproperties.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_SignatureProperties : public CXFA_Node {
+class CXFA_SignatureProperties final : public CXFA_Node {
public:
CXFA_SignatureProperties(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_SignatureProperties() override;
diff --git a/xfa/fxfa/parser/cxfa_signdata.h b/xfa/fxfa/parser/cxfa_signdata.h
index 3ad39f5..e28460d 100644
--- a/xfa/fxfa/parser/cxfa_signdata.h
+++ b/xfa/fxfa/parser/cxfa_signdata.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_SignData : public CXFA_Node {
+class CXFA_SignData final : public CXFA_Node {
public:
CXFA_SignData(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_SignData() override;
diff --git a/xfa/fxfa/parser/cxfa_signing.h b/xfa/fxfa/parser/cxfa_signing.h
index 6df9a18..7c37403 100644
--- a/xfa/fxfa/parser/cxfa_signing.h
+++ b/xfa/fxfa/parser/cxfa_signing.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Signing : public CXFA_Node {
+class CXFA_Signing final : public CXFA_Node {
public:
CXFA_Signing(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Signing() override;
diff --git a/xfa/fxfa/parser/cxfa_silentprint.h b/xfa/fxfa/parser/cxfa_silentprint.h
index 6ef5fcf..378084d 100644
--- a/xfa/fxfa/parser/cxfa_silentprint.h
+++ b/xfa/fxfa/parser/cxfa_silentprint.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_SilentPrint : public CXFA_Node {
+class CXFA_SilentPrint final : public CXFA_Node {
public:
CXFA_SilentPrint(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_SilentPrint() override;
diff --git a/xfa/fxfa/parser/cxfa_soapaction.h b/xfa/fxfa/parser/cxfa_soapaction.h
index b803eae..b7f7526 100644
--- a/xfa/fxfa/parser/cxfa_soapaction.h
+++ b/xfa/fxfa/parser/cxfa_soapaction.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_SoapAction : public CXFA_Node {
+class CXFA_SoapAction final : public CXFA_Node {
public:
CXFA_SoapAction(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_SoapAction() override;
diff --git a/xfa/fxfa/parser/cxfa_soapaddress.h b/xfa/fxfa/parser/cxfa_soapaddress.h
index b0feff4..130ddf3 100644
--- a/xfa/fxfa/parser/cxfa_soapaddress.h
+++ b/xfa/fxfa/parser/cxfa_soapaddress.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_SoapAddress : public CXFA_Node {
+class CXFA_SoapAddress final : public CXFA_Node {
public:
CXFA_SoapAddress(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_SoapAddress() override;
diff --git a/xfa/fxfa/parser/cxfa_solid.h b/xfa/fxfa/parser/cxfa_solid.h
index ec1e2d0..28666ef 100644
--- a/xfa/fxfa/parser/cxfa_solid.h
+++ b/xfa/fxfa/parser/cxfa_solid.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Solid : public CXFA_Node {
+class CXFA_Solid final : public CXFA_Node {
public:
CXFA_Solid(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Solid() override;
diff --git a/xfa/fxfa/parser/cxfa_source.h b/xfa/fxfa/parser/cxfa_source.h
index af74be8..96af083 100644
--- a/xfa/fxfa/parser/cxfa_source.h
+++ b/xfa/fxfa/parser/cxfa_source.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Source : public CXFA_Node {
+class CXFA_Source final : public CXFA_Node {
public:
CXFA_Source(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Source() override;
diff --git a/xfa/fxfa/parser/cxfa_sourceset.h b/xfa/fxfa/parser/cxfa_sourceset.h
index b07e12b..c31b94c 100644
--- a/xfa/fxfa/parser/cxfa_sourceset.h
+++ b/xfa/fxfa/parser/cxfa_sourceset.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_SourceSet : public CXFA_Node {
+class CXFA_SourceSet final : public CXFA_Node {
public:
CXFA_SourceSet(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_SourceSet() override;
diff --git a/xfa/fxfa/parser/cxfa_speak.h b/xfa/fxfa/parser/cxfa_speak.h
index 80ef54b..5497927 100644
--- a/xfa/fxfa/parser/cxfa_speak.h
+++ b/xfa/fxfa/parser/cxfa_speak.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Speak : public CXFA_Node {
+class CXFA_Speak final : public CXFA_Node {
public:
CXFA_Speak(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Speak() override;
diff --git a/xfa/fxfa/parser/cxfa_staple.h b/xfa/fxfa/parser/cxfa_staple.h
index 9651fa4..44ef654 100644
--- a/xfa/fxfa/parser/cxfa_staple.h
+++ b/xfa/fxfa/parser/cxfa_staple.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Staple : public CXFA_Node {
+class CXFA_Staple final : public CXFA_Node {
public:
CXFA_Staple(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Staple() override;
diff --git a/xfa/fxfa/parser/cxfa_startnode.h b/xfa/fxfa/parser/cxfa_startnode.h
index 51815e5..b8bab06 100644
--- a/xfa/fxfa/parser/cxfa_startnode.h
+++ b/xfa/fxfa/parser/cxfa_startnode.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_StartNode : public CXFA_Node {
+class CXFA_StartNode final : public CXFA_Node {
public:
CXFA_StartNode(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_StartNode() override;
diff --git a/xfa/fxfa/parser/cxfa_startpage.h b/xfa/fxfa/parser/cxfa_startpage.h
index 6262aa7..ae0ecee 100644
--- a/xfa/fxfa/parser/cxfa_startpage.h
+++ b/xfa/fxfa/parser/cxfa_startpage.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_StartPage : public CXFA_Node {
+class CXFA_StartPage final : public CXFA_Node {
public:
CXFA_StartPage(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_StartPage() override;
diff --git a/xfa/fxfa/parser/cxfa_stipple.h b/xfa/fxfa/parser/cxfa_stipple.h
index 839534b..af5581f 100644
--- a/xfa/fxfa/parser/cxfa_stipple.h
+++ b/xfa/fxfa/parser/cxfa_stipple.h
@@ -14,7 +14,7 @@
class CXFA_Color;
class CXFA_Graphics;
-class CXFA_Stipple : public CXFA_Node {
+class CXFA_Stipple final : public CXFA_Node {
public:
static int32_t GetDefaultRate() { return 50; }
diff --git a/xfa/fxfa/parser/cxfa_subform.h b/xfa/fxfa/parser/cxfa_subform.h
index 00b2e17..3d16d10 100644
--- a/xfa/fxfa/parser/cxfa_subform.h
+++ b/xfa/fxfa/parser/cxfa_subform.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Subform : public CXFA_Node {
+class CXFA_Subform final : public CXFA_Node {
public:
CXFA_Subform(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Subform() override;
diff --git a/xfa/fxfa/parser/cxfa_subformset.h b/xfa/fxfa/parser/cxfa_subformset.h
index 8e0f3ea..12b9e9f 100644
--- a/xfa/fxfa/parser/cxfa_subformset.h
+++ b/xfa/fxfa/parser/cxfa_subformset.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_SubformSet : public CXFA_Node {
+class CXFA_SubformSet final : public CXFA_Node {
public:
CXFA_SubformSet(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_SubformSet() override;
diff --git a/xfa/fxfa/parser/cxfa_subjectdn.h b/xfa/fxfa/parser/cxfa_subjectdn.h
index 0861d75..a4d94d7 100644
--- a/xfa/fxfa/parser/cxfa_subjectdn.h
+++ b/xfa/fxfa/parser/cxfa_subjectdn.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_SubjectDN : public CXFA_Node {
+class CXFA_SubjectDN final : public CXFA_Node {
public:
CXFA_SubjectDN(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_SubjectDN() override;
diff --git a/xfa/fxfa/parser/cxfa_subjectdns.h b/xfa/fxfa/parser/cxfa_subjectdns.h
index e9d739c..03d770b 100644
--- a/xfa/fxfa/parser/cxfa_subjectdns.h
+++ b/xfa/fxfa/parser/cxfa_subjectdns.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_SubjectDNs : public CXFA_Node {
+class CXFA_SubjectDNs final : public CXFA_Node {
public:
CXFA_SubjectDNs(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_SubjectDNs() override;
diff --git a/xfa/fxfa/parser/cxfa_submit.h b/xfa/fxfa/parser/cxfa_submit.h
index 24d5f11..8f7b4bf 100644
--- a/xfa/fxfa/parser/cxfa_submit.h
+++ b/xfa/fxfa/parser/cxfa_submit.h
@@ -10,7 +10,7 @@
#include "core/fxcrt/widestring.h"
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Submit : public CXFA_Node {
+class CXFA_Submit final : public CXFA_Node {
public:
CXFA_Submit(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Submit() override;
diff --git a/xfa/fxfa/parser/cxfa_submitformat.h b/xfa/fxfa/parser/cxfa_submitformat.h
index adca1e9..bd6df26 100644
--- a/xfa/fxfa/parser/cxfa_submitformat.h
+++ b/xfa/fxfa/parser/cxfa_submitformat.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_SubmitFormat : public CXFA_Node {
+class CXFA_SubmitFormat final : public CXFA_Node {
public:
CXFA_SubmitFormat(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_SubmitFormat() override;
diff --git a/xfa/fxfa/parser/cxfa_submiturl.h b/xfa/fxfa/parser/cxfa_submiturl.h
index 8d87db9..f1914db 100644
--- a/xfa/fxfa/parser/cxfa_submiturl.h
+++ b/xfa/fxfa/parser/cxfa_submiturl.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_SubmitUrl : public CXFA_Node {
+class CXFA_SubmitUrl final : public CXFA_Node {
public:
CXFA_SubmitUrl(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_SubmitUrl() override;
diff --git a/xfa/fxfa/parser/cxfa_subsetbelow.h b/xfa/fxfa/parser/cxfa_subsetbelow.h
index db912fe..230a563 100644
--- a/xfa/fxfa/parser/cxfa_subsetbelow.h
+++ b/xfa/fxfa/parser/cxfa_subsetbelow.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_SubsetBelow : public CXFA_Node {
+class CXFA_SubsetBelow final : public CXFA_Node {
public:
CXFA_SubsetBelow(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_SubsetBelow() override;
diff --git a/xfa/fxfa/parser/cxfa_suppressbanner.h b/xfa/fxfa/parser/cxfa_suppressbanner.h
index 79013a2..40057d0 100644
--- a/xfa/fxfa/parser/cxfa_suppressbanner.h
+++ b/xfa/fxfa/parser/cxfa_suppressbanner.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_SuppressBanner : public CXFA_Node {
+class CXFA_SuppressBanner final : public CXFA_Node {
public:
CXFA_SuppressBanner(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_SuppressBanner() override;
diff --git a/xfa/fxfa/parser/cxfa_tagged.h b/xfa/fxfa/parser/cxfa_tagged.h
index 50b1ba4..ff54423 100644
--- a/xfa/fxfa/parser/cxfa_tagged.h
+++ b/xfa/fxfa/parser/cxfa_tagged.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Tagged : public CXFA_Node {
+class CXFA_Tagged final : public CXFA_Node {
public:
CXFA_Tagged(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Tagged() override;
diff --git a/xfa/fxfa/parser/cxfa_template.h b/xfa/fxfa/parser/cxfa_template.h
index 34b035f..fa9b999 100644
--- a/xfa/fxfa/parser/cxfa_template.h
+++ b/xfa/fxfa/parser/cxfa_template.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Template : public CXFA_Node {
+class CXFA_Template final : public CXFA_Node {
public:
CXFA_Template(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Template() override;
diff --git a/xfa/fxfa/parser/cxfa_templatecache.h b/xfa/fxfa/parser/cxfa_templatecache.h
index 45953fe..dd0136d 100644
--- a/xfa/fxfa/parser/cxfa_templatecache.h
+++ b/xfa/fxfa/parser/cxfa_templatecache.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_TemplateCache : public CXFA_Node {
+class CXFA_TemplateCache final : public CXFA_Node {
public:
CXFA_TemplateCache(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_TemplateCache() override;
diff --git a/xfa/fxfa/parser/cxfa_text.h b/xfa/fxfa/parser/cxfa_text.h
index a75aef2..811ce1a 100644
--- a/xfa/fxfa/parser/cxfa_text.h
+++ b/xfa/fxfa/parser/cxfa_text.h
@@ -10,7 +10,7 @@
#include "core/fxcrt/fx_string.h"
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Text : public CXFA_Node {
+class CXFA_Text final : public CXFA_Node {
public:
CXFA_Text(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Text() override;
diff --git a/xfa/fxfa/parser/cxfa_textedit.h b/xfa/fxfa/parser/cxfa_textedit.h
index 97c9764..d4cafa4 100644
--- a/xfa/fxfa/parser/cxfa_textedit.h
+++ b/xfa/fxfa/parser/cxfa_textedit.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_TextEdit : public CXFA_Node {
+class CXFA_TextEdit final : public CXFA_Node {
public:
CXFA_TextEdit(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_TextEdit() override;
diff --git a/xfa/fxfa/parser/cxfa_thisproxy.h b/xfa/fxfa/parser/cxfa_thisproxy.h
index f429a2c..4ec6e4a 100644
--- a/xfa/fxfa/parser/cxfa_thisproxy.h
+++ b/xfa/fxfa/parser/cxfa_thisproxy.h
@@ -12,7 +12,7 @@
class CXFA_Node;
-class CXFA_ThisProxy : public CXFA_Object {
+class CXFA_ThisProxy final : public CXFA_Object {
public:
CXFA_ThisProxy(CXFA_Node* pThisNode, CXFA_Node* pScriptNode);
~CXFA_ThisProxy() override;
diff --git a/xfa/fxfa/parser/cxfa_threshold.h b/xfa/fxfa/parser/cxfa_threshold.h
index 4bde01a..597b134 100644
--- a/xfa/fxfa/parser/cxfa_threshold.h
+++ b/xfa/fxfa/parser/cxfa_threshold.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Threshold : public CXFA_Node {
+class CXFA_Threshold final : public CXFA_Node {
public:
CXFA_Threshold(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Threshold() override;
diff --git a/xfa/fxfa/parser/cxfa_time.h b/xfa/fxfa/parser/cxfa_time.h
index efc6d02..c189bc5 100644
--- a/xfa/fxfa/parser/cxfa_time.h
+++ b/xfa/fxfa/parser/cxfa_time.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Time : public CXFA_Node {
+class CXFA_Time final : public CXFA_Node {
public:
CXFA_Time(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Time() override;
diff --git a/xfa/fxfa/parser/cxfa_timepattern.h b/xfa/fxfa/parser/cxfa_timepattern.h
index f796047..7c150a9 100644
--- a/xfa/fxfa/parser/cxfa_timepattern.h
+++ b/xfa/fxfa/parser/cxfa_timepattern.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_TimePattern : public CXFA_Node {
+class CXFA_TimePattern final : public CXFA_Node {
public:
CXFA_TimePattern(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_TimePattern() override;
diff --git a/xfa/fxfa/parser/cxfa_timepatterns.h b/xfa/fxfa/parser/cxfa_timepatterns.h
index be9337d..13c05c8 100644
--- a/xfa/fxfa/parser/cxfa_timepatterns.h
+++ b/xfa/fxfa/parser/cxfa_timepatterns.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_TimePatterns : public CXFA_Node {
+class CXFA_TimePatterns final : public CXFA_Node {
public:
CXFA_TimePatterns(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_TimePatterns() override;
diff --git a/xfa/fxfa/parser/cxfa_timestamp.h b/xfa/fxfa/parser/cxfa_timestamp.h
index 7db73e9..6a6c1ac 100644
--- a/xfa/fxfa/parser/cxfa_timestamp.h
+++ b/xfa/fxfa/parser/cxfa_timestamp.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_TimeStamp : public CXFA_Node {
+class CXFA_TimeStamp final : public CXFA_Node {
public:
CXFA_TimeStamp(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_TimeStamp() override;
diff --git a/xfa/fxfa/parser/cxfa_to.h b/xfa/fxfa/parser/cxfa_to.h
index f418f59..8510bc2 100644
--- a/xfa/fxfa/parser/cxfa_to.h
+++ b/xfa/fxfa/parser/cxfa_to.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_To : public CXFA_Node {
+class CXFA_To final : public CXFA_Node {
public:
CXFA_To(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_To() override;
diff --git a/xfa/fxfa/parser/cxfa_tooltip.h b/xfa/fxfa/parser/cxfa_tooltip.h
index 0b13282..f46ca62 100644
--- a/xfa/fxfa/parser/cxfa_tooltip.h
+++ b/xfa/fxfa/parser/cxfa_tooltip.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_ToolTip : public CXFA_Node {
+class CXFA_ToolTip final : public CXFA_Node {
public:
CXFA_ToolTip(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_ToolTip() override;
diff --git a/xfa/fxfa/parser/cxfa_trace.h b/xfa/fxfa/parser/cxfa_trace.h
index dec95da..1d76f73 100644
--- a/xfa/fxfa/parser/cxfa_trace.h
+++ b/xfa/fxfa/parser/cxfa_trace.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Trace : public CXFA_Node {
+class CXFA_Trace final : public CXFA_Node {
public:
CXFA_Trace(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Trace() override;
diff --git a/xfa/fxfa/parser/cxfa_transform.h b/xfa/fxfa/parser/cxfa_transform.h
index fde54e6..6409c6c 100644
--- a/xfa/fxfa/parser/cxfa_transform.h
+++ b/xfa/fxfa/parser/cxfa_transform.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Transform : public CXFA_Node {
+class CXFA_Transform final : public CXFA_Node {
public:
CXFA_Transform(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Transform() override;
diff --git a/xfa/fxfa/parser/cxfa_traversal.h b/xfa/fxfa/parser/cxfa_traversal.h
index 47422b2..154211b 100644
--- a/xfa/fxfa/parser/cxfa_traversal.h
+++ b/xfa/fxfa/parser/cxfa_traversal.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Traversal : public CXFA_Node {
+class CXFA_Traversal final : public CXFA_Node {
public:
CXFA_Traversal(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Traversal() override;
diff --git a/xfa/fxfa/parser/cxfa_traverse.h b/xfa/fxfa/parser/cxfa_traverse.h
index de33cb7..dec5b89 100644
--- a/xfa/fxfa/parser/cxfa_traverse.h
+++ b/xfa/fxfa/parser/cxfa_traverse.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Traverse : public CXFA_Node {
+class CXFA_Traverse final : public CXFA_Node {
public:
CXFA_Traverse(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Traverse() override;
diff --git a/xfa/fxfa/parser/cxfa_type.h b/xfa/fxfa/parser/cxfa_type.h
index 5e7d467..ef696fd 100644
--- a/xfa/fxfa/parser/cxfa_type.h
+++ b/xfa/fxfa/parser/cxfa_type.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Type : public CXFA_Node {
+class CXFA_Type final : public CXFA_Node {
public:
CXFA_Type(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Type() override;
diff --git a/xfa/fxfa/parser/cxfa_typeface.h b/xfa/fxfa/parser/cxfa_typeface.h
index cbc90c4..7b07cae 100644
--- a/xfa/fxfa/parser/cxfa_typeface.h
+++ b/xfa/fxfa/parser/cxfa_typeface.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Typeface : public CXFA_Node {
+class CXFA_Typeface final : public CXFA_Node {
public:
CXFA_Typeface(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Typeface() override;
diff --git a/xfa/fxfa/parser/cxfa_typefaces.h b/xfa/fxfa/parser/cxfa_typefaces.h
index fa4b43f..b65c57d 100644
--- a/xfa/fxfa/parser/cxfa_typefaces.h
+++ b/xfa/fxfa/parser/cxfa_typefaces.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Typefaces : public CXFA_Node {
+class CXFA_Typefaces final : public CXFA_Node {
public:
CXFA_Typefaces(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Typefaces() override;
diff --git a/xfa/fxfa/parser/cxfa_ui.h b/xfa/fxfa/parser/cxfa_ui.h
index a4c46f4..d479e95 100644
--- a/xfa/fxfa/parser/cxfa_ui.h
+++ b/xfa/fxfa/parser/cxfa_ui.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Ui : public CXFA_Node {
+class CXFA_Ui final : public CXFA_Node {
public:
CXFA_Ui(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Ui() override;
diff --git a/xfa/fxfa/parser/cxfa_update.h b/xfa/fxfa/parser/cxfa_update.h
index 9e652ea..3e6bb6c 100644
--- a/xfa/fxfa/parser/cxfa_update.h
+++ b/xfa/fxfa/parser/cxfa_update.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Update : public CXFA_Node {
+class CXFA_Update final : public CXFA_Node {
public:
CXFA_Update(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Update() override;
diff --git a/xfa/fxfa/parser/cxfa_uri.h b/xfa/fxfa/parser/cxfa_uri.h
index bb31596..96252fc 100644
--- a/xfa/fxfa/parser/cxfa_uri.h
+++ b/xfa/fxfa/parser/cxfa_uri.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Uri : public CXFA_Node {
+class CXFA_Uri final : public CXFA_Node {
public:
CXFA_Uri(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Uri() override;
diff --git a/xfa/fxfa/parser/cxfa_user.h b/xfa/fxfa/parser/cxfa_user.h
index 3aad173..eca1a37 100644
--- a/xfa/fxfa/parser/cxfa_user.h
+++ b/xfa/fxfa/parser/cxfa_user.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_User : public CXFA_Node {
+class CXFA_User final : public CXFA_Node {
public:
CXFA_User(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_User() override;
diff --git a/xfa/fxfa/parser/cxfa_validate.h b/xfa/fxfa/parser/cxfa_validate.h
index a601308..140886f 100644
--- a/xfa/fxfa/parser/cxfa_validate.h
+++ b/xfa/fxfa/parser/cxfa_validate.h
@@ -11,7 +11,7 @@
class CXFA_Script;
-class CXFA_Validate : public CXFA_Node {
+class CXFA_Validate final : public CXFA_Node {
public:
CXFA_Validate(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Validate() override;
diff --git a/xfa/fxfa/parser/cxfa_validateapprovalsignatures.h b/xfa/fxfa/parser/cxfa_validateapprovalsignatures.h
index d7dac98..0504168 100644
--- a/xfa/fxfa/parser/cxfa_validateapprovalsignatures.h
+++ b/xfa/fxfa/parser/cxfa_validateapprovalsignatures.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_ValidateApprovalSignatures : public CXFA_Node {
+class CXFA_ValidateApprovalSignatures final : public CXFA_Node {
public:
CXFA_ValidateApprovalSignatures(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_ValidateApprovalSignatures() override;
diff --git a/xfa/fxfa/parser/cxfa_validationmessaging.h b/xfa/fxfa/parser/cxfa_validationmessaging.h
index 081b24c..1131788 100644
--- a/xfa/fxfa/parser/cxfa_validationmessaging.h
+++ b/xfa/fxfa/parser/cxfa_validationmessaging.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_ValidationMessaging : public CXFA_Node {
+class CXFA_ValidationMessaging final : public CXFA_Node {
public:
CXFA_ValidationMessaging(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_ValidationMessaging() override;
diff --git a/xfa/fxfa/parser/cxfa_value.h b/xfa/fxfa/parser/cxfa_value.h
index 47aeefe..ccd4c2c 100644
--- a/xfa/fxfa/parser/cxfa_value.h
+++ b/xfa/fxfa/parser/cxfa_value.h
@@ -17,7 +17,7 @@
class CXFA_Line;
class CXFA_Rectangle;
-class CXFA_Value : public CXFA_Node {
+class CXFA_Value final : public CXFA_Node {
public:
CXFA_Value(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Value() override;
diff --git a/xfa/fxfa/parser/cxfa_variables.h b/xfa/fxfa/parser/cxfa_variables.h
index 4c4cb4e..b9f6d72 100644
--- a/xfa/fxfa/parser/cxfa_variables.h
+++ b/xfa/fxfa/parser/cxfa_variables.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Variables : public CXFA_Node {
+class CXFA_Variables final : public CXFA_Node {
public:
CXFA_Variables(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Variables() override;
diff --git a/xfa/fxfa/parser/cxfa_version.h b/xfa/fxfa/parser/cxfa_version.h
index 34462fb..4b4f425 100644
--- a/xfa/fxfa/parser/cxfa_version.h
+++ b/xfa/fxfa/parser/cxfa_version.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Version : public CXFA_Node {
+class CXFA_Version final : public CXFA_Node {
public:
CXFA_Version(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Version() override;
diff --git a/xfa/fxfa/parser/cxfa_versioncontrol.h b/xfa/fxfa/parser/cxfa_versioncontrol.h
index 4688f55..733b817 100644
--- a/xfa/fxfa/parser/cxfa_versioncontrol.h
+++ b/xfa/fxfa/parser/cxfa_versioncontrol.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_VersionControl : public CXFA_Node {
+class CXFA_VersionControl final : public CXFA_Node {
public:
CXFA_VersionControl(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_VersionControl() override;
diff --git a/xfa/fxfa/parser/cxfa_viewerpreferences.h b/xfa/fxfa/parser/cxfa_viewerpreferences.h
index bf831ee..229061f 100644
--- a/xfa/fxfa/parser/cxfa_viewerpreferences.h
+++ b/xfa/fxfa/parser/cxfa_viewerpreferences.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_ViewerPreferences : public CXFA_Node {
+class CXFA_ViewerPreferences final : public CXFA_Node {
public:
CXFA_ViewerPreferences(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_ViewerPreferences() override;
diff --git a/xfa/fxfa/parser/cxfa_webclient.h b/xfa/fxfa/parser/cxfa_webclient.h
index b778689..41da046 100644
--- a/xfa/fxfa/parser/cxfa_webclient.h
+++ b/xfa/fxfa/parser/cxfa_webclient.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_WebClient : public CXFA_Node {
+class CXFA_WebClient final : public CXFA_Node {
public:
CXFA_WebClient(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_WebClient() override;
diff --git a/xfa/fxfa/parser/cxfa_whitespace.h b/xfa/fxfa/parser/cxfa_whitespace.h
index 62dde48..096a2da 100644
--- a/xfa/fxfa/parser/cxfa_whitespace.h
+++ b/xfa/fxfa/parser/cxfa_whitespace.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Whitespace : public CXFA_Node {
+class CXFA_Whitespace final : public CXFA_Node {
public:
CXFA_Whitespace(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Whitespace() override;
diff --git a/xfa/fxfa/parser/cxfa_window.h b/xfa/fxfa/parser/cxfa_window.h
index 852bc68..fc2fcb7 100644
--- a/xfa/fxfa/parser/cxfa_window.h
+++ b/xfa/fxfa/parser/cxfa_window.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Window : public CXFA_Node {
+class CXFA_Window final : public CXFA_Node {
public:
CXFA_Window(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Window() override;
diff --git a/xfa/fxfa/parser/cxfa_wsdladdress.h b/xfa/fxfa/parser/cxfa_wsdladdress.h
index 83c965c..e65bd6f 100644
--- a/xfa/fxfa/parser/cxfa_wsdladdress.h
+++ b/xfa/fxfa/parser/cxfa_wsdladdress.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_WsdlAddress : public CXFA_Node {
+class CXFA_WsdlAddress final : public CXFA_Node {
public:
CXFA_WsdlAddress(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_WsdlAddress() override;
diff --git a/xfa/fxfa/parser/cxfa_wsdlconnection.h b/xfa/fxfa/parser/cxfa_wsdlconnection.h
index 6c349cf..b2238fd 100644
--- a/xfa/fxfa/parser/cxfa_wsdlconnection.h
+++ b/xfa/fxfa/parser/cxfa_wsdlconnection.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_WsdlConnection : public CXFA_Node {
+class CXFA_WsdlConnection final : public CXFA_Node {
public:
CXFA_WsdlConnection(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_WsdlConnection() override;
diff --git a/xfa/fxfa/parser/cxfa_xdc.h b/xfa/fxfa/parser/cxfa_xdc.h
index 0eb43d5..81cbb57 100644
--- a/xfa/fxfa/parser/cxfa_xdc.h
+++ b/xfa/fxfa/parser/cxfa_xdc.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Xdc : public CXFA_Node {
+class CXFA_Xdc final : public CXFA_Node {
public:
CXFA_Xdc(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Xdc() override;
diff --git a/xfa/fxfa/parser/cxfa_xdp.h b/xfa/fxfa/parser/cxfa_xdp.h
index 38b450e..16ad5d8 100644
--- a/xfa/fxfa/parser/cxfa_xdp.h
+++ b/xfa/fxfa/parser/cxfa_xdp.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Xdp : public CXFA_Node {
+class CXFA_Xdp final : public CXFA_Node {
public:
CXFA_Xdp(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Xdp() override;
diff --git a/xfa/fxfa/parser/cxfa_xfa.h b/xfa/fxfa/parser/cxfa_xfa.h
index 137b601..d7d33df 100644
--- a/xfa/fxfa/parser/cxfa_xfa.h
+++ b/xfa/fxfa/parser/cxfa_xfa.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Xfa : public CXFA_Node {
+class CXFA_Xfa final : public CXFA_Node {
public:
CXFA_Xfa(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Xfa() override;
diff --git a/xfa/fxfa/parser/cxfa_xmlconnection.h b/xfa/fxfa/parser/cxfa_xmlconnection.h
index f9158c6..33cc038 100644
--- a/xfa/fxfa/parser/cxfa_xmlconnection.h
+++ b/xfa/fxfa/parser/cxfa_xmlconnection.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_XmlConnection : public CXFA_Node {
+class CXFA_XmlConnection final : public CXFA_Node {
public:
CXFA_XmlConnection(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_XmlConnection() override;
diff --git a/xfa/fxfa/parser/cxfa_xmllocale.h b/xfa/fxfa/parser/cxfa_xmllocale.h
index de3de41..07d417e 100644
--- a/xfa/fxfa/parser/cxfa_xmllocale.h
+++ b/xfa/fxfa/parser/cxfa_xmllocale.h
@@ -16,7 +16,7 @@
class CFX_XMLDocument;
class CFX_XMLElement;
-class CXFA_XMLLocale : public LocaleIface {
+class CXFA_XMLLocale final : public LocaleIface {
public:
static std::unique_ptr<CXFA_XMLLocale> Create(pdfium::span<uint8_t> data);
diff --git a/xfa/fxfa/parser/cxfa_xsdconnection.h b/xfa/fxfa/parser/cxfa_xsdconnection.h
index 652d45e..8cdef80 100644
--- a/xfa/fxfa/parser/cxfa_xsdconnection.h
+++ b/xfa/fxfa/parser/cxfa_xsdconnection.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_XsdConnection : public CXFA_Node {
+class CXFA_XsdConnection final : public CXFA_Node {
public:
CXFA_XsdConnection(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_XsdConnection() override;
diff --git a/xfa/fxfa/parser/cxfa_xsl.h b/xfa/fxfa/parser/cxfa_xsl.h
index d921125..1be8d4b 100644
--- a/xfa/fxfa/parser/cxfa_xsl.h
+++ b/xfa/fxfa/parser/cxfa_xsl.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Xsl : public CXFA_Node {
+class CXFA_Xsl final : public CXFA_Node {
public:
CXFA_Xsl(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Xsl() override;
diff --git a/xfa/fxfa/parser/cxfa_zpl.h b/xfa/fxfa/parser/cxfa_zpl.h
index ee8f925..6433015 100644
--- a/xfa/fxfa/parser/cxfa_zpl.h
+++ b/xfa/fxfa/parser/cxfa_zpl.h
@@ -9,7 +9,7 @@
#include "xfa/fxfa/parser/cxfa_node.h"
-class CXFA_Zpl : public CXFA_Node {
+class CXFA_Zpl final : public CXFA_Node {
public:
CXFA_Zpl(CXFA_Document* doc, XFA_PacketType packet);
~CXFA_Zpl() override;