Generate XFA node classes
This CL adds concrete classes for each of the XFA Node types.
Change-Id: Ieac8e2fcd5d13c61daa27fc63e3d80abb7aa7a29
Reviewed-on: https://pdfium-review.googlesource.com/18271
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
diff --git a/xfa/fxfa/parser/cxfa_reasons.cpp b/xfa/fxfa/parser/cxfa_reasons.cpp
new file mode 100644
index 0000000..df964d4
--- /dev/null
+++ b/xfa/fxfa/parser/cxfa_reasons.cpp
@@ -0,0 +1,29 @@
+// Copyright 2017 PDFium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
+
+#include "xfa/fxfa/parser/cxfa_reasons.h"
+
+namespace {
+
+const XFA_Attribute kAttributeData[] = {
+ XFA_Attribute::Id, XFA_Attribute::Use, XFA_Attribute::Type,
+ XFA_Attribute::Usehref, XFA_Attribute::Unknown};
+
+constexpr wchar_t kName[] = L"reasons";
+
+} // namespace
+
+CXFA_Reasons::CXFA_Reasons(CXFA_Document* doc, XFA_XDPPACKET packet)
+ : CXFA_Node(doc,
+ packet,
+ (XFA_XDPPACKET_Template | XFA_XDPPACKET_Form),
+ XFA_ObjectType::Node,
+ XFA_Element::Reasons,
+ nullptr,
+ kAttributeData,
+ kName) {}
+
+CXFA_Reasons::~CXFA_Reasons() {}