summaryrefslogtreecommitdiff
path: root/fxjs
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2018-08-27 20:18:04 +0000
committerChromium commit bot <commit-bot@chromium.org>2018-08-27 20:18:04 +0000
commit55865454c43fbc3b163cff166544ba0a060dcbc4 (patch)
tree66cefeed22a38d19db07e63b315c9f09832d11b2 /fxjs
parent76525c4a9d2aa6d1f2685d8483e3d491fd361df1 (diff)
downloadpdfium-55865454c43fbc3b163cff166544ba0a060dcbc4.tar.xz
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>
Diffstat (limited to 'fxjs')
-rw-r--r--fxjs/cfx_v8.h2
-rw-r--r--fxjs/cfxjs_engine.cpp2
-rw-r--r--fxjs/cfxjse_engine.h2
-rw-r--r--fxjs/cfxjse_formcalc_context.h2
-rw-r--r--fxjs/cfxjse_isolatetracker.h2
-rw-r--r--fxjs/cjs_annot.h2
-rw-r--r--fxjs/cjs_app.h2
-rw-r--r--fxjs/cjs_border.h2
-rw-r--r--fxjs/cjs_color.h2
-rw-r--r--fxjs/cjs_console.h2
-rw-r--r--fxjs/cjs_display.h2
-rw-r--r--fxjs/cjs_document.h2
-rw-r--r--fxjs/cjs_event.h2
-rw-r--r--fxjs/cjs_event_context.h2
-rw-r--r--fxjs/cjs_field.h2
-rw-r--r--fxjs/cjs_font.h2
-rw-r--r--fxjs/cjs_global.h2
-rw-r--r--fxjs/cjs_globalarrays.h2
-rw-r--r--fxjs/cjs_globalconsts.h2
-rw-r--r--fxjs/cjs_highlight.h2
-rw-r--r--fxjs/cjs_icon.h2
-rw-r--r--fxjs/cjs_position.h2
-rw-r--r--fxjs/cjs_printparamsobj.h2
-rw-r--r--fxjs/cjs_publicmethods.h2
-rw-r--r--fxjs/cjs_report.h2
-rw-r--r--fxjs/cjs_runtime.h6
-rw-r--r--fxjs/cjs_scalehow.h2
-rw-r--r--fxjs/cjs_scalewhen.h2
-rw-r--r--fxjs/cjs_style.h2
-rw-r--r--fxjs/cjs_timerobj.h2
-rw-r--r--fxjs/cjs_util.h2
-rw-r--r--fxjs/cjs_zoomtype.h2
-rw-r--r--fxjs/xfa/cjx_arc.h2
-rw-r--r--fxjs/xfa/cjx_area.h2
-rw-r--r--fxjs/xfa/cjx_assist.h2
-rw-r--r--fxjs/xfa/cjx_barcode.h2
-rw-r--r--fxjs/xfa/cjx_bind.h2
-rw-r--r--fxjs/xfa/cjx_binditems.h2
-rw-r--r--fxjs/xfa/cjx_bookend.h2
-rw-r--r--fxjs/xfa/cjx_boolean.h2
-rw-r--r--fxjs/xfa/cjx_border.h2
-rw-r--r--fxjs/xfa/cjx_break.h2
-rw-r--r--fxjs/xfa/cjx_breakafter.h2
-rw-r--r--fxjs/xfa/cjx_breakbefore.h2
-rw-r--r--fxjs/xfa/cjx_button.h2
-rw-r--r--fxjs/xfa/cjx_calculate.h2
-rw-r--r--fxjs/xfa/cjx_caption.h2
-rw-r--r--fxjs/xfa/cjx_certificate.h2
-rw-r--r--fxjs/xfa/cjx_certificates.h2
-rw-r--r--fxjs/xfa/cjx_checkbutton.h2
-rw-r--r--fxjs/xfa/cjx_choicelist.h2
-rw-r--r--fxjs/xfa/cjx_color.h2
-rw-r--r--fxjs/xfa/cjx_comb.h2
-rw-r--r--fxjs/xfa/cjx_command.h2
-rw-r--r--fxjs/xfa/cjx_connect.h2
-rw-r--r--fxjs/xfa/cjx_connectstring.h2
-rw-r--r--fxjs/xfa/cjx_contentarea.h2
-rw-r--r--fxjs/xfa/cjx_corner.h2
-rw-r--r--fxjs/xfa/cjx_datavalue.h2
-rw-r--r--fxjs/xfa/cjx_datawindow.h2
-rw-r--r--fxjs/xfa/cjx_date.h2
-rw-r--r--fxjs/xfa/cjx_datetime.h2
-rw-r--r--fxjs/xfa/cjx_datetimeedit.h2
-rw-r--r--fxjs/xfa/cjx_decimal.h2
-rw-r--r--fxjs/xfa/cjx_defaultui.h2
-rw-r--r--fxjs/xfa/cjx_delete.h2
-rw-r--r--fxjs/xfa/cjx_delta.h2
-rw-r--r--fxjs/xfa/cjx_deltas.h2
-rw-r--r--fxjs/xfa/cjx_desc.h2
-rw-r--r--fxjs/xfa/cjx_digestmethod.h2
-rw-r--r--fxjs/xfa/cjx_digestmethods.h2
-rw-r--r--fxjs/xfa/cjx_draw.h2
-rw-r--r--fxjs/xfa/cjx_edge.h2
-rw-r--r--fxjs/xfa/cjx_encoding.h2
-rw-r--r--fxjs/xfa/cjx_encodings.h2
-rw-r--r--fxjs/xfa/cjx_encrypt.h2
-rw-r--r--fxjs/xfa/cjx_event.h2
-rw-r--r--fxjs/xfa/cjx_eventpseudomodel.h2
-rw-r--r--fxjs/xfa/cjx_exclgroup.h2
-rw-r--r--fxjs/xfa/cjx_exdata.h2
-rw-r--r--fxjs/xfa/cjx_execute.h2
-rw-r--r--fxjs/xfa/cjx_exobject.h2
-rw-r--r--fxjs/xfa/cjx_extras.h2
-rw-r--r--fxjs/xfa/cjx_field.h2
-rw-r--r--fxjs/xfa/cjx_fill.h2
-rw-r--r--fxjs/xfa/cjx_filter.h2
-rw-r--r--fxjs/xfa/cjx_float.h2
-rw-r--r--fxjs/xfa/cjx_font.h2
-rw-r--r--fxjs/xfa/cjx_form.h2
-rw-r--r--fxjs/xfa/cjx_format.h2
-rw-r--r--fxjs/xfa/cjx_handler.h2
-rw-r--r--fxjs/xfa/cjx_hostpseudomodel.h2
-rw-r--r--fxjs/xfa/cjx_image.h2
-rw-r--r--fxjs/xfa/cjx_imageedit.h2
-rw-r--r--fxjs/xfa/cjx_insert.h2
-rw-r--r--fxjs/xfa/cjx_instancemanager.h2
-rw-r--r--fxjs/xfa/cjx_integer.h2
-rw-r--r--fxjs/xfa/cjx_issuers.h2
-rw-r--r--fxjs/xfa/cjx_items.h2
-rw-r--r--fxjs/xfa/cjx_keep.h2
-rw-r--r--fxjs/xfa/cjx_keyusage.h2
-rw-r--r--fxjs/xfa/cjx_layoutpseudomodel.h2
-rw-r--r--fxjs/xfa/cjx_line.h2
-rw-r--r--fxjs/xfa/cjx_linear.h2
-rw-r--r--fxjs/xfa/cjx_logpseudomodel.h2
-rw-r--r--fxjs/xfa/cjx_manifest.h2
-rw-r--r--fxjs/xfa/cjx_map.h2
-rw-r--r--fxjs/xfa/cjx_margin.h2
-rw-r--r--fxjs/xfa/cjx_mdp.h2
-rw-r--r--fxjs/xfa/cjx_medium.h2
-rw-r--r--fxjs/xfa/cjx_message.h2
-rw-r--r--fxjs/xfa/cjx_numericedit.h2
-rw-r--r--fxjs/xfa/cjx_occur.h2
-rw-r--r--fxjs/xfa/cjx_oid.h2
-rw-r--r--fxjs/xfa/cjx_oids.h2
-rw-r--r--fxjs/xfa/cjx_operation.h2
-rw-r--r--fxjs/xfa/cjx_overflow.h2
-rw-r--r--fxjs/xfa/cjx_packet.h2
-rw-r--r--fxjs/xfa/cjx_pagearea.h2
-rw-r--r--fxjs/xfa/cjx_pageset.h2
-rw-r--r--fxjs/xfa/cjx_para.h2
-rw-r--r--fxjs/xfa/cjx_password.h2
-rw-r--r--fxjs/xfa/cjx_passwordedit.h2
-rw-r--r--fxjs/xfa/cjx_pattern.h2
-rw-r--r--fxjs/xfa/cjx_picture.h2
-rw-r--r--fxjs/xfa/cjx_query.h2
-rw-r--r--fxjs/xfa/cjx_radial.h2
-rw-r--r--fxjs/xfa/cjx_reason.h2
-rw-r--r--fxjs/xfa/cjx_reasons.h2
-rw-r--r--fxjs/xfa/cjx_recordset.h2
-rw-r--r--fxjs/xfa/cjx_rectangle.h2
-rw-r--r--fxjs/xfa/cjx_ref.h2
-rw-r--r--fxjs/xfa/cjx_rootelement.h2
-rw-r--r--fxjs/xfa/cjx_script.h2
-rw-r--r--fxjs/xfa/cjx_select.h2
-rw-r--r--fxjs/xfa/cjx_setproperty.h2
-rw-r--r--fxjs/xfa/cjx_signature.h2
-rw-r--r--fxjs/xfa/cjx_signatureproperties.h2
-rw-r--r--fxjs/xfa/cjx_signaturepseudomodel.h2
-rw-r--r--fxjs/xfa/cjx_signdata.h2
-rw-r--r--fxjs/xfa/cjx_signing.h2
-rw-r--r--fxjs/xfa/cjx_soapaction.h2
-rw-r--r--fxjs/xfa/cjx_soapaddress.h2
-rw-r--r--fxjs/xfa/cjx_solid.h2
-rw-r--r--fxjs/xfa/cjx_source.h2
-rw-r--r--fxjs/xfa/cjx_sourceset.h2
-rw-r--r--fxjs/xfa/cjx_speak.h2
-rw-r--r--fxjs/xfa/cjx_stipple.h2
-rw-r--r--fxjs/xfa/cjx_subform.h2
-rw-r--r--fxjs/xfa/cjx_subformset.h2
-rw-r--r--fxjs/xfa/cjx_subjectdn.h2
-rw-r--r--fxjs/xfa/cjx_subjectdns.h2
-rw-r--r--fxjs/xfa/cjx_submit.h2
-rw-r--r--fxjs/xfa/cjx_template.h2
-rw-r--r--fxjs/xfa/cjx_text.h2
-rw-r--r--fxjs/xfa/cjx_textedit.h2
-rw-r--r--fxjs/xfa/cjx_time.h2
-rw-r--r--fxjs/xfa/cjx_timestamp.h2
-rw-r--r--fxjs/xfa/cjx_tooltip.h2
-rw-r--r--fxjs/xfa/cjx_traversal.h2
-rw-r--r--fxjs/xfa/cjx_traverse.h2
-rw-r--r--fxjs/xfa/cjx_treelist.h2
-rw-r--r--fxjs/xfa/cjx_ui.h2
-rw-r--r--fxjs/xfa/cjx_update.h2
-rw-r--r--fxjs/xfa/cjx_uri.h2
-rw-r--r--fxjs/xfa/cjx_user.h2
-rw-r--r--fxjs/xfa/cjx_validate.h2
-rw-r--r--fxjs/xfa/cjx_value.h2
-rw-r--r--fxjs/xfa/cjx_variables.h2
-rw-r--r--fxjs/xfa/cjx_wsdladdress.h2
-rw-r--r--fxjs/xfa/cjx_wsdlconnection.h2
-rw-r--r--fxjs/xfa/cjx_xfa.h2
-rw-r--r--fxjs/xfa/cjx_xmlconnection.h2
-rw-r--r--fxjs/xfa/cjx_xsdconnection.h2
174 files changed, 176 insertions, 176 deletions
diff --git a/fxjs/cfx_v8.h b/fxjs/cfx_v8.h
index 04468d5281..f7bed86329 100644
--- a/fxjs/cfx_v8.h
+++ b/fxjs/cfx_v8.h
@@ -66,7 +66,7 @@ class CFX_V8 {
UnownedPtr<v8::Isolate> m_pIsolate;
};
-class CFX_V8ArrayBufferAllocator : public v8::ArrayBuffer::Allocator {
+class CFX_V8ArrayBufferAllocator final : public v8::ArrayBuffer::Allocator {
static const size_t kMaxAllowedBytes = 0x10000000;
void* Allocate(size_t length) override;
void* AllocateUninitialized(size_t length) override;
diff --git a/fxjs/cfxjs_engine.cpp b/fxjs/cfxjs_engine.cpp
index 2a95e4c58d..a4a85df0a2 100644
--- a/fxjs/cfxjs_engine.cpp
+++ b/fxjs/cfxjs_engine.cpp
@@ -24,7 +24,7 @@ static v8::Global<v8::ObjectTemplate>* g_DefaultGlobalObjectTemplate = nullptr;
static wchar_t kPerObjectDataTag[] = L"CFXJS_PerObjectData";
// Global weak map to save dynamic objects.
-class V8TemplateMapTraits
+class V8TemplateMapTraits final
: public v8::StdMapTraits<CFXJS_PerObjectData*, v8::Object> {
public:
using WeakCallbackDataType = CFXJS_PerObjectData;
diff --git a/fxjs/cfxjse_engine.h b/fxjs/cfxjse_engine.h
index 01bce537bd..632010d079 100644
--- a/fxjs/cfxjse_engine.h
+++ b/fxjs/cfxjse_engine.h
@@ -26,7 +26,7 @@ class CFXJSE_ResolveProcessor;
class CJS_Runtime;
class CXFA_List;
-class CFXJSE_Engine : public CFX_V8 {
+class CFXJSE_Engine final : public CFX_V8 {
public:
static CXFA_Object* ToObject(const v8::FunctionCallbackInfo<v8::Value>& info);
static CXFA_Object* ToObject(CFXJSE_Value* pValue);
diff --git a/fxjs/cfxjse_formcalc_context.h b/fxjs/cfxjse_formcalc_context.h
index ef1cd3495f..a03c66f5ba 100644
--- a/fxjs/cfxjse_formcalc_context.h
+++ b/fxjs/cfxjse_formcalc_context.h
@@ -18,7 +18,7 @@
class CFX_WideTextBuf;
class CXFA_Document;
-class CFXJSE_FormCalcContext : public CFXJSE_HostObject {
+class CFXJSE_FormCalcContext final : public CFXJSE_HostObject {
public:
CFXJSE_FormCalcContext(v8::Isolate* pScriptIsolate,
CFXJSE_Context* pScriptContext,
diff --git a/fxjs/cfxjse_isolatetracker.h b/fxjs/cfxjse_isolatetracker.h
index 103b2757f6..4e95498270 100644
--- a/fxjs/cfxjse_isolatetracker.h
+++ b/fxjs/cfxjse_isolatetracker.h
@@ -26,7 +26,7 @@ class CFXJSE_ScopeUtil_IsolateHandle {
v8::HandleScope m_hscope;
};
-class CFXJSE_ScopeUtil_IsolateHandleRootContext
+class CFXJSE_ScopeUtil_IsolateHandleRootContext final
: public CFXJSE_ScopeUtil_IsolateHandle {
public:
explicit CFXJSE_ScopeUtil_IsolateHandleRootContext(v8::Isolate* pIsolate);
diff --git a/fxjs/cjs_annot.h b/fxjs/cjs_annot.h
index 79b2663162..ea2168ea31 100644
--- a/fxjs/cjs_annot.h
+++ b/fxjs/cjs_annot.h
@@ -10,7 +10,7 @@
#include "fpdfsdk/cpdfsdk_baannot.h"
#include "fxjs/js_define.h"
-class CJS_Annot : public CJS_Object {
+class CJS_Annot final : public CJS_Object {
public:
static int GetObjDefnID();
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_app.h b/fxjs/cjs_app.h
index 5690f479db..5f211d710c 100644
--- a/fxjs/cjs_app.h
+++ b/fxjs/cjs_app.h
@@ -16,7 +16,7 @@
class CJS_Runtime;
class GlobalTimer;
-class CJS_App : public CJS_Object {
+class CJS_App final : public CJS_Object {
public:
static int GetObjDefnID();
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_border.h b/fxjs/cjs_border.h
index 0d10a1f735..8122934593 100644
--- a/fxjs/cjs_border.h
+++ b/fxjs/cjs_border.h
@@ -9,7 +9,7 @@
#include "fxjs/js_define.h"
-class CJS_Border : public CJS_Object {
+class CJS_Border final : public CJS_Object {
public:
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_color.h b/fxjs/cjs_color.h
index aff19d7b73..b1bd211395 100644
--- a/fxjs/cjs_color.h
+++ b/fxjs/cjs_color.h
@@ -12,7 +12,7 @@
#include "fpdfsdk/pwl/cpwl_wnd.h"
#include "fxjs/js_define.h"
-class CJS_Color : public CJS_Object {
+class CJS_Color final : public CJS_Object {
public:
static int GetObjDefnID();
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_console.h b/fxjs/cjs_console.h
index 9ab2555664..59276be27b 100644
--- a/fxjs/cjs_console.h
+++ b/fxjs/cjs_console.h
@@ -11,7 +11,7 @@
#include "fxjs/js_define.h"
-class CJS_Console : public CJS_Object {
+class CJS_Console final : public CJS_Object {
public:
static int GetObjDefnID();
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_display.h b/fxjs/cjs_display.h
index 2336952732..35eebbac86 100644
--- a/fxjs/cjs_display.h
+++ b/fxjs/cjs_display.h
@@ -9,7 +9,7 @@
#include "fxjs/js_define.h"
-class CJS_Display : public CJS_Object {
+class CJS_Display final : public CJS_Object {
public:
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_document.h b/fxjs/cjs_document.h
index 69a0b656ca..0f25703f34 100644
--- a/fxjs/cjs_document.h
+++ b/fxjs/cjs_document.h
@@ -17,7 +17,7 @@
class CPDF_TextObject;
struct CJS_DelayData;
-class CJS_Document : public CJS_Object, public Observable<CJS_Document> {
+class CJS_Document final : public CJS_Object, public Observable<CJS_Document> {
public:
static int GetObjDefnID();
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_event.h b/fxjs/cjs_event.h
index 67bd3f52fa..a6308ec16f 100644
--- a/fxjs/cjs_event.h
+++ b/fxjs/cjs_event.h
@@ -9,7 +9,7 @@
#include "fxjs/js_define.h"
-class CJS_Event : public CJS_Object {
+class CJS_Event final : public CJS_Object {
public:
static int GetObjDefnID();
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_event_context.h b/fxjs/cjs_event_context.h
index 29bbd5a853..a9933e67bb 100644
--- a/fxjs/cjs_event_context.h
+++ b/fxjs/cjs_event_context.h
@@ -18,7 +18,7 @@ class CJS_EventHandler;
class CJS_Runtime;
class CPDFSDK_FormFillEnvironment;
-class CJS_EventContext : public IJS_EventContext {
+class CJS_EventContext final : public IJS_EventContext {
public:
explicit CJS_EventContext(CJS_Runtime* pRuntime);
~CJS_EventContext() override;
diff --git a/fxjs/cjs_field.h b/fxjs/cjs_field.h
index 69d6c8eb07..4f2171017d 100644
--- a/fxjs/cjs_field.h
+++ b/fxjs/cjs_field.h
@@ -27,7 +27,7 @@ enum FIELD_PROP {
FP_VALUE
};
-class CJS_Field : public CJS_Object {
+class CJS_Field final : public CJS_Object {
public:
static int GetObjDefnID();
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_font.h b/fxjs/cjs_font.h
index be677d4045..56b3db0cdc 100644
--- a/fxjs/cjs_font.h
+++ b/fxjs/cjs_font.h
@@ -9,7 +9,7 @@
#include "fxjs/js_define.h"
-class CJS_Font : public CJS_Object {
+class CJS_Font final : public CJS_Object {
public:
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_global.h b/fxjs/cjs_global.h
index 491897adb3..6ecd6c0130 100644
--- a/fxjs/cjs_global.h
+++ b/fxjs/cjs_global.h
@@ -16,7 +16,7 @@
class CJS_GlobalData;
-class CJS_Global : public CJS_Object {
+class CJS_Global final : public CJS_Object {
public:
static int GetObjDefnID();
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_globalarrays.h b/fxjs/cjs_globalarrays.h
index 8e972732db..cfd90af52c 100644
--- a/fxjs/cjs_globalarrays.h
+++ b/fxjs/cjs_globalarrays.h
@@ -9,7 +9,7 @@
#include "fxjs/js_define.h"
-class CJS_GlobalArrays : public CJS_Object {
+class CJS_GlobalArrays final : public CJS_Object {
public:
static void DefineJSObjects(CJS_Runtime* pRuntmie);
};
diff --git a/fxjs/cjs_globalconsts.h b/fxjs/cjs_globalconsts.h
index 1bef384768..1846c41b50 100644
--- a/fxjs/cjs_globalconsts.h
+++ b/fxjs/cjs_globalconsts.h
@@ -9,7 +9,7 @@
#include "fxjs/js_define.h"
-class CJS_GlobalConsts : public CJS_Object {
+class CJS_GlobalConsts final : public CJS_Object {
public:
static void DefineJSObjects(CJS_Runtime* pRuntime);
};
diff --git a/fxjs/cjs_highlight.h b/fxjs/cjs_highlight.h
index a5fc21df58..acf03e8273 100644
--- a/fxjs/cjs_highlight.h
+++ b/fxjs/cjs_highlight.h
@@ -9,7 +9,7 @@
#include "fxjs/js_define.h"
-class CJS_Highlight : public CJS_Object {
+class CJS_Highlight final : public CJS_Object {
public:
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_icon.h b/fxjs/cjs_icon.h
index 6df671b874..a92509d55a 100644
--- a/fxjs/cjs_icon.h
+++ b/fxjs/cjs_icon.h
@@ -9,7 +9,7 @@
#include "fxjs/js_define.h"
-class CJS_Icon : public CJS_Object {
+class CJS_Icon final : public CJS_Object {
public:
static int GetObjDefnID();
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_position.h b/fxjs/cjs_position.h
index 3e62bc92bf..3db83fffc0 100644
--- a/fxjs/cjs_position.h
+++ b/fxjs/cjs_position.h
@@ -9,7 +9,7 @@
#include "fxjs/js_define.h"
-class CJS_Position : public CJS_Object {
+class CJS_Position final : public CJS_Object {
public:
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_printparamsobj.h b/fxjs/cjs_printparamsobj.h
index 572d7d8bcd..69071e6e29 100644
--- a/fxjs/cjs_printparamsobj.h
+++ b/fxjs/cjs_printparamsobj.h
@@ -9,7 +9,7 @@
#include "fxjs/js_define.h"
-class CJS_PrintParamsObj : public CJS_Object {
+class CJS_PrintParamsObj final : public CJS_Object {
public:
static int GetObjDefnID();
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_publicmethods.h b/fxjs/cjs_publicmethods.h
index 8ec35626af..f83375ca54 100644
--- a/fxjs/cjs_publicmethods.h
+++ b/fxjs/cjs_publicmethods.h
@@ -12,7 +12,7 @@
#include "fxjs/js_define.h"
-class CJS_PublicMethods : public CJS_Object {
+class CJS_PublicMethods final : public CJS_Object {
public:
CJS_PublicMethods(v8::Local<v8::Object> pObject, CJS_Runtime* pRuntime);
~CJS_PublicMethods() override;
diff --git a/fxjs/cjs_report.h b/fxjs/cjs_report.h
index a969b41f55..6606d1431d 100644
--- a/fxjs/cjs_report.h
+++ b/fxjs/cjs_report.h
@@ -11,7 +11,7 @@
#include "fxjs/js_define.h"
-class CJS_Report : public CJS_Object {
+class CJS_Report final : public CJS_Object {
public:
static int GetObjDefnID();
static void DefineJSObjects(CFXJS_Engine* pEngine, FXJSOBJTYPE eObjType);
diff --git a/fxjs/cjs_runtime.h b/fxjs/cjs_runtime.h
index 73b722db43..f7b2679523 100644
--- a/fxjs/cjs_runtime.h
+++ b/fxjs/cjs_runtime.h
@@ -21,9 +21,9 @@
class CJS_EventContext;
-class CJS_Runtime : public IJS_Runtime,
- public CFXJS_Engine,
- public Observable<CJS_Runtime> {
+class CJS_Runtime final : public IJS_Runtime,
+ public CFXJS_Engine,
+ public Observable<CJS_Runtime> {
public:
using FieldEvent = std::pair<WideString, JS_EVENT_T>;
diff --git a/fxjs/cjs_scalehow.h b/fxjs/cjs_scalehow.h
index a0d16b34b5..a5e4435388 100644
--- a/fxjs/cjs_scalehow.h
+++ b/fxjs/cjs_scalehow.h
@@ -9,7 +9,7 @@
#include "fxjs/js_define.h"
-class CJS_ScaleHow : public CJS_Object {
+class CJS_ScaleHow final : public CJS_Object {
public:
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_scalewhen.h b/fxjs/cjs_scalewhen.h
index f30a3bdff2..c0117ee8be 100644
--- a/fxjs/cjs_scalewhen.h
+++ b/fxjs/cjs_scalewhen.h
@@ -9,7 +9,7 @@
#include "fxjs/js_define.h"
-class CJS_ScaleWhen : public CJS_Object {
+class CJS_ScaleWhen final : public CJS_Object {
public:
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_style.h b/fxjs/cjs_style.h
index dade59f6f1..8ddd6a3a0a 100644
--- a/fxjs/cjs_style.h
+++ b/fxjs/cjs_style.h
@@ -9,7 +9,7 @@
#include "fxjs/js_define.h"
-class CJS_Style : public CJS_Object {
+class CJS_Style final : public CJS_Object {
public:
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_timerobj.h b/fxjs/cjs_timerobj.h
index d9dc88139d..589284943b 100644
--- a/fxjs/cjs_timerobj.h
+++ b/fxjs/cjs_timerobj.h
@@ -11,7 +11,7 @@
class GlobalTimer;
-class CJS_TimerObj : public CJS_Object {
+class CJS_TimerObj final : public CJS_Object {
public:
static int GetObjDefnID();
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_util.h b/fxjs/cjs_util.h
index f948afb691..934a0f8f22 100644
--- a/fxjs/cjs_util.h
+++ b/fxjs/cjs_util.h
@@ -17,7 +17,7 @@
#define UTIL_DOUBLE 1
#define UTIL_STRING 2
-class CJS_Util : public CJS_Object {
+class CJS_Util final : public CJS_Object {
public:
static int GetObjDefnID();
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/cjs_zoomtype.h b/fxjs/cjs_zoomtype.h
index 5dda997bdf..892f72e3bc 100644
--- a/fxjs/cjs_zoomtype.h
+++ b/fxjs/cjs_zoomtype.h
@@ -9,7 +9,7 @@
#include "fxjs/js_define.h"
-class CJS_Zoomtype : public CJS_Object {
+class CJS_Zoomtype final : public CJS_Object {
public:
static void DefineJSObjects(CFXJS_Engine* pEngine);
diff --git a/fxjs/xfa/cjx_arc.h b/fxjs/xfa/cjx_arc.h
index 2b62884479..031b62035d 100644
--- a/fxjs/xfa/cjx_arc.h
+++ b/fxjs/xfa/cjx_arc.h
@@ -12,7 +12,7 @@
class CXFA_Arc;
-class CJX_Arc : public CJX_Node {
+class CJX_Arc final : public CJX_Node {
public:
explicit CJX_Arc(CXFA_Arc* node);
~CJX_Arc() override;
diff --git a/fxjs/xfa/cjx_area.h b/fxjs/xfa/cjx_area.h
index 2814231091..5958c8adb1 100644
--- a/fxjs/xfa/cjx_area.h
+++ b/fxjs/xfa/cjx_area.h
@@ -12,7 +12,7 @@
class CXFA_Area;
-class CJX_Area : public CJX_Container {
+class CJX_Area final : public CJX_Container {
public:
explicit CJX_Area(CXFA_Area* node);
~CJX_Area() override;
diff --git a/fxjs/xfa/cjx_assist.h b/fxjs/xfa/cjx_assist.h
index c150a51843..46aaadefc7 100644
--- a/fxjs/xfa/cjx_assist.h
+++ b/fxjs/xfa/cjx_assist.h
@@ -12,7 +12,7 @@
class CXFA_Assist;
-class CJX_Assist : public CJX_Node {
+class CJX_Assist final : public CJX_Node {
public:
explicit CJX_Assist(CXFA_Assist* node);
~CJX_Assist() override;
diff --git a/fxjs/xfa/cjx_barcode.h b/fxjs/xfa/cjx_barcode.h
index 3901bd6b63..551df42387 100644
--- a/fxjs/xfa/cjx_barcode.h
+++ b/fxjs/xfa/cjx_barcode.h
@@ -12,7 +12,7 @@
class CXFA_Barcode;
-class CJX_Barcode : public CJX_Node {
+class CJX_Barcode final : public CJX_Node {
public:
explicit CJX_Barcode(CXFA_Barcode* arc);
~CJX_Barcode() override;
diff --git a/fxjs/xfa/cjx_bind.h b/fxjs/xfa/cjx_bind.h
index ab221439d1..3ca9da7d10 100644
--- a/fxjs/xfa/cjx_bind.h
+++ b/fxjs/xfa/cjx_bind.h
@@ -12,7 +12,7 @@
class CXFA_Bind;
-class CJX_Bind : public CJX_Node {
+class CJX_Bind final : public CJX_Node {
public:
explicit CJX_Bind(CXFA_Bind* node);
~CJX_Bind() override;
diff --git a/fxjs/xfa/cjx_binditems.h b/fxjs/xfa/cjx_binditems.h
index 1b27d445b5..1bbbb2baf2 100644
--- a/fxjs/xfa/cjx_binditems.h
+++ b/fxjs/xfa/cjx_binditems.h
@@ -12,7 +12,7 @@
class CXFA_BindItems;
-class CJX_BindItems : public CJX_Node {
+class CJX_BindItems final : public CJX_Node {
public:
explicit CJX_BindItems(CXFA_BindItems* node);
~CJX_BindItems() override;
diff --git a/fxjs/xfa/cjx_bookend.h b/fxjs/xfa/cjx_bookend.h
index fa3f1ca363..9015205cc3 100644
--- a/fxjs/xfa/cjx_bookend.h
+++ b/fxjs/xfa/cjx_bookend.h
@@ -12,7 +12,7 @@
class CXFA_Bookend;
-class CJX_Bookend : public CJX_Node {
+class CJX_Bookend final : public CJX_Node {
public:
explicit CJX_Bookend(CXFA_Bookend* node);
~CJX_Bookend() override;
diff --git a/fxjs/xfa/cjx_boolean.h b/fxjs/xfa/cjx_boolean.h
index 4242c55e26..380351d61e 100644
--- a/fxjs/xfa/cjx_boolean.h
+++ b/fxjs/xfa/cjx_boolean.h
@@ -12,7 +12,7 @@
class CXFA_Boolean;
-class CJX_Boolean : public CJX_Content {
+class CJX_Boolean final : public CJX_Content {
public:
explicit CJX_Boolean(CXFA_Boolean* node);
~CJX_Boolean() override;
diff --git a/fxjs/xfa/cjx_border.h b/fxjs/xfa/cjx_border.h
index abeb5776d5..c89b5469f3 100644
--- a/fxjs/xfa/cjx_border.h
+++ b/fxjs/xfa/cjx_border.h
@@ -12,7 +12,7 @@
class CXFA_Border;
-class CJX_Border : public CJX_Node {
+class CJX_Border final : public CJX_Node {
public:
explicit CJX_Border(CXFA_Border* node);
~CJX_Border() override;
diff --git a/fxjs/xfa/cjx_break.h b/fxjs/xfa/cjx_break.h
index c9090d905b..7391217647 100644
--- a/fxjs/xfa/cjx_break.h
+++ b/fxjs/xfa/cjx_break.h
@@ -12,7 +12,7 @@
class CXFA_Break;
-class CJX_Break : public CJX_Node {
+class CJX_Break final : public CJX_Node {
public:
explicit CJX_Break(CXFA_Break* node);
~CJX_Break() override;
diff --git a/fxjs/xfa/cjx_breakafter.h b/fxjs/xfa/cjx_breakafter.h
index 7028c51719..cd89f34c38 100644
--- a/fxjs/xfa/cjx_breakafter.h
+++ b/fxjs/xfa/cjx_breakafter.h
@@ -12,7 +12,7 @@
class CXFA_BreakAfter;
-class CJX_BreakAfter : public CJX_Node {
+class CJX_BreakAfter final : public CJX_Node {
public:
explicit CJX_BreakAfter(CXFA_BreakAfter* node);
~CJX_BreakAfter() override;
diff --git a/fxjs/xfa/cjx_breakbefore.h b/fxjs/xfa/cjx_breakbefore.h
index b4251c96de..59f07c0388 100644
--- a/fxjs/xfa/cjx_breakbefore.h
+++ b/fxjs/xfa/cjx_breakbefore.h
@@ -12,7 +12,7 @@
class CXFA_BreakBefore;
-class CJX_BreakBefore : public CJX_Node {
+class CJX_BreakBefore final : public CJX_Node {
public:
explicit CJX_BreakBefore(CXFA_BreakBefore* node);
~CJX_BreakBefore() override;
diff --git a/fxjs/xfa/cjx_button.h b/fxjs/xfa/cjx_button.h
index bf38aa4700..9fe5061b9f 100644
--- a/fxjs/xfa/cjx_button.h
+++ b/fxjs/xfa/cjx_button.h
@@ -12,7 +12,7 @@
class CXFA_Button;
-class CJX_Button : public CJX_Node {
+class CJX_Button final : public CJX_Node {
public:
explicit CJX_Button(CXFA_Button* node);
~CJX_Button() override;
diff --git a/fxjs/xfa/cjx_calculate.h b/fxjs/xfa/cjx_calculate.h
index 1b4c1496c1..29dc732bf1 100644
--- a/fxjs/xfa/cjx_calculate.h
+++ b/fxjs/xfa/cjx_calculate.h
@@ -12,7 +12,7 @@
class CXFA_Calculate;
-class CJX_Calculate : public CJX_Node {
+class CJX_Calculate final : public CJX_Node {
public:
explicit CJX_Calculate(CXFA_Calculate* node);
~CJX_Calculate() override;
diff --git a/fxjs/xfa/cjx_caption.h b/fxjs/xfa/cjx_caption.h
index d9241475cb..ae89ed0d0f 100644
--- a/fxjs/xfa/cjx_caption.h
+++ b/fxjs/xfa/cjx_caption.h
@@ -12,7 +12,7 @@
class CXFA_Caption;
-class CJX_Caption : public CJX_Node {
+class CJX_Caption final : public CJX_Node {
public:
explicit CJX_Caption(CXFA_Caption* node);
~CJX_Caption() override;
diff --git a/fxjs/xfa/cjx_certificate.h b/fxjs/xfa/cjx_certificate.h
index 8be791d766..93a323a8b0 100644
--- a/fxjs/xfa/cjx_certificate.h
+++ b/fxjs/xfa/cjx_certificate.h
@@ -12,7 +12,7 @@
class CXFA_Certificate;
-class CJX_Certificate : public CJX_TextNode {
+class CJX_Certificate final : public CJX_TextNode {
public:
explicit CJX_Certificate(CXFA_Certificate* node);
~CJX_Certificate() override;
diff --git a/fxjs/xfa/cjx_certificates.h b/fxjs/xfa/cjx_certificates.h
index 42ce885480..b792efb492 100644
--- a/fxjs/xfa/cjx_certificates.h
+++ b/fxjs/xfa/cjx_certificates.h
@@ -12,7 +12,7 @@
class CXFA_Certificates;
-class CJX_Certificates : public CJX_Node {
+class CJX_Certificates final : public CJX_Node {
public:
explicit CJX_Certificates(CXFA_Certificates* node);
~CJX_Certificates() override;
diff --git a/fxjs/xfa/cjx_checkbutton.h b/fxjs/xfa/cjx_checkbutton.h
index 3b78d710c4..82a96d4b02 100644
--- a/fxjs/xfa/cjx_checkbutton.h
+++ b/fxjs/xfa/cjx_checkbutton.h
@@ -12,7 +12,7 @@
class CXFA_CheckButton;
-class CJX_CheckButton : public CJX_Node {
+class CJX_CheckButton final : public CJX_Node {
public:
explicit CJX_CheckButton(CXFA_CheckButton* node);
~CJX_CheckButton() override;
diff --git a/fxjs/xfa/cjx_choicelist.h b/fxjs/xfa/cjx_choicelist.h
index 3bf947c064..e1add2dddb 100644
--- a/fxjs/xfa/cjx_choicelist.h
+++ b/fxjs/xfa/cjx_choicelist.h
@@ -12,7 +12,7 @@
class CXFA_ChoiceList;
-class CJX_ChoiceList : public CJX_Node {
+class CJX_ChoiceList final : public CJX_Node {
public:
explicit CJX_ChoiceList(CXFA_ChoiceList* node);
~CJX_ChoiceList() override;
diff --git a/fxjs/xfa/cjx_color.h b/fxjs/xfa/cjx_color.h
index e048aca44c..d0816bbd1b 100644
--- a/fxjs/xfa/cjx_color.h
+++ b/fxjs/xfa/cjx_color.h
@@ -12,7 +12,7 @@
class CXFA_Color;
-class CJX_Color : public CJX_Node {
+class CJX_Color final : public CJX_Node {
public:
explicit CJX_Color(CXFA_Color* node);
~CJX_Color() override;
diff --git a/fxjs/xfa/cjx_comb.h b/fxjs/xfa/cjx_comb.h
index abcf8c0c6e..073adf5736 100644
--- a/fxjs/xfa/cjx_comb.h
+++ b/fxjs/xfa/cjx_comb.h
@@ -12,7 +12,7 @@
class CXFA_Comb;
-class CJX_Comb : public CJX_Node {
+class CJX_Comb final : public CJX_Node {
public:
explicit CJX_Comb(CXFA_Comb* node);
~CJX_Comb() override;
diff --git a/fxjs/xfa/cjx_command.h b/fxjs/xfa/cjx_command.h
index e645baf4c9..b876d69ece 100644
--- a/fxjs/xfa/cjx_command.h
+++ b/fxjs/xfa/cjx_command.h
@@ -12,7 +12,7 @@
class CXFA_Command;
-class CJX_Command : public CJX_Node {
+class CJX_Command final : public CJX_Node {
public:
explicit CJX_Command(CXFA_Command* node);
~CJX_Command() override;
diff --git a/fxjs/xfa/cjx_connect.h b/fxjs/xfa/cjx_connect.h
index 77cee4f3c8..5ebb93e42d 100644
--- a/fxjs/xfa/cjx_connect.h
+++ b/fxjs/xfa/cjx_connect.h
@@ -12,7 +12,7 @@
class CXFA_Connect;
-class CJX_Connect : public CJX_Node {
+class CJX_Connect final : public CJX_Node {
public:
explicit CJX_Connect(CXFA_Connect* node);
~CJX_Connect() override;
diff --git a/fxjs/xfa/cjx_connectstring.h b/fxjs/xfa/cjx_connectstring.h
index f40a867d93..8a6beb3a6d 100644
--- a/fxjs/xfa/cjx_connectstring.h
+++ b/fxjs/xfa/cjx_connectstring.h
@@ -12,7 +12,7 @@
class CXFA_ConnectString;
-class CJX_ConnectString : public CJX_TextNode {
+class CJX_ConnectString final : public CJX_TextNode {
public:
explicit CJX_ConnectString(CXFA_ConnectString* node);
~CJX_ConnectString() override;
diff --git a/fxjs/xfa/cjx_contentarea.h b/fxjs/xfa/cjx_contentarea.h
index aeed6b62a2..82cbde1f83 100644
--- a/fxjs/xfa/cjx_contentarea.h
+++ b/fxjs/xfa/cjx_contentarea.h
@@ -12,7 +12,7 @@
class CXFA_ContentArea;
-class CJX_ContentArea : public CJX_Container {
+class CJX_ContentArea final : public CJX_Container {
public:
explicit CJX_ContentArea(CXFA_ContentArea* node);
~CJX_ContentArea() override;
diff --git a/fxjs/xfa/cjx_corner.h b/fxjs/xfa/cjx_corner.h
index 8db25245c9..905c05cb82 100644
--- a/fxjs/xfa/cjx_corner.h
+++ b/fxjs/xfa/cjx_corner.h
@@ -12,7 +12,7 @@
class CXFA_Corner;
-class CJX_Corner : public CJX_Node {
+class CJX_Corner final : public CJX_Node {
public:
explicit CJX_Corner(CXFA_Corner* node);
~CJX_Corner() override;
diff --git a/fxjs/xfa/cjx_datavalue.h b/fxjs/xfa/cjx_datavalue.h
index 00bf5cf08d..636899764e 100644
--- a/fxjs/xfa/cjx_datavalue.h
+++ b/fxjs/xfa/cjx_datavalue.h
@@ -12,7 +12,7 @@
class CXFA_DataValue;
-class CJX_DataValue : public CJX_Node {
+class CJX_DataValue final : public CJX_Node {
public:
explicit CJX_DataValue(CXFA_DataValue* node);
~CJX_DataValue() override;
diff --git a/fxjs/xfa/cjx_datawindow.h b/fxjs/xfa/cjx_datawindow.h
index d8e697d596..c148cb9c11 100644
--- a/fxjs/xfa/cjx_datawindow.h
+++ b/fxjs/xfa/cjx_datawindow.h
@@ -14,7 +14,7 @@
class CFXJSE_Value;
class CScript_DataWindow;
-class CJX_DataWindow : public CJX_Object {
+class CJX_DataWindow final : public CJX_Object {
public:
explicit CJX_DataWindow(CScript_DataWindow* window);
~CJX_DataWindow() override;
diff --git a/fxjs/xfa/cjx_date.h b/fxjs/xfa/cjx_date.h
index c788937f3c..95c188c2dd 100644
--- a/fxjs/xfa/cjx_date.h
+++ b/fxjs/xfa/cjx_date.h
@@ -12,7 +12,7 @@
class CXFA_Date;
-class CJX_Date : public CJX_Content {
+class CJX_Date final : public CJX_Content {
public:
explicit CJX_Date(CXFA_Date* node);
~CJX_Date() override;
diff --git a/fxjs/xfa/cjx_datetime.h b/fxjs/xfa/cjx_datetime.h
index 10796602e5..2b62a3b5cc 100644
--- a/fxjs/xfa/cjx_datetime.h
+++ b/fxjs/xfa/cjx_datetime.h
@@ -12,7 +12,7 @@
class CXFA_DateTime;
-class CJX_DateTime : public CJX_Node {
+class CJX_DateTime final : public CJX_Node {
public:
explicit CJX_DateTime(CXFA_DateTime* node);
~CJX_DateTime() override;
diff --git a/fxjs/xfa/cjx_datetimeedit.h b/fxjs/xfa/cjx_datetimeedit.h
index d90a4cfb52..449df365ea 100644
--- a/fxjs/xfa/cjx_datetimeedit.h
+++ b/fxjs/xfa/cjx_datetimeedit.h
@@ -12,7 +12,7 @@
class CXFA_DateTimeEdit;
-class CJX_DateTimeEdit : public CJX_Node {
+class CJX_DateTimeEdit final : public CJX_Node {
public:
explicit CJX_DateTimeEdit(CXFA_DateTimeEdit* node);
~CJX_DateTimeEdit() override;
diff --git a/fxjs/xfa/cjx_decimal.h b/fxjs/xfa/cjx_decimal.h
index b7ddec91c3..7511040b27 100644
--- a/fxjs/xfa/cjx_decimal.h
+++ b/fxjs/xfa/cjx_decimal.h
@@ -12,7 +12,7 @@
class CXFA_Decimal;
-class CJX_Decimal : public CJX_Content {
+class CJX_Decimal final : public CJX_Content {
public:
explicit CJX_Decimal(CXFA_Decimal* node);
~CJX_Decimal() override;
diff --git a/fxjs/xfa/cjx_defaultui.h b/fxjs/xfa/cjx_defaultui.h
index 29954fdae5..5e70109218 100644
--- a/fxjs/xfa/cjx_defaultui.h
+++ b/fxjs/xfa/cjx_defaultui.h
@@ -12,7 +12,7 @@
class CXFA_DefaultUi;
-class CJX_DefaultUi : public CJX_Node {
+class CJX_DefaultUi final : public CJX_Node {
public:
explicit CJX_DefaultUi(CXFA_DefaultUi* node);
~CJX_DefaultUi() override;
diff --git a/fxjs/xfa/cjx_delete.h b/fxjs/xfa/cjx_delete.h
index e89b1e4c85..c35cc1484e 100644
--- a/fxjs/xfa/cjx_delete.h
+++ b/fxjs/xfa/cjx_delete.h
@@ -12,7 +12,7 @@
class CXFA_Delete;
-class CJX_Delete : public CJX_TextNode {
+class CJX_Delete final : public CJX_TextNode {
public:
explicit CJX_Delete(CXFA_Delete* node);
~CJX_Delete() override;
diff --git a/fxjs/xfa/cjx_delta.h b/fxjs/xfa/cjx_delta.h
index 9458599c41..c499681de9 100644
--- a/fxjs/xfa/cjx_delta.h
+++ b/fxjs/xfa/cjx_delta.h
@@ -12,7 +12,7 @@
class CXFA_Delta;
-class CJX_Delta : public CJX_Object {
+class CJX_Delta final : public CJX_Object {
public:
explicit CJX_Delta(CXFA_Delta* delta);
~CJX_Delta() override;
diff --git a/fxjs/xfa/cjx_deltas.h b/fxjs/xfa/cjx_deltas.h
index c94753f17b..7b07a7cee4 100644
--- a/fxjs/xfa/cjx_deltas.h
+++ b/fxjs/xfa/cjx_deltas.h
@@ -11,7 +11,7 @@
class CXFA_Deltas;
-class CJX_Deltas : public CJX_List {
+class CJX_Deltas final : public CJX_List {
public:
explicit CJX_Deltas(CXFA_Deltas* node);
~CJX_Deltas() override;
diff --git a/fxjs/xfa/cjx_desc.h b/fxjs/xfa/cjx_desc.h
index d30b2227cf..99cb9ba474 100644
--- a/fxjs/xfa/cjx_desc.h
+++ b/fxjs/xfa/cjx_desc.h
@@ -12,7 +12,7 @@
class CXFA_Desc;
-class CJX_Desc : public CJX_Node {
+class CJX_Desc final : public CJX_Node {
public:
explicit CJX_Desc(CXFA_Desc* desc);
~CJX_Desc() override;
diff --git a/fxjs/xfa/cjx_digestmethod.h b/fxjs/xfa/cjx_digestmethod.h
index f4050f229e..beb0cd2d6f 100644
--- a/fxjs/xfa/cjx_digestmethod.h
+++ b/fxjs/xfa/cjx_digestmethod.h
@@ -12,7 +12,7 @@
class CXFA_DigestMethod;
-class CJX_DigestMethod : public CJX_Node {
+class CJX_DigestMethod final : public CJX_Node {
public:
explicit CJX_DigestMethod(CXFA_DigestMethod* node);
~CJX_DigestMethod() override;
diff --git a/fxjs/xfa/cjx_digestmethods.h b/fxjs/xfa/cjx_digestmethods.h
index c616584dcd..c011a3d4cd 100644
--- a/fxjs/xfa/cjx_digestmethods.h
+++ b/fxjs/xfa/cjx_digestmethods.h
@@ -12,7 +12,7 @@
class CXFA_DigestMethods;
-class CJX_DigestMethods : public CJX_Node {
+class CJX_DigestMethods final : public CJX_Node {
public:
explicit CJX_DigestMethods(CXFA_DigestMethods* node);
~CJX_DigestMethods() override;
diff --git a/fxjs/xfa/cjx_draw.h b/fxjs/xfa/cjx_draw.h
index 508d3e1597..4f53bef25a 100644
--- a/fxjs/xfa/cjx_draw.h
+++ b/fxjs/xfa/cjx_draw.h
@@ -12,7 +12,7 @@
class CXFA_Draw;
-class CJX_Draw : public CJX_Container {
+class CJX_Draw final : public CJX_Container {
public:
explicit CJX_Draw(CXFA_Draw* node);
~CJX_Draw() override;
diff --git a/fxjs/xfa/cjx_edge.h b/fxjs/xfa/cjx_edge.h
index c830a8d29c..ed3d7cc03d 100644
--- a/fxjs/xfa/cjx_edge.h
+++ b/fxjs/xfa/cjx_edge.h
@@ -12,7 +12,7 @@
class CXFA_Edge;
-class CJX_Edge : public CJX_Node {
+class CJX_Edge final : public CJX_Node {
public:
explicit CJX_Edge(CXFA_Edge* node);
~CJX_Edge() override;
diff --git a/fxjs/xfa/cjx_encoding.h b/fxjs/xfa/cjx_encoding.h
index ade3e380c3..4c02df56ad 100644
--- a/fxjs/xfa/cjx_encoding.h
+++ b/fxjs/xfa/cjx_encoding.h
@@ -12,7 +12,7 @@
class CXFA_Encoding;
-class CJX_Encoding : public CJX_Node {
+class CJX_Encoding final : public CJX_Node {
public:
explicit CJX_Encoding(CXFA_Encoding* node);
~CJX_Encoding() override;
diff --git a/fxjs/xfa/cjx_encodings.h b/fxjs/xfa/cjx_encodings.h
index e2f437660c..b1642f76ea 100644
--- a/fxjs/xfa/cjx_encodings.h
+++ b/fxjs/xfa/cjx_encodings.h
@@ -12,7 +12,7 @@
class CXFA_Encodings;
-class CJX_Encodings : public CJX_Node {
+class CJX_Encodings final : public CJX_Node {
public:
explicit CJX_Encodings(CXFA_Encodings* node);
~CJX_Encodings() override;
diff --git a/fxjs/xfa/cjx_encrypt.h b/fxjs/xfa/cjx_encrypt.h
index acbccf7ecc..7bb31f7969 100644
--- a/fxjs/xfa/cjx_encrypt.h
+++ b/fxjs/xfa/cjx_encrypt.h
@@ -12,7 +12,7 @@
class CXFA_Encrypt;
-class CJX_Encrypt : public CJX_Node {
+class CJX_Encrypt final : public CJX_Node {
public:
explicit CJX_Encrypt(CXFA_Encrypt* node);
~CJX_Encrypt() override;
diff --git a/fxjs/xfa/cjx_event.h b/fxjs/xfa/cjx_event.h
index d8c8b03fe0..64cd84b1ab 100644
--- a/fxjs/xfa/cjx_event.h
+++ b/fxjs/xfa/cjx_event.h
@@ -12,7 +12,7 @@
class CXFA_Event;
-class CJX_Event : public CJX_Node {
+class CJX_Event final : public CJX_Node {
public:
explicit CJX_Event(CXFA_Event* node);
~CJX_Event() override;
diff --git a/fxjs/xfa/cjx_eventpseudomodel.h b/fxjs/xfa/cjx_eventpseudomodel.h
index c52871e461..3a51098661 100644
--- a/fxjs/xfa/cjx_eventpseudomodel.h
+++ b/fxjs/xfa/cjx_eventpseudomodel.h
@@ -33,7 +33,7 @@ enum class XFA_Event {
CancelAction
};
-class CJX_EventPseudoModel : public CJX_Object {
+class CJX_EventPseudoModel final : public CJX_Object {
public:
explicit CJX_EventPseudoModel(CScript_EventPseudoModel* model);
~CJX_EventPseudoModel() override;
diff --git a/fxjs/xfa/cjx_exclgroup.h b/fxjs/xfa/cjx_exclgroup.h
index 492fb124bb..23870795c1 100644
--- a/fxjs/xfa/cjx_exclgroup.h
+++ b/fxjs/xfa/cjx_exclgroup.h
@@ -12,7 +12,7 @@
class CXFA_ExclGroup;
-class CJX_ExclGroup : public CJX_Node {
+class CJX_ExclGroup final : public CJX_Node {
public:
explicit CJX_ExclGroup(CXFA_ExclGroup* group);
~CJX_ExclGroup() override;
diff --git a/fxjs/xfa/cjx_exdata.h b/fxjs/xfa/cjx_exdata.h
index 06a5d210c9..b25ef07695 100644
--- a/fxjs/xfa/cjx_exdata.h
+++ b/fxjs/xfa/cjx_exdata.h
@@ -12,7 +12,7 @@
class CXFA_ExData;
-class CJX_ExData : public CJX_Content {
+class CJX_ExData final : public CJX_Content {
public:
explicit CJX_ExData(CXFA_ExData* node);
~CJX_ExData() override;
diff --git a/fxjs/xfa/cjx_execute.h b/fxjs/xfa/cjx_execute.h
index 338f8c3d1f..29e4480dcf 100644
--- a/fxjs/xfa/cjx_execute.h
+++ b/fxjs/xfa/cjx_execute.h
@@ -12,7 +12,7 @@
class CXFA_Execute;
-class CJX_Execute : public CJX_Node {
+class CJX_Execute final : public CJX_Node {
public:
explicit CJX_Execute(CXFA_Execute* node);
~CJX_Execute() override;
diff --git a/fxjs/xfa/cjx_exobject.h b/fxjs/xfa/cjx_exobject.h
index 2e10362b2d..2dc7e79d22 100644
--- a/fxjs/xfa/cjx_exobject.h
+++ b/fxjs/xfa/cjx_exobject.h
@@ -12,7 +12,7 @@
class CXFA_ExObject;
-class CJX_ExObject : public CJX_Node {
+class CJX_ExObject final : public CJX_Node {
public:
explicit CJX_ExObject(CXFA_ExObject* node);
~CJX_ExObject() override;
diff --git a/fxjs/xfa/cjx_extras.h b/fxjs/xfa/cjx_extras.h
index 829aa9d34d..b23653632c 100644
--- a/fxjs/xfa/cjx_extras.h
+++ b/fxjs/xfa/cjx_extras.h
@@ -12,7 +12,7 @@
class CXFA_Extras;
-class CJX_Extras : public CJX_Node {
+class CJX_Extras final : public CJX_Node {
public:
explicit CJX_Extras(CXFA_Extras* node);
~CJX_Extras() override;
diff --git a/fxjs/xfa/cjx_field.h b/fxjs/xfa/cjx_field.h
index bc8f2cfb59..0f9e2995f9 100644
--- a/fxjs/xfa/cjx_field.h
+++ b/fxjs/xfa/cjx_field.h
@@ -12,7 +12,7 @@
class CXFA_Field;
-class CJX_Field : public CJX_Container {
+class CJX_Field final : public CJX_Container {
public:
explicit CJX_Field(CXFA_Field* field);
~CJX_Field() override;
diff --git a/fxjs/xfa/cjx_fill.h b/fxjs/xfa/cjx_fill.h
index 064a249d9d..b8377d31d9 100644
--- a/fxjs/xfa/cjx_fill.h
+++ b/fxjs/xfa/cjx_fill.h
@@ -12,7 +12,7 @@
class CXFA_Fill;
-class CJX_Fill : public CJX_Node {
+class CJX_Fill final : public CJX_Node {
public:
explicit CJX_Fill(CXFA_Fill* node);
~CJX_Fill() override;
diff --git a/fxjs/xfa/cjx_filter.h b/fxjs/xfa/cjx_filter.h
index 6012123ff9..c52728679e 100644
--- a/fxjs/xfa/cjx_filter.h
+++ b/fxjs/xfa/cjx_filter.h
@@ -12,7 +12,7 @@
class CXFA_Filter;
-class CJX_Filter : public CJX_Node {
+class CJX_Filter final : public CJX_Node {
public:
explicit CJX_Filter(CXFA_Filter* node);
~CJX_Filter() override;
diff --git a/fxjs/xfa/cjx_float.h b/fxjs/xfa/cjx_float.h
index 2f8c934ad9..12dbe578bc 100644
--- a/fxjs/xfa/cjx_float.h
+++ b/fxjs/xfa/cjx_float.h
@@ -12,7 +12,7 @@
class CXFA_Float;
-class CJX_Float : public CJX_Content {
+class CJX_Float final : public CJX_Content {
public:
explicit CJX_Float(CXFA_Float* node);
~CJX_Float() override;
diff --git a/fxjs/xfa/cjx_font.h b/fxjs/xfa/cjx_font.h
index a5a13560b6..9cd894465e 100644
--- a/fxjs/xfa/cjx_font.h
+++ b/fxjs/xfa/cjx_font.h
@@ -12,7 +12,7 @@
class CXFA_Font;
-class CJX_Font : public CJX_Node {
+class CJX_Font final : public CJX_Node {
public:
explicit CJX_Font(CXFA_Font* node);
~CJX_Font() override;
diff --git a/fxjs/xfa/cjx_form.h b/fxjs/xfa/cjx_form.h
index f2325b37cf..67c7b10025 100644
--- a/fxjs/xfa/cjx_form.h
+++ b/fxjs/xfa/cjx_form.h
@@ -12,7 +12,7 @@
class CXFA_Form;
-class CJX_Form : public CJX_Model {
+class CJX_Form final : public CJX_Model {
public:
explicit CJX_Form(CXFA_Form* form);
~CJX_Form() override;
diff --git a/fxjs/xfa/cjx_format.h b/fxjs/xfa/cjx_format.h
index 3f4a42b0da..cb4a8cc20a 100644
--- a/fxjs/xfa/cjx_format.h
+++ b/fxjs/xfa/cjx_format.h
@@ -12,7 +12,7 @@
class CXFA_Format;
-class CJX_Format : public CJX_Node {
+class CJX_Format final : public CJX_Node {
public:
explicit CJX_Format(CXFA_Format* node);
~CJX_Format() override;
diff --git a/fxjs/xfa/cjx_handler.h b/fxjs/xfa/cjx_handler.h
index feb0e6dc7a..79aa3a1f20 100644
--- a/fxjs/xfa/cjx_handler.h
+++ b/fxjs/xfa/cjx_handler.h
@@ -12,7 +12,7 @@
class CXFA_Handler;
-class CJX_Handler : public CJX_TextNode {
+class CJX_Handler final : public CJX_TextNode {
public:
explicit CJX_Handler(CXFA_Handler* node);
~CJX_Handler() override;
diff --git a/fxjs/xfa/cjx_hostpseudomodel.h b/fxjs/xfa/cjx_hostpseudomodel.h
index 7ef7d032f6..0991aec745 100644
--- a/fxjs/xfa/cjx_hostpseudomodel.h
+++ b/fxjs/xfa/cjx_hostpseudomodel.h
@@ -14,7 +14,7 @@
class CFXJSE_Value;
class CScript_HostPseudoModel;
-class CJX_HostPseudoModel : public CJX_Object {
+class CJX_HostPseudoModel final : public CJX_Object {
public:
explicit CJX_HostPseudoModel(CScript_HostPseudoModel* model);
~CJX_HostPseudoModel() override;
diff --git a/fxjs/xfa/cjx_image.h b/fxjs/xfa/cjx_image.h
index 682ea315b9..71f859dde3 100644
--- a/fxjs/xfa/cjx_image.h
+++ b/fxjs/xfa/cjx_image.h
@@ -12,7 +12,7 @@
class CXFA_Image;
-class CJX_Image : public CJX_Node {
+class CJX_Image final : public CJX_Node {
public:
explicit CJX_Image(CXFA_Image* node);
~CJX_Image() override;
diff --git a/fxjs/xfa/cjx_imageedit.h b/fxjs/xfa/cjx_imageedit.h
index 6b7f1d31a0..9fda373439 100644
--- a/fxjs/xfa/cjx_imageedit.h
+++ b/fxjs/xfa/cjx_imageedit.h
@@ -12,7 +12,7 @@
class CXFA_ImageEdit;
-class CJX_ImageEdit : public CJX_Node {
+class CJX_ImageEdit final : public CJX_Node {
public:
explicit CJX_ImageEdit(CXFA_ImageEdit* node);
~CJX_ImageEdit() override;
diff --git a/fxjs/xfa/cjx_insert.h b/fxjs/xfa/cjx_insert.h
index 888a2462b0..a414526b05 100644
--- a/fxjs/xfa/cjx_insert.h
+++ b/fxjs/xfa/cjx_insert.h
@@ -12,7 +12,7 @@
class CXFA_Insert;
-class CJX_Insert : public CJX_TextNode {
+class CJX_Insert final : public CJX_TextNode {
public:
explicit CJX_Insert(CXFA_Insert* node);
~CJX_Insert() override;
diff --git a/fxjs/xfa/cjx_instancemanager.h b/fxjs/xfa/cjx_instancemanager.h
index b151d71706..139dbe3e18 100644
--- a/fxjs/xfa/cjx_instancemanager.h
+++ b/fxjs/xfa/cjx_instancemanager.h
@@ -12,7 +12,7 @@
class CXFA_InstanceManager;
-class CJX_InstanceManager : public CJX_Node {
+class CJX_InstanceManager final : public CJX_Node {
public:
explicit CJX_InstanceManager(CXFA_InstanceManager* mgr);
~CJX_InstanceManager() override;
diff --git a/fxjs/xfa/cjx_integer.h b/fxjs/xfa/cjx_integer.h
index 426235b0ac..e15deb9a7a 100644
--- a/fxjs/xfa/cjx_integer.h
+++ b/fxjs/xfa/cjx_integer.h
@@ -12,7 +12,7 @@
class CXFA_Integer;
-class CJX_Integer : public CJX_Content {
+class CJX_Integer final : public CJX_Content {
public:
explicit CJX_Integer(CXFA_Integer* node);
~CJX_Integer() override;
diff --git a/fxjs/xfa/cjx_issuers.h b/fxjs/xfa/cjx_issuers.h
index bdd777a5eb..23a7457877 100644
--- a/fxjs/xfa/cjx_issuers.h
+++ b/fxjs/xfa/cjx_issuers.h
@@ -12,7 +12,7 @@
class CXFA_Issuers;
-class CJX_Issuers : public CJX_Node {
+class CJX_Issuers final : public CJX_Node {
public:
explicit CJX_Issuers(CXFA_Issuers* node);
~CJX_Issuers() override;
diff --git a/fxjs/xfa/cjx_items.h b/fxjs/xfa/cjx_items.h
index 039757f15e..d29fee7975 100644
--- a/fxjs/xfa/cjx_items.h
+++ b/fxjs/xfa/cjx_items.h
@@ -12,7 +12,7 @@
class CXFA_Items;
-class CJX_Items : public CJX_Node {
+class CJX_Items final : public CJX_Node {
public:
explicit CJX_Items(CXFA_Items* node);
~CJX_Items() override;
diff --git a/fxjs/xfa/cjx_keep.h b/fxjs/xfa/cjx_keep.h
index 3e1166f1a9..c5fcb252c8 100644
--- a/fxjs/xfa/cjx_keep.h
+++ b/fxjs/xfa/cjx_keep.h
@@ -12,7 +12,7 @@
class CXFA_Keep;
-class CJX_Keep : public CJX_Node {
+class CJX_Keep final : public CJX_Node {
public:
explicit CJX_Keep(CXFA_Keep* node);
~CJX_Keep() override;
diff --git a/fxjs/xfa/cjx_keyusage.h b/fxjs/xfa/cjx_keyusage.h
index 54ec8dfd40..470ece6804 100644
--- a/fxjs/xfa/cjx_keyusage.h
+++ b/fxjs/xfa/cjx_keyusage.h
@@ -12,7 +12,7 @@
class CXFA_KeyUsage;
-class CJX_KeyUsage : public CJX_Node {
+class CJX_KeyUsage final : public CJX_Node {
public:
explicit CJX_KeyUsage(CXFA_KeyUsage* node);
~CJX_KeyUsage() override;
diff --git a/fxjs/xfa/cjx_layoutpseudomodel.h b/fxjs/xfa/cjx_layoutpseudomodel.h
index 3fd77ef6b5..a252eaac38 100644
--- a/fxjs/xfa/cjx_layoutpseudomodel.h
+++ b/fxjs/xfa/cjx_layoutpseudomodel.h
@@ -24,7 +24,7 @@ class CScript_LayoutPseudoModel;
class CXFA_LayoutProcessor;
class CXFA_Node;
-class CJX_LayoutPseudoModel : public CJX_Object {
+class CJX_LayoutPseudoModel final : public CJX_Object {
public:
explicit CJX_LayoutPseudoModel(CScript_LayoutPseudoModel* model);
~CJX_LayoutPseudoModel() override;
diff --git a/fxjs/xfa/cjx_line.h b/fxjs/xfa/cjx_line.h
index 48e8a4e275..e7b0e8e911 100644
--- a/fxjs/xfa/cjx_line.h
+++ b/fxjs/xfa/cjx_line.h
@@ -12,7 +12,7 @@
class CXFA_Line;
-class CJX_Line : public CJX_Node {
+class CJX_Line final : public CJX_Node {
public:
explicit CJX_Line(CXFA_Line* node);
~CJX_Line() override;
diff --git a/fxjs/xfa/cjx_linear.h b/fxjs/xfa/cjx_linear.h
index b1d3a8834a..979511cc97 100644
--- a/fxjs/xfa/cjx_linear.h
+++ b/fxjs/xfa/cjx_linear.h
@@ -12,7 +12,7 @@
class CXFA_Linear;
-class CJX_Linear : public CJX_Node {
+class CJX_Linear final : public CJX_Node {
public:
explicit CJX_Linear(CXFA_Linear* node);
~CJX_Linear() override;
diff --git a/fxjs/xfa/cjx_logpseudomodel.h b/fxjs/xfa/cjx_logpseudomodel.h
index 3994411c72..dbf097f367 100644
--- a/fxjs/xfa/cjx_logpseudomodel.h
+++ b/fxjs/xfa/cjx_logpseudomodel.h
@@ -14,7 +14,7 @@ class CScript_LogPseudoModel;
// TODO(dsinclair): This doesn't exist in the spec. Remove after
// xfa_basic_data_element_script is removed.
-class CJX_LogPseudoModel : public CJX_Object {
+class CJX_LogPseudoModel final : public CJX_Object {
public:
explicit CJX_LogPseudoModel(CScript_LogPseudoModel* model);
~CJX_LogPseudoModel() override;
diff --git a/fxjs/xfa/cjx_manifest.h b/fxjs/xfa/cjx_manifest.h
index fa16b470e0..717e1f11a0 100644
--- a/fxjs/xfa/cjx_manifest.h
+++ b/fxjs/xfa/cjx_manifest.h
@@ -12,7 +12,7 @@
class CXFA_Manifest;
-class CJX_Manifest : public CJX_Node {
+class CJX_Manifest final : public CJX_Node {
public:
explicit CJX_Manifest(CXFA_Manifest* manifest);
~CJX_Manifest() override;
diff --git a/fxjs/xfa/cjx_map.h b/fxjs/xfa/cjx_map.h
index 7a0eb37f16..8178384a8c 100644
--- a/fxjs/xfa/cjx_map.h
+++ b/fxjs/xfa/cjx_map.h
@@ -12,7 +12,7 @@
class CXFA_Map;
-class CJX_Map : public CJX_Node {
+class CJX_Map final : public CJX_Node {
public:
explicit CJX_Map(CXFA_Map* node);
~CJX_Map() override;
diff --git a/fxjs/xfa/cjx_margin.h b/fxjs/xfa/cjx_margin.h
index be0e2207e4..6cac5a3e46 100644
--- a/fxjs/xfa/cjx_margin.h
+++ b/fxjs/xfa/cjx_margin.h
@@ -12,7 +12,7 @@
class CXFA_Margin;
-class CJX_Margin : public CJX_Node {
+class CJX_Margin final : public CJX_Node {
public:
explicit CJX_Margin(CXFA_Margin* node);
~CJX_Margin() override;
diff --git a/fxjs/xfa/cjx_mdp.h b/fxjs/xfa/cjx_mdp.h
index a58dc821ab..833e2dbc97 100644
--- a/fxjs/xfa/cjx_mdp.h
+++ b/fxjs/xfa/cjx_mdp.h
@@ -12,7 +12,7 @@
class CXFA_Mdp;
-class CJX_Mdp : public CJX_Node {
+class CJX_Mdp final : public CJX_Node {
public:
explicit CJX_Mdp(CXFA_Mdp* node);
~CJX_Mdp() override;
diff --git a/fxjs/xfa/cjx_medium.h b/fxjs/xfa/cjx_medium.h
index 88daa1b0ce..1efb34b0e9 100644
--- a/fxjs/xfa/cjx_medium.h
+++ b/fxjs/xfa/cjx_medium.h
@@ -12,7 +12,7 @@
class CXFA_Medium;
-class CJX_Medium : public CJX_Node {
+class CJX_Medium final : public CJX_Node {
public:
explicit CJX_Medium(CXFA_Medium* node);
~CJX_Medium() override;
diff --git a/fxjs/xfa/cjx_message.h b/fxjs/xfa/cjx_message.h
index 989a2de11e..f5c577ce90 100644
--- a/fxjs/xfa/cjx_message.h
+++ b/fxjs/xfa/cjx_message.h
@@ -12,7 +12,7 @@
class CXFA_Message;
-class CJX_Message : public CJX_Node {
+class CJX_Message final : public CJX_Node {
public:
explicit CJX_Message(CXFA_Message* node);
~CJX_Message() override;
diff --git a/fxjs/xfa/cjx_numericedit.h b/fxjs/xfa/cjx_numericedit.h
index b83ccea0d7..d74b0c8d22 100644
--- a/fxjs/xfa/cjx_numericedit.h
+++ b/fxjs/xfa/cjx_numericedit.h
@@ -12,7 +12,7 @@
class CXFA_NumericEdit;
-class CJX_NumericEdit : public CJX_Node {
+class CJX_NumericEdit final : public CJX_Node {
public:
explicit CJX_NumericEdit(CXFA_NumericEdit* node);
~CJX_NumericEdit() override;
diff --git a/fxjs/xfa/cjx_occur.h b/fxjs/xfa/cjx_occur.h
index b67007c1ac..114f5b3d94 100644
--- a/fxjs/xfa/cjx_occur.h
+++ b/fxjs/xfa/cjx_occur.h
@@ -12,7 +12,7 @@
class CXFA_Occur;
-class CJX_Occur : public CJX_Node {
+class CJX_Occur final : public CJX_Node {
public:
explicit CJX_Occur(CXFA_Occur* node);
~CJX_Occur() override;
diff --git a/fxjs/xfa/cjx_oid.h b/fxjs/xfa/cjx_oid.h
index 8380d27575..f3c528ebdb 100644
--- a/fxjs/xfa/cjx_oid.h
+++ b/fxjs/xfa/cjx_oid.h
@@ -12,7 +12,7 @@
class CXFA_Oid;
-class CJX_Oid : public CJX_TextNode {
+class CJX_Oid final : public CJX_TextNode {
public:
explicit CJX_Oid(CXFA_Oid* node);
~CJX_Oid() override;
diff --git a/fxjs/xfa/cjx_oids.h b/fxjs/xfa/cjx_oids.h
index 64d751be38..a205fa0eab 100644
--- a/fxjs/xfa/cjx_oids.h
+++ b/fxjs/xfa/cjx_oids.h
@@ -12,7 +12,7 @@
class CXFA_Oids;
-class CJX_Oids : public CJX_Node {
+class CJX_Oids final : public CJX_Node {
public:
explicit CJX_Oids(CXFA_Oids* node);
~CJX_Oids() override;
diff --git a/fxjs/xfa/cjx_operation.h b/fxjs/xfa/cjx_operation.h
index 36411f612f..3d169972dc 100644
--- a/fxjs/xfa/cjx_operation.h
+++ b/fxjs/xfa/cjx_operation.h
@@ -12,7 +12,7 @@
class CXFA_Operation;
-class CJX_Operation : public CJX_TextNode {
+class CJX_Operation final : public CJX_TextNode {
public:
explicit CJX_Operation(CXFA_Operation* node);
~CJX_Operation() override;
diff --git a/fxjs/xfa/cjx_overflow.h b/fxjs/xfa/cjx_overflow.h
index e0859ae5d6..5bd9b6dd30 100644
--- a/fxjs/xfa/cjx_overflow.h
+++ b/fxjs/xfa/cjx_overflow.h
@@ -12,7 +12,7 @@
class CXFA_Overflow;
-class CJX_Overflow : public CJX_Node {
+class CJX_Overflow final : public CJX_Node {
public:
explicit CJX_Overflow(CXFA_Overflow* node);
~CJX_Overflow() override;
diff --git a/fxjs/xfa/cjx_packet.h b/fxjs/xfa/cjx_packet.h
index 7950678352..f1ad92035a 100644
--- a/fxjs/xfa/cjx_packet.h
+++ b/fxjs/xfa/cjx_packet.h
@@ -12,7 +12,7 @@
class CXFA_Packet;
-class CJX_Packet : public CJX_Node {
+class CJX_Packet final : public CJX_Node {
public:
explicit CJX_Packet(CXFA_Packet* packet);
~CJX_Packet() override;
diff --git a/fxjs/xfa/cjx_pagearea.h b/fxjs/xfa/cjx_pagearea.h
index df3db36e44..8985a478d9 100644
--- a/fxjs/xfa/cjx_pagearea.h
+++ b/fxjs/xfa/cjx_pagearea.h
@@ -12,7 +12,7 @@
class CXFA_PageArea;
-class CJX_PageArea : public CJX_Container {
+class CJX_PageArea final : public CJX_Container {
public:
explicit CJX_PageArea(CXFA_PageArea* node);
~CJX_PageArea() override;
diff --git a/fxjs/xfa/cjx_pageset.h b/fxjs/xfa/cjx_pageset.h
index d0cd12b905..adffdc04c5 100644
--- a/fxjs/xfa/cjx_pageset.h
+++ b/fxjs/xfa/cjx_pageset.h
@@ -12,7 +12,7 @@
class CXFA_PageSet;
-class CJX_PageSet : public CJX_Container {
+class CJX_PageSet final : public CJX_Container {
public:
explicit CJX_PageSet(CXFA_PageSet* node);
~CJX_PageSet() override;
diff --git a/fxjs/xfa/cjx_para.h b/fxjs/xfa/cjx_para.h
index 27e3189f62..0a527d66ef 100644
--- a/fxjs/xfa/cjx_para.h
+++ b/fxjs/xfa/cjx_para.h
@@ -12,7 +12,7 @@
class CXFA_Para;
-class CJX_Para : public CJX_Node {
+class CJX_Para final : public CJX_Node {
public:
explicit CJX_Para(CXFA_Para* node);
~CJX_Para() override;
diff --git a/fxjs/xfa/cjx_password.h b/fxjs/xfa/cjx_password.h
index bd6b95562d..1cec53c6c9 100644
--- a/fxjs/xfa/cjx_password.h
+++ b/fxjs/xfa/cjx_password.h
@@ -12,7 +12,7 @@
class CXFA_Password;
-class CJX_Password : public CJX_TextNode {
+class CJX_Password final : public CJX_TextNode {
public:
explicit CJX_Password(CXFA_Password* node);
~CJX_Password() override;
diff --git a/fxjs/xfa/cjx_passwordedit.h b/fxjs/xfa/cjx_passwordedit.h
index df6d8eb070..4f9ce1a5d7 100644
--- a/fxjs/xfa/cjx_passwordedit.h
+++ b/fxjs/xfa/cjx_passwordedit.h
@@ -12,7 +12,7 @@
class CXFA_PasswordEdit;
-class CJX_PasswordEdit : public CJX_Node {
+class CJX_PasswordEdit final : public CJX_Node {
public:
explicit CJX_PasswordEdit(CXFA_PasswordEdit* node);
~CJX_PasswordEdit() override;
diff --git a/fxjs/xfa/cjx_pattern.h b/fxjs/xfa/cjx_pattern.h
index bc3abd06d5..0bb975b836 100644
--- a/fxjs/xfa/cjx_pattern.h
+++ b/fxjs/xfa/cjx_pattern.h
@@ -12,7 +12,7 @@
class CXFA_Pattern;
-class CJX_Pattern : public CJX_Node {
+class CJX_Pattern final : public CJX_Node {
public:
explicit CJX_Pattern(CXFA_Pattern* node);
~CJX_Pattern() override;
diff --git a/fxjs/xfa/cjx_picture.h b/fxjs/xfa/cjx_picture.h
index a07cee708e..e2dc0636f5 100644
--- a/fxjs/xfa/cjx_picture.h
+++ b/fxjs/xfa/cjx_picture.h
@@ -12,7 +12,7 @@
class CXFA_Picture;
-class CJX_Picture : public CJX_Node {
+class CJX_Picture final : public CJX_Node {
public:
explicit CJX_Picture(CXFA_Picture* node);
~CJX_Picture() override;
diff --git a/fxjs/xfa/cjx_query.h b/fxjs/xfa/cjx_query.h
index 7ad281a411..893b2b7531 100644
--- a/fxjs/xfa/cjx_query.h
+++ b/fxjs/xfa/cjx_query.h
@@ -12,7 +12,7 @@
class CXFA_Query;
-class CJX_Query : public CJX_Node {
+class CJX_Query final : public CJX_Node {
public:
explicit CJX_Query(CXFA_Query* node);
~CJX_Query() override;
diff --git a/fxjs/xfa/cjx_radial.h b/fxjs/xfa/cjx_radial.h
index 0ac838627b..d7ad871a98 100644
--- a/fxjs/xfa/cjx_radial.h
+++ b/fxjs/xfa/cjx_radial.h
@@ -12,7 +12,7 @@
class CXFA_Radial;
-class CJX_Radial : public CJX_Node {
+class CJX_Radial final : public CJX_Node {
public:
explicit CJX_Radial(CXFA_Radial* node);
~CJX_Radial() override;
diff --git a/fxjs/xfa/cjx_reason.h b/fxjs/xfa/cjx_reason.h
index bfff55024b..b69c638143 100644
--- a/fxjs/xfa/cjx_reason.h
+++ b/fxjs/xfa/cjx_reason.h
@@ -12,7 +12,7 @@
class CXFA_Reason;
-class CJX_Reason : public CJX_TextNode {
+class CJX_Reason final : public CJX_TextNode {
public:
explicit CJX_Reason(CXFA_Reason* node);
~CJX_Reason() override;
diff --git a/fxjs/xfa/cjx_reasons.h b/fxjs/xfa/cjx_reasons.h
index c6a4b35aa3..80cdcff76b 100644
--- a/fxjs/xfa/cjx_reasons.h
+++ b/fxjs/xfa/cjx_reasons.h
@@ -12,7 +12,7 @@
class CXFA_Reasons;
-class CJX_Reasons : public CJX_Node {
+class CJX_Reasons final : public CJX_Node {
public:
explicit CJX_Reasons(CXFA_Reasons* node);
~CJX_Reasons() override;
diff --git a/fxjs/xfa/cjx_recordset.h b/fxjs/xfa/cjx_recordset.h
index da2319f649..e4973f5287 100644
--- a/fxjs/xfa/cjx_recordset.h
+++ b/fxjs/xfa/cjx_recordset.h
@@ -12,7 +12,7 @@
class CXFA_RecordSet;
-class CJX_RecordSet : public CJX_Node {
+class CJX_RecordSet final : public CJX_Node {
public:
explicit CJX_RecordSet(CXFA_RecordSet* node);
~CJX_RecordSet() override;
diff --git a/fxjs/xfa/cjx_rectangle.h b/fxjs/xfa/cjx_rectangle.h
index e241b98f0b..2aed04699d 100644
--- a/fxjs/xfa/cjx_rectangle.h
+++ b/fxjs/xfa/cjx_rectangle.h
@@ -12,7 +12,7 @@
class CXFA_Rectangle;
-class CJX_Rectangle : public CJX_Node {
+class CJX_Rectangle final : public CJX_Node {
public:
explicit CJX_Rectangle(CXFA_Rectangle* node);
~CJX_Rectangle() override;
diff --git a/fxjs/xfa/cjx_ref.h b/fxjs/xfa/cjx_ref.h
index 9a36fc3483..aaf4a5ff39 100644
--- a/fxjs/xfa/cjx_ref.h
+++ b/fxjs/xfa/cjx_ref.h
@@ -12,7 +12,7 @@
class CXFA_Ref;
-class CJX_Ref : public CJX_TextNode {
+class CJX_Ref final : public CJX_TextNode {
public:
explicit CJX_Ref(CXFA_Ref* node);
~CJX_Ref() override;
diff --git a/fxjs/xfa/cjx_rootelement.h b/fxjs/xfa/cjx_rootelement.h
index 925f751ecd..95e192f122 100644
--- a/fxjs/xfa/cjx_rootelement.h
+++ b/fxjs/xfa/cjx_rootelement.h
@@ -12,7 +12,7 @@
class CXFA_RootElement;
-class CJX_RootElement : public CJX_TextNode {
+class CJX_RootElement final : public CJX_TextNode {
public:
explicit CJX_RootElement(CXFA_RootElement* node);
~CJX_RootElement() override;
diff --git a/fxjs/xfa/cjx_script.h b/fxjs/xfa/cjx_script.h
index fe76df49e0..e1e9a83f51 100644
--- a/fxjs/xfa/cjx_script.h
+++ b/fxjs/xfa/cjx_script.h
@@ -12,7 +12,7 @@
class CXFA_Script;
-class CJX_Script : public CJX_Node {
+class CJX_Script final : public CJX_Node {
public:
explicit CJX_Script(CXFA_Script* node);
~CJX_Script() override;
diff --git a/fxjs/xfa/cjx_select.h b/fxjs/xfa/cjx_select.h
index d59c1d6f57..ff8126695f 100644
--- a/fxjs/xfa/cjx_select.h
+++ b/fxjs/xfa/cjx_select.h
@@ -12,7 +12,7 @@
class CXFA_Select;
-class CJX_Select : public CJX_TextNode {
+class CJX_Select final : public CJX_TextNode {
public:
explicit CJX_Select(CXFA_Select* node);
~CJX_Select() override;
diff --git a/fxjs/xfa/cjx_setproperty.h b/fxjs/xfa/cjx_setproperty.h
index 1d8441feba..042f902184 100644
--- a/fxjs/xfa/cjx_setproperty.h
+++ b/fxjs/xfa/cjx_setproperty.h
@@ -12,7 +12,7 @@
class CXFA_SetProperty;
-class CJX_SetProperty : public CJX_Node {
+class CJX_SetProperty final : public CJX_Node {
public:
explicit CJX_SetProperty(CXFA_SetProperty* node);
~CJX_SetProperty() override;
diff --git a/fxjs/xfa/cjx_signature.h b/fxjs/xfa/cjx_signature.h
index 12a1478c61..e29c6c5199 100644
--- a/fxjs/xfa/cjx_signature.h
+++ b/fxjs/xfa/cjx_signature.h
@@ -12,7 +12,7 @@
class CXFA_Signature;
-class CJX_Signature : public CJX_Node {
+class CJX_Signature final : public CJX_Node {
public:
explicit CJX_Signature(CXFA_Signature* node);
~CJX_Signature() override;
diff --git a/fxjs/xfa/cjx_signatureproperties.h b/fxjs/xfa/cjx_signatureproperties.h
index 6fd59cf03d..beb8744dd0 100644
--- a/fxjs/xfa/cjx_signatureproperties.h
+++ b/fxjs/xfa/cjx_signatureproperties.h
@@ -13,7 +13,7 @@
class CXFA_SignatureProperties;
/* Deprecated */
-class CJX_SignatureProperties : public CJX_Node {
+class CJX_SignatureProperties final : public CJX_Node {
public:
explicit CJX_SignatureProperties(CXFA_SignatureProperties* node);
~CJX_SignatureProperties() override;
diff --git a/fxjs/xfa/cjx_signaturepseudomodel.h b/fxjs/xfa/cjx_signaturepseudomodel.h
index 0184cba0fd..84a8751ad2 100644
--- a/fxjs/xfa/cjx_signaturepseudomodel.h
+++ b/fxjs/xfa/cjx_signaturepseudomodel.h
@@ -12,7 +12,7 @@
class CScript_SignaturePseudoModel;
-class CJX_SignaturePseudoModel : public CJX_Object {
+class CJX_SignaturePseudoModel final : public CJX_Object {
public:
explicit CJX_SignaturePseudoModel(CScript_SignaturePseudoModel* model);
~CJX_SignaturePseudoModel() override;
diff --git a/fxjs/xfa/cjx_signdata.h b/fxjs/xfa/cjx_signdata.h
index 8b688771ed..ee841bc390 100644
--- a/fxjs/xfa/cjx_signdata.h
+++ b/fxjs/xfa/cjx_signdata.h
@@ -12,7 +12,7 @@
class CXFA_SignData;
-class CJX_SignData : public CJX_Node {
+class CJX_SignData final : public CJX_Node {
public:
explicit CJX_SignData(CXFA_SignData* node);
~CJX_SignData() override;
diff --git a/fxjs/xfa/cjx_signing.h b/fxjs/xfa/cjx_signing.h
index 428e92b830..60e7739ba7 100644
--- a/fxjs/xfa/cjx_signing.h
+++ b/fxjs/xfa/cjx_signing.h
@@ -12,7 +12,7 @@
class CXFA_Signing;
-class CJX_Signing : public CJX_Node {
+class CJX_Signing final : public CJX_Node {
public:
explicit CJX_Signing(CXFA_Signing* node);
~CJX_Signing() override;
diff --git a/fxjs/xfa/cjx_soapaction.h b/fxjs/xfa/cjx_soapaction.h
index 3da3825d96..9523f5f42f 100644
--- a/fxjs/xfa/cjx_soapaction.h
+++ b/fxjs/xfa/cjx_soapaction.h
@@ -12,7 +12,7 @@
class CXFA_SoapAction;
-class CJX_SoapAction : public CJX_TextNode {
+class CJX_SoapAction final : public CJX_TextNode {
public:
explicit CJX_SoapAction(CXFA_SoapAction* node);
~CJX_SoapAction() override;
diff --git a/fxjs/xfa/cjx_soapaddress.h b/fxjs/xfa/cjx_soapaddress.h
index 14e7abf851..13137c143f 100644
--- a/fxjs/xfa/cjx_soapaddress.h
+++ b/fxjs/xfa/cjx_soapaddress.h
@@ -12,7 +12,7 @@
class CXFA_SoapAddress;
-class CJX_SoapAddress : public CJX_TextNode {
+class CJX_SoapAddress final : public CJX_TextNode {
public:
explicit CJX_SoapAddress(CXFA_SoapAddress* node);
~CJX_SoapAddress() override;
diff --git a/fxjs/xfa/cjx_solid.h b/fxjs/xfa/cjx_solid.h
index a6ecc7bd98..dab7ec3d65 100644
--- a/fxjs/xfa/cjx_solid.h
+++ b/fxjs/xfa/cjx_solid.h
@@ -12,7 +12,7 @@
class CXFA_Solid;
-class CJX_Solid : public CJX_Node {
+class CJX_Solid final : public CJX_Node {
public:
explicit CJX_Solid(CXFA_Solid* node);
~CJX_Solid() override;
diff --git a/fxjs/xfa/cjx_source.h b/fxjs/xfa/cjx_source.h
index 66e61f0618..32721fbb77 100644
--- a/fxjs/xfa/cjx_source.h
+++ b/fxjs/xfa/cjx_source.h
@@ -12,7 +12,7 @@
class CXFA_Source;
-class CJX_Source : public CJX_Node {
+class CJX_Source final : public CJX_Node {
public:
explicit CJX_Source(CXFA_Source* src);
~CJX_Source() override;
diff --git a/fxjs/xfa/cjx_sourceset.h b/fxjs/xfa/cjx_sourceset.h
index 32018a9c04..f72a048d89 100644
--- a/fxjs/xfa/cjx_sourceset.h
+++ b/fxjs/xfa/cjx_sourceset.h
@@ -12,7 +12,7 @@
class CXFA_SourceSet;
-class CJX_SourceSet : public CJX_Model {
+class CJX_SourceSet final : public CJX_Model {
public:
explicit CJX_SourceSet(CXFA_SourceSet* node);
~CJX_SourceSet() override;
diff --git a/fxjs/xfa/cjx_speak.h b/fxjs/xfa/cjx_speak.h
index 4e96b02a90..d5678a85f3 100644
--- a/fxjs/xfa/cjx_speak.h
+++ b/fxjs/xfa/cjx_speak.h
@@ -12,7 +12,7 @@
class CXFA_Speak;
-class CJX_Speak : public CJX_TextNode {
+class CJX_Speak final : public CJX_TextNode {
public:
explicit CJX_Speak(CXFA_Speak* node);
~CJX_Speak() override;
diff --git a/fxjs/xfa/cjx_stipple.h b/fxjs/xfa/cjx_stipple.h
index db3ba1d204..9b6f56da58 100644
--- a/fxjs/xfa/cjx_stipple.h
+++ b/fxjs/xfa/cjx_stipple.h
@@ -12,7 +12,7 @@
class CXFA_Stipple;
-class CJX_Stipple : public CJX_Node {
+class CJX_Stipple final : public CJX_Node {
public:
explicit CJX_Stipple(CXFA_Stipple* node);
~CJX_Stipple() override;
diff --git a/fxjs/xfa/cjx_subform.h b/fxjs/xfa/cjx_subform.h
index 2c2d19b9fb..67947d886b 100644
--- a/fxjs/xfa/cjx_subform.h
+++ b/fxjs/xfa/cjx_subform.h
@@ -12,7 +12,7 @@
class CXFA_Delta;
-class CJX_Subform : public CJX_Container {
+class CJX_Subform final : public CJX_Container {
public:
explicit CJX_Subform(CXFA_Node* container);
~CJX_Subform() override;
diff --git a/fxjs/xfa/cjx_subformset.h b/fxjs/xfa/cjx_subformset.h
index f45515614c..71bb43868f 100644
--- a/fxjs/xfa/cjx_subformset.h
+++ b/fxjs/xfa/cjx_subformset.h
@@ -12,7 +12,7 @@
class CXFA_SubformSet;
-class CJX_SubformSet : public CJX_Container {
+class CJX_SubformSet final : public CJX_Container {
public:
explicit CJX_SubformSet(CXFA_SubformSet* node);
~CJX_SubformSet() override;
diff --git a/fxjs/xfa/cjx_subjectdn.h b/fxjs/xfa/cjx_subjectdn.h
index 22b86b2e60..12e8e9a1d7 100644
--- a/fxjs/xfa/cjx_subjectdn.h
+++ b/fxjs/xfa/cjx_subjectdn.h
@@ -12,7 +12,7 @@
class CXFA_SubjectDN;
-class CJX_SubjectDN : public CJX_Node {
+class CJX_SubjectDN final : public CJX_Node {
public:
explicit CJX_SubjectDN(CXFA_SubjectDN* node);
~CJX_SubjectDN() override;
diff --git a/fxjs/xfa/cjx_subjectdns.h b/fxjs/xfa/cjx_subjectdns.h
index 1e3cd2296e..04af199ce8 100644
--- a/fxjs/xfa/cjx_subjectdns.h
+++ b/fxjs/xfa/cjx_subjectdns.h
@@ -12,7 +12,7 @@
class CXFA_SubjectDNs;
-class CJX_SubjectDNs : public CJX_Node {
+class CJX_SubjectDNs final : public CJX_Node {
public:
explicit CJX_SubjectDNs(CXFA_SubjectDNs* node);
~CJX_SubjectDNs() override;
diff --git a/fxjs/xfa/cjx_submit.h b/fxjs/xfa/cjx_submit.h
index 90aa8d2ac2..0ec0cf4fef 100644
--- a/fxjs/xfa/cjx_submit.h
+++ b/fxjs/xfa/cjx_submit.h
@@ -12,7 +12,7 @@
class CXFA_Submit;
-class CJX_Submit : public CJX_Node {
+class CJX_Submit final : public CJX_Node {
public:
explicit CJX_Submit(CXFA_Submit* node);
~CJX_Submit() override;
diff --git a/fxjs/xfa/cjx_template.h b/fxjs/xfa/cjx_template.h
index d54020df50..ccaf08474e 100644
--- a/fxjs/xfa/cjx_template.h
+++ b/fxjs/xfa/cjx_template.h
@@ -12,7 +12,7 @@
class CXFA_Template;
-class CJX_Template : public CJX_Model {
+class CJX_Template final : public CJX_Model {
public:
explicit CJX_Template(CXFA_Template* tmpl);
~CJX_Template() override;
diff --git a/fxjs/xfa/cjx_text.h b/fxjs/xfa/cjx_text.h
index a5c0e81bea..1a58b2418c 100644
--- a/fxjs/xfa/cjx_text.h
+++ b/fxjs/xfa/cjx_text.h
@@ -12,7 +12,7 @@
class CXFA_Text;
-class CJX_Text : public CJX_Content {
+class CJX_Text final : public CJX_Content {
public:
explicit CJX_Text(CXFA_Text* node);
~CJX_Text() override;
diff --git a/fxjs/xfa/cjx_textedit.h b/fxjs/xfa/cjx_textedit.h
index 1c41b9ee05..bc408d257d 100644
--- a/fxjs/xfa/cjx_textedit.h
+++ b/fxjs/xfa/cjx_textedit.h
@@ -12,7 +12,7 @@
class CXFA_TextEdit;
-class CJX_TextEdit : public CJX_Node {
+class CJX_TextEdit final : public CJX_Node {
public:
explicit CJX_TextEdit(CXFA_TextEdit* node);
~CJX_TextEdit() override;
diff --git a/fxjs/xfa/cjx_time.h b/fxjs/xfa/cjx_time.h
index 32e75cb068..000202978a 100644
--- a/fxjs/xfa/cjx_time.h
+++ b/fxjs/xfa/cjx_time.h
@@ -12,7 +12,7 @@
class CXFA_Time;
-class CJX_Time : public CJX_Content {
+class CJX_Time final : public CJX_Content {
public:
explicit CJX_Time(CXFA_Time* node);
~CJX_Time() override;
diff --git a/fxjs/xfa/cjx_timestamp.h b/fxjs/xfa/cjx_timestamp.h
index c8aab82d31..7183222d60 100644
--- a/fxjs/xfa/cjx_timestamp.h
+++ b/fxjs/xfa/cjx_timestamp.h
@@ -12,7 +12,7 @@
class CXFA_TimeStamp;
-class CJX_TimeStamp : public CJX_Node {
+class CJX_TimeStamp final : public CJX_Node {
public:
explicit CJX_TimeStamp(CXFA_TimeStamp* node);
~CJX_TimeStamp() override;
diff --git a/fxjs/xfa/cjx_tooltip.h b/fxjs/xfa/cjx_tooltip.h
index 51c21d82ac..08bcd43c9d 100644
--- a/fxjs/xfa/cjx_tooltip.h
+++ b/fxjs/xfa/cjx_tooltip.h
@@ -12,7 +12,7 @@
class CXFA_ToolTip;
-class CJX_ToolTip : public CJX_TextNode {
+class CJX_ToolTip final : public CJX_TextNode {
public:
explicit CJX_ToolTip(CXFA_ToolTip* node);
~CJX_ToolTip() override;
diff --git a/fxjs/xfa/cjx_traversal.h b/fxjs/xfa/cjx_traversal.h
index f7e12585eb..0872cf7ce9 100644
--- a/fxjs/xfa/cjx_traversal.h
+++ b/fxjs/xfa/cjx_traversal.h
@@ -12,7 +12,7 @@
class CXFA_Traversal;
-class CJX_Traversal : public CJX_Node {
+class CJX_Traversal final : public CJX_Node {
public:
explicit CJX_Traversal(CXFA_Traversal* node);
~CJX_Traversal() override;
diff --git a/fxjs/xfa/cjx_traverse.h b/fxjs/xfa/cjx_traverse.h
index d6f43afd40..aa573340ba 100644
--- a/fxjs/xfa/cjx_traverse.h
+++ b/fxjs/xfa/cjx_traverse.h
@@ -12,7 +12,7 @@
class CXFA_Traverse;
-class CJX_Traverse : public CJX_Node {
+class CJX_Traverse final : public CJX_Node {
public:
explicit CJX_Traverse(CXFA_Traverse* node);
~CJX_Traverse() override;
diff --git a/fxjs/xfa/cjx_treelist.h b/fxjs/xfa/cjx_treelist.h
index c6f2919592..729a6d5bd0 100644
--- a/fxjs/xfa/cjx_treelist.h
+++ b/fxjs/xfa/cjx_treelist.h
@@ -12,7 +12,7 @@
class CXFA_TreeList;
-class CJX_TreeList : public CJX_List {
+class CJX_TreeList final : public CJX_List {
public:
explicit CJX_TreeList(CXFA_TreeList* list);
~CJX_TreeList() override;
diff --git a/fxjs/xfa/cjx_ui.h b/fxjs/xfa/cjx_ui.h
index e63fa47fbe..4fb199049f 100644
--- a/fxjs/xfa/cjx_ui.h
+++ b/fxjs/xfa/cjx_ui.h
@@ -12,7 +12,7 @@
class CXFA_Ui;
-class CJX_Ui : public CJX_Node {
+class CJX_Ui final : public CJX_Node {
public:
explicit CJX_Ui(CXFA_Ui* node);
~CJX_Ui() override;
diff --git a/fxjs/xfa/cjx_update.h b/fxjs/xfa/cjx_update.h
index f603409ebb..09c6812beb 100644
--- a/fxjs/xfa/cjx_update.h
+++ b/fxjs/xfa/cjx_update.h
@@ -12,7 +12,7 @@
class CXFA_Update;
-class CJX_Update : public CJX_TextNode {
+class CJX_Update final : public CJX_TextNode {
public:
explicit CJX_Update(CXFA_Update* node);
~CJX_Update() override;
diff --git a/fxjs/xfa/cjx_uri.h b/fxjs/xfa/cjx_uri.h
index e7aa55f3a5..062dcf0fb7 100644
--- a/fxjs/xfa/cjx_uri.h
+++ b/fxjs/xfa/cjx_uri.h
@@ -12,7 +12,7 @@
class CXFA_Uri;
-class CJX_Uri : public CJX_TextNode {
+class CJX_Uri final : public CJX_TextNode {
public:
explicit CJX_Uri(CXFA_Uri* node);
~CJX_Uri() override;
diff --git a/fxjs/xfa/cjx_user.h b/fxjs/xfa/cjx_user.h
index 85b02715ac..b378960bd7 100644
--- a/fxjs/xfa/cjx_user.h
+++ b/fxjs/xfa/cjx_user.h
@@ -12,7 +12,7 @@
class CXFA_User;
-class CJX_User : public CJX_TextNode {
+class CJX_User final : public CJX_TextNode {
public:
explicit CJX_User(CXFA_User* node);
~CJX_User() override;
diff --git a/fxjs/xfa/cjx_validate.h b/fxjs/xfa/cjx_validate.h
index 62eb83caa3..ea3d45cbeb 100644
--- a/fxjs/xfa/cjx_validate.h
+++ b/fxjs/xfa/cjx_validate.h
@@ -12,7 +12,7 @@
class CXFA_Validate;
-class CJX_Validate : public CJX_Node {
+class CJX_Validate final : public CJX_Node {
public:
explicit CJX_Validate(CXFA_Validate* node);
~CJX_Validate() override;
diff --git a/fxjs/xfa/cjx_value.h b/fxjs/xfa/cjx_value.h
index 71984c3d1a..78ad2ed0eb 100644
--- a/fxjs/xfa/cjx_value.h
+++ b/fxjs/xfa/cjx_value.h
@@ -12,7 +12,7 @@
class CXFA_Value;
-class CJX_Value : public CJX_Node {
+class CJX_Value final : public CJX_Node {
public:
explicit CJX_Value(CXFA_Value* node);
~CJX_Value() override;
diff --git a/fxjs/xfa/cjx_variables.h b/fxjs/xfa/cjx_variables.h
index 302cd05807..c12e3ae9b8 100644
--- a/fxjs/xfa/cjx_variables.h
+++ b/fxjs/xfa/cjx_variables.h
@@ -12,7 +12,7 @@
class CXFA_Variables;
-class CJX_Variables : public CJX_Container {
+class CJX_Variables final : public CJX_Container {
public:
explicit CJX_Variables(CXFA_Variables* node);
~CJX_Variables() override;
diff --git a/fxjs/xfa/cjx_wsdladdress.h b/fxjs/xfa/cjx_wsdladdress.h
index cbe8e72ee9..5b6cda05c9 100644
--- a/fxjs/xfa/cjx_wsdladdress.h
+++ b/fxjs/xfa/cjx_wsdladdress.h
@@ -12,7 +12,7 @@
class CXFA_WsdlAddress;
-class CJX_WsdlAddress : public CJX_TextNode {
+class CJX_WsdlAddress final : public CJX_TextNode {
public:
explicit CJX_WsdlAddress(CXFA_WsdlAddress* node);
~CJX_WsdlAddress() override;
diff --git a/fxjs/xfa/cjx_wsdlconnection.h b/fxjs/xfa/cjx_wsdlconnection.h
index 346b9088ca..f5dc51b9cc 100644
--- a/fxjs/xfa/cjx_wsdlconnection.h
+++ b/fxjs/xfa/cjx_wsdlconnection.h
@@ -12,7 +12,7 @@
class CXFA_WsdlConnection;
-class CJX_WsdlConnection : public CJX_Node {
+class CJX_WsdlConnection final : public CJX_Node {
public:
explicit CJX_WsdlConnection(CXFA_WsdlConnection* connection);
~CJX_WsdlConnection() override;
diff --git a/fxjs/xfa/cjx_xfa.h b/fxjs/xfa/cjx_xfa.h
index 025e9a9d6b..39ee84f0a5 100644
--- a/fxjs/xfa/cjx_xfa.h
+++ b/fxjs/xfa/cjx_xfa.h
@@ -12,7 +12,7 @@
class CXFA_Xfa;
-class CJX_Xfa : public CJX_Model {
+class CJX_Xfa final : public CJX_Model {
public:
explicit CJX_Xfa(CXFA_Xfa* node);
~CJX_Xfa() override;
diff --git a/fxjs/xfa/cjx_xmlconnection.h b/fxjs/xfa/cjx_xmlconnection.h
index cb63e752b8..6ec2b412d1 100644
--- a/fxjs/xfa/cjx_xmlconnection.h
+++ b/fxjs/xfa/cjx_xmlconnection.h
@@ -12,7 +12,7 @@
class CXFA_XmlConnection;
-class CJX_XmlConnection : public CJX_Node {
+class CJX_XmlConnection final : public CJX_Node {
public:
explicit CJX_XmlConnection(CXFA_XmlConnection* node);
~CJX_XmlConnection() override;
diff --git a/fxjs/xfa/cjx_xsdconnection.h b/fxjs/xfa/cjx_xsdconnection.h
index ec5059a8e7..4cfe5191ed 100644
--- a/fxjs/xfa/cjx_xsdconnection.h
+++ b/fxjs/xfa/cjx_xsdconnection.h
@@ -12,7 +12,7 @@
class CXFA_XsdConnection;
-class CJX_XsdConnection : public CJX_Node {
+class CJX_XsdConnection final : public CJX_Node {
public:
explicit CJX_XsdConnection(CXFA_XsdConnection* node);
~CJX_XsdConnection() override;