| // 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 <memory> |
| |
| #include "third_party/base/ptr_util.h" |
| #include "xfa/fxfa/parser/cxfa_accessiblecontent.h" |
| #include "xfa/fxfa/parser/cxfa_acrobat.h" |
| #include "xfa/fxfa/parser/cxfa_acrobat7.h" |
| #include "xfa/fxfa/parser/cxfa_adbe_jsconsole.h" |
| #include "xfa/fxfa/parser/cxfa_adbe_jsdebugger.h" |
| #include "xfa/fxfa/parser/cxfa_addsilentprint.h" |
| #include "xfa/fxfa/parser/cxfa_addviewerpreferences.h" |
| #include "xfa/fxfa/parser/cxfa_adjustdata.h" |
| #include "xfa/fxfa/parser/cxfa_adobeextensionlevel.h" |
| #include "xfa/fxfa/parser/cxfa_agent.h" |
| #include "xfa/fxfa/parser/cxfa_alwaysembed.h" |
| #include "xfa/fxfa/parser/cxfa_amd.h" |
| #include "xfa/fxfa/parser/cxfa_appearancefilter.h" |
| #include "xfa/fxfa/parser/cxfa_arc.h" |
| #include "xfa/fxfa/parser/cxfa_area.h" |
| #include "xfa/fxfa/parser/cxfa_assist.h" |
| #include "xfa/fxfa/parser/cxfa_attributes.h" |
| #include "xfa/fxfa/parser/cxfa_autosave.h" |
| #include "xfa/fxfa/parser/cxfa_barcode.h" |
| #include "xfa/fxfa/parser/cxfa_base.h" |
| #include "xfa/fxfa/parser/cxfa_batchoutput.h" |
| #include "xfa/fxfa/parser/cxfa_behavioroverride.h" |
| #include "xfa/fxfa/parser/cxfa_bind.h" |
| #include "xfa/fxfa/parser/cxfa_binditems.h" |
| #include "xfa/fxfa/parser/cxfa_bookend.h" |
| #include "xfa/fxfa/parser/cxfa_boolean.h" |
| #include "xfa/fxfa/parser/cxfa_border.h" |
| #include "xfa/fxfa/parser/cxfa_break.h" |
| #include "xfa/fxfa/parser/cxfa_breakafter.h" |
| #include "xfa/fxfa/parser/cxfa_breakbefore.h" |
| #include "xfa/fxfa/parser/cxfa_button.h" |
| #include "xfa/fxfa/parser/cxfa_cache.h" |
| #include "xfa/fxfa/parser/cxfa_calculate.h" |
| #include "xfa/fxfa/parser/cxfa_calendarsymbols.h" |
| #include "xfa/fxfa/parser/cxfa_caption.h" |
| #include "xfa/fxfa/parser/cxfa_certificate.h" |
| #include "xfa/fxfa/parser/cxfa_certificates.h" |
| #include "xfa/fxfa/parser/cxfa_change.h" |
| #include "xfa/fxfa/parser/cxfa_checkbutton.h" |
| #include "xfa/fxfa/parser/cxfa_choicelist.h" |
| #include "xfa/fxfa/parser/cxfa_color.h" |
| #include "xfa/fxfa/parser/cxfa_comb.h" |
| #include "xfa/fxfa/parser/cxfa_command.h" |
| #include "xfa/fxfa/parser/cxfa_common.h" |
| #include "xfa/fxfa/parser/cxfa_compress.h" |
| #include "xfa/fxfa/parser/cxfa_compression.h" |
| #include "xfa/fxfa/parser/cxfa_compresslogicalstructure.h" |
| #include "xfa/fxfa/parser/cxfa_compressobjectstream.h" |
| #include "xfa/fxfa/parser/cxfa_config.h" |
| #include "xfa/fxfa/parser/cxfa_conformance.h" |
| #include "xfa/fxfa/parser/cxfa_connect.h" |
| #include "xfa/fxfa/parser/cxfa_connectionset.h" |
| #include "xfa/fxfa/parser/cxfa_connectstring.h" |
| #include "xfa/fxfa/parser/cxfa_contentarea.h" |
| #include "xfa/fxfa/parser/cxfa_contentcopy.h" |
| #include "xfa/fxfa/parser/cxfa_copies.h" |
| #include "xfa/fxfa/parser/cxfa_corner.h" |
| #include "xfa/fxfa/parser/cxfa_creator.h" |
| #include "xfa/fxfa/parser/cxfa_currencysymbol.h" |
| #include "xfa/fxfa/parser/cxfa_currencysymbols.h" |
| #include "xfa/fxfa/parser/cxfa_currentpage.h" |
| #include "xfa/fxfa/parser/cxfa_data.h" |
| #include "xfa/fxfa/parser/cxfa_datagroup.h" |
| #include "xfa/fxfa/parser/cxfa_datamodel.h" |
| #include "xfa/fxfa/parser/cxfa_datavalue.h" |
| #include "xfa/fxfa/parser/cxfa_datawindow.h" |
| #include "xfa/fxfa/parser/cxfa_date.h" |
| #include "xfa/fxfa/parser/cxfa_datepattern.h" |
| #include "xfa/fxfa/parser/cxfa_datepatterns.h" |
| #include "xfa/fxfa/parser/cxfa_datetime.h" |
| #include "xfa/fxfa/parser/cxfa_datetimeedit.h" |
| #include "xfa/fxfa/parser/cxfa_datetimesymbols.h" |
| #include "xfa/fxfa/parser/cxfa_day.h" |
| #include "xfa/fxfa/parser/cxfa_daynames.h" |
| #include "xfa/fxfa/parser/cxfa_debug.h" |
| #include "xfa/fxfa/parser/cxfa_decimal.h" |
| #include "xfa/fxfa/parser/cxfa_defaulttypeface.h" |
| #include "xfa/fxfa/parser/cxfa_defaultui.h" |
| #include "xfa/fxfa/parser/cxfa_delete.h" |
| #include "xfa/fxfa/parser/cxfa_delta.h" |
| #include "xfa/fxfa/parser/cxfa_deltas.h" |
| #include "xfa/fxfa/parser/cxfa_desc.h" |
| #include "xfa/fxfa/parser/cxfa_destination.h" |
| #include "xfa/fxfa/parser/cxfa_digestmethod.h" |
| #include "xfa/fxfa/parser/cxfa_digestmethods.h" |
| #include "xfa/fxfa/parser/cxfa_documentassembly.h" |
| #include "xfa/fxfa/parser/cxfa_draw.h" |
| #include "xfa/fxfa/parser/cxfa_driver.h" |
| #include "xfa/fxfa/parser/cxfa_dsigdata.h" |
| #include "xfa/fxfa/parser/cxfa_duplexoption.h" |
| #include "xfa/fxfa/parser/cxfa_dynamicrender.h" |
| #include "xfa/fxfa/parser/cxfa_edge.h" |
| #include "xfa/fxfa/parser/cxfa_effectiveinputpolicy.h" |
| #include "xfa/fxfa/parser/cxfa_effectiveoutputpolicy.h" |
| #include "xfa/fxfa/parser/cxfa_embed.h" |
| #include "xfa/fxfa/parser/cxfa_encoding.h" |
| #include "xfa/fxfa/parser/cxfa_encodings.h" |
| #include "xfa/fxfa/parser/cxfa_encrypt.h" |
| #include "xfa/fxfa/parser/cxfa_encryption.h" |
| #include "xfa/fxfa/parser/cxfa_encryptionlevel.h" |
| #include "xfa/fxfa/parser/cxfa_encryptionmethod.h" |
| #include "xfa/fxfa/parser/cxfa_encryptionmethods.h" |
| #include "xfa/fxfa/parser/cxfa_enforce.h" |
| #include "xfa/fxfa/parser/cxfa_equate.h" |
| #include "xfa/fxfa/parser/cxfa_equaterange.h" |
| #include "xfa/fxfa/parser/cxfa_era.h" |
| #include "xfa/fxfa/parser/cxfa_eranames.h" |
| #include "xfa/fxfa/parser/cxfa_event.h" |
| #include "xfa/fxfa/parser/cxfa_eventpseudomodel.h" |
| #include "xfa/fxfa/parser/cxfa_exclgroup.h" |
| #include "xfa/fxfa/parser/cxfa_exclude.h" |
| #include "xfa/fxfa/parser/cxfa_excludens.h" |
| #include "xfa/fxfa/parser/cxfa_exdata.h" |
| #include "xfa/fxfa/parser/cxfa_execute.h" |
| #include "xfa/fxfa/parser/cxfa_exobject.h" |
| #include "xfa/fxfa/parser/cxfa_extras.h" |
| #include "xfa/fxfa/parser/cxfa_field.h" |
| #include "xfa/fxfa/parser/cxfa_fill.h" |
| #include "xfa/fxfa/parser/cxfa_filter.h" |
| #include "xfa/fxfa/parser/cxfa_fliplabel.h" |
| #include "xfa/fxfa/parser/cxfa_float.h" |
| #include "xfa/fxfa/parser/cxfa_font.h" |
| #include "xfa/fxfa/parser/cxfa_fontinfo.h" |
| #include "xfa/fxfa/parser/cxfa_form.h" |
| #include "xfa/fxfa/parser/cxfa_format.h" |
| #include "xfa/fxfa/parser/cxfa_formfieldfilling.h" |
| #include "xfa/fxfa/parser/cxfa_groupparent.h" |
| #include "xfa/fxfa/parser/cxfa_handler.h" |
| #include "xfa/fxfa/parser/cxfa_hostpseudomodel.h" |
| #include "xfa/fxfa/parser/cxfa_hyphenation.h" |
| #include "xfa/fxfa/parser/cxfa_ifempty.h" |
| #include "xfa/fxfa/parser/cxfa_image.h" |
| #include "xfa/fxfa/parser/cxfa_imageedit.h" |
| #include "xfa/fxfa/parser/cxfa_includexdpcontent.h" |
| #include "xfa/fxfa/parser/cxfa_incrementalload.h" |
| #include "xfa/fxfa/parser/cxfa_incrementalmerge.h" |
| #include "xfa/fxfa/parser/cxfa_insert.h" |
| #include "xfa/fxfa/parser/cxfa_instancemanager.h" |
| #include "xfa/fxfa/parser/cxfa_integer.h" |
| #include "xfa/fxfa/parser/cxfa_interactive.h" |
| #include "xfa/fxfa/parser/cxfa_issuers.h" |
| #include "xfa/fxfa/parser/cxfa_items.h" |
| #include "xfa/fxfa/parser/cxfa_jog.h" |
| #include "xfa/fxfa/parser/cxfa_keep.h" |
| #include "xfa/fxfa/parser/cxfa_keyusage.h" |
| #include "xfa/fxfa/parser/cxfa_labelprinter.h" |
| #include "xfa/fxfa/parser/cxfa_layout.h" |
| #include "xfa/fxfa/parser/cxfa_layoutpseudomodel.h" |
| #include "xfa/fxfa/parser/cxfa_level.h" |
| #include "xfa/fxfa/parser/cxfa_line.h" |
| #include "xfa/fxfa/parser/cxfa_linear.h" |
| #include "xfa/fxfa/parser/cxfa_linearized.h" |
| #include "xfa/fxfa/parser/cxfa_list.h" |
| #include "xfa/fxfa/parser/cxfa_locale.h" |
| #include "xfa/fxfa/parser/cxfa_localeset.h" |
| #include "xfa/fxfa/parser/cxfa_lockdocument.h" |
| #include "xfa/fxfa/parser/cxfa_log.h" |
| #include "xfa/fxfa/parser/cxfa_logpseudomodel.h" |
| #include "xfa/fxfa/parser/cxfa_manifest.h" |
| #include "xfa/fxfa/parser/cxfa_map.h" |
| #include "xfa/fxfa/parser/cxfa_margin.h" |
| #include "xfa/fxfa/parser/cxfa_mdp.h" |
| #include "xfa/fxfa/parser/cxfa_medium.h" |
| #include "xfa/fxfa/parser/cxfa_mediuminfo.h" |
| #include "xfa/fxfa/parser/cxfa_meridiem.h" |
| #include "xfa/fxfa/parser/cxfa_meridiemnames.h" |
| #include "xfa/fxfa/parser/cxfa_message.h" |
| #include "xfa/fxfa/parser/cxfa_messaging.h" |
| #include "xfa/fxfa/parser/cxfa_mode.h" |
| #include "xfa/fxfa/parser/cxfa_modifyannots.h" |
| #include "xfa/fxfa/parser/cxfa_month.h" |
| #include "xfa/fxfa/parser/cxfa_monthnames.h" |
| #include "xfa/fxfa/parser/cxfa_msgid.h" |
| #include "xfa/fxfa/parser/cxfa_nameattr.h" |
| #include "xfa/fxfa/parser/cxfa_neverembed.h" |
| #include "xfa/fxfa/parser/cxfa_node.h" |
| #include "xfa/fxfa/parser/cxfa_numberofcopies.h" |
| #include "xfa/fxfa/parser/cxfa_numberpattern.h" |
| #include "xfa/fxfa/parser/cxfa_numberpatterns.h" |
| #include "xfa/fxfa/parser/cxfa_numbersymbol.h" |
| #include "xfa/fxfa/parser/cxfa_numbersymbols.h" |
| #include "xfa/fxfa/parser/cxfa_numericedit.h" |
| #include "xfa/fxfa/parser/cxfa_occur.h" |
| #include "xfa/fxfa/parser/cxfa_oid.h" |
| #include "xfa/fxfa/parser/cxfa_oids.h" |
| #include "xfa/fxfa/parser/cxfa_openaction.h" |
| #include "xfa/fxfa/parser/cxfa_operation.h" |
| #include "xfa/fxfa/parser/cxfa_output.h" |
| #include "xfa/fxfa/parser/cxfa_outputbin.h" |
| #include "xfa/fxfa/parser/cxfa_outputxsl.h" |
| #include "xfa/fxfa/parser/cxfa_overflow.h" |
| #include "xfa/fxfa/parser/cxfa_overprint.h" |
| #include "xfa/fxfa/parser/cxfa_packet.h" |
| #include "xfa/fxfa/parser/cxfa_packets.h" |
| #include "xfa/fxfa/parser/cxfa_pagearea.h" |
| #include "xfa/fxfa/parser/cxfa_pageoffset.h" |
| #include "xfa/fxfa/parser/cxfa_pagerange.h" |
| #include "xfa/fxfa/parser/cxfa_pageset.h" |
| #include "xfa/fxfa/parser/cxfa_pagination.h" |
| #include "xfa/fxfa/parser/cxfa_paginationoverride.h" |
| #include "xfa/fxfa/parser/cxfa_para.h" |
| #include "xfa/fxfa/parser/cxfa_part.h" |
| #include "xfa/fxfa/parser/cxfa_password.h" |
| #include "xfa/fxfa/parser/cxfa_passwordedit.h" |
| #include "xfa/fxfa/parser/cxfa_pattern.h" |
| #include "xfa/fxfa/parser/cxfa_pcl.h" |
| #include "xfa/fxfa/parser/cxfa_pdf.h" |
| #include "xfa/fxfa/parser/cxfa_pdfa.h" |
| #include "xfa/fxfa/parser/cxfa_permissions.h" |
| #include "xfa/fxfa/parser/cxfa_picktraybypdfsize.h" |
| #include "xfa/fxfa/parser/cxfa_picture.h" |
| #include "xfa/fxfa/parser/cxfa_plaintextmetadata.h" |
| #include "xfa/fxfa/parser/cxfa_presence.h" |
| #include "xfa/fxfa/parser/cxfa_present.h" |
| #include "xfa/fxfa/parser/cxfa_print.h" |
| #include "xfa/fxfa/parser/cxfa_printername.h" |
| #include "xfa/fxfa/parser/cxfa_printhighquality.h" |
| #include "xfa/fxfa/parser/cxfa_printscaling.h" |
| #include "xfa/fxfa/parser/cxfa_producer.h" |
| #include "xfa/fxfa/parser/cxfa_proto.h" |
| #include "xfa/fxfa/parser/cxfa_ps.h" |
| #include "xfa/fxfa/parser/cxfa_psmap.h" |
| #include "xfa/fxfa/parser/cxfa_query.h" |
| #include "xfa/fxfa/parser/cxfa_radial.h" |
| #include "xfa/fxfa/parser/cxfa_range.h" |
| #include "xfa/fxfa/parser/cxfa_reason.h" |
| #include "xfa/fxfa/parser/cxfa_reasons.h" |
| #include "xfa/fxfa/parser/cxfa_record.h" |
| #include "xfa/fxfa/parser/cxfa_recordset.h" |
| #include "xfa/fxfa/parser/cxfa_rectangle.h" |
| #include "xfa/fxfa/parser/cxfa_ref.h" |
| #include "xfa/fxfa/parser/cxfa_relevant.h" |
| #include "xfa/fxfa/parser/cxfa_rename.h" |
| #include "xfa/fxfa/parser/cxfa_renderpolicy.h" |
| #include "xfa/fxfa/parser/cxfa_rootelement.h" |
| #include "xfa/fxfa/parser/cxfa_runscripts.h" |
| #include "xfa/fxfa/parser/cxfa_script.h" |
| #include "xfa/fxfa/parser/cxfa_scriptmodel.h" |
| #include "xfa/fxfa/parser/cxfa_select.h" |
| #include "xfa/fxfa/parser/cxfa_setproperty.h" |
| #include "xfa/fxfa/parser/cxfa_severity.h" |
| #include "xfa/fxfa/parser/cxfa_sharptext.h" |
| #include "xfa/fxfa/parser/cxfa_sharpxhtml.h" |
| #include "xfa/fxfa/parser/cxfa_sharpxml.h" |
| #include "xfa/fxfa/parser/cxfa_signature.h" |
| #include "xfa/fxfa/parser/cxfa_signatureproperties.h" |
| #include "xfa/fxfa/parser/cxfa_signaturepseudomodel.h" |
| #include "xfa/fxfa/parser/cxfa_signdata.h" |
| #include "xfa/fxfa/parser/cxfa_signing.h" |
| #include "xfa/fxfa/parser/cxfa_silentprint.h" |
| #include "xfa/fxfa/parser/cxfa_soapaction.h" |
| #include "xfa/fxfa/parser/cxfa_soapaddress.h" |
| #include "xfa/fxfa/parser/cxfa_solid.h" |
| #include "xfa/fxfa/parser/cxfa_source.h" |
| #include "xfa/fxfa/parser/cxfa_sourceset.h" |
| #include "xfa/fxfa/parser/cxfa_speak.h" |
| #include "xfa/fxfa/parser/cxfa_staple.h" |
| #include "xfa/fxfa/parser/cxfa_startnode.h" |
| #include "xfa/fxfa/parser/cxfa_startpage.h" |
| #include "xfa/fxfa/parser/cxfa_stipple.h" |
| #include "xfa/fxfa/parser/cxfa_subform.h" |
| #include "xfa/fxfa/parser/cxfa_subformset.h" |
| #include "xfa/fxfa/parser/cxfa_subjectdn.h" |
| #include "xfa/fxfa/parser/cxfa_subjectdns.h" |
| #include "xfa/fxfa/parser/cxfa_submit.h" |
| #include "xfa/fxfa/parser/cxfa_submitformat.h" |
| #include "xfa/fxfa/parser/cxfa_submiturl.h" |
| #include "xfa/fxfa/parser/cxfa_subsetbelow.h" |
| #include "xfa/fxfa/parser/cxfa_suppressbanner.h" |
| #include "xfa/fxfa/parser/cxfa_tagged.h" |
| #include "xfa/fxfa/parser/cxfa_template.h" |
| #include "xfa/fxfa/parser/cxfa_templatecache.h" |
| #include "xfa/fxfa/parser/cxfa_text.h" |
| #include "xfa/fxfa/parser/cxfa_textedit.h" |
| #include "xfa/fxfa/parser/cxfa_threshold.h" |
| #include "xfa/fxfa/parser/cxfa_time.h" |
| #include "xfa/fxfa/parser/cxfa_timepattern.h" |
| #include "xfa/fxfa/parser/cxfa_timepatterns.h" |
| #include "xfa/fxfa/parser/cxfa_timestamp.h" |
| #include "xfa/fxfa/parser/cxfa_to.h" |
| #include "xfa/fxfa/parser/cxfa_tooltip.h" |
| #include "xfa/fxfa/parser/cxfa_trace.h" |
| #include "xfa/fxfa/parser/cxfa_transform.h" |
| #include "xfa/fxfa/parser/cxfa_traversal.h" |
| #include "xfa/fxfa/parser/cxfa_traverse.h" |
| #include "xfa/fxfa/parser/cxfa_type.h" |
| #include "xfa/fxfa/parser/cxfa_typeface.h" |
| #include "xfa/fxfa/parser/cxfa_typefaces.h" |
| #include "xfa/fxfa/parser/cxfa_ui.h" |
| #include "xfa/fxfa/parser/cxfa_update.h" |
| #include "xfa/fxfa/parser/cxfa_uri.h" |
| #include "xfa/fxfa/parser/cxfa_user.h" |
| #include "xfa/fxfa/parser/cxfa_validate.h" |
| #include "xfa/fxfa/parser/cxfa_validateapprovalsignatures.h" |
| #include "xfa/fxfa/parser/cxfa_validationmessaging.h" |
| #include "xfa/fxfa/parser/cxfa_value.h" |
| #include "xfa/fxfa/parser/cxfa_variables.h" |
| #include "xfa/fxfa/parser/cxfa_version.h" |
| #include "xfa/fxfa/parser/cxfa_versioncontrol.h" |
| #include "xfa/fxfa/parser/cxfa_viewerpreferences.h" |
| #include "xfa/fxfa/parser/cxfa_webclient.h" |
| #include "xfa/fxfa/parser/cxfa_whitespace.h" |
| #include "xfa/fxfa/parser/cxfa_window.h" |
| #include "xfa/fxfa/parser/cxfa_wsdladdress.h" |
| #include "xfa/fxfa/parser/cxfa_wsdlconnection.h" |
| #include "xfa/fxfa/parser/cxfa_xdc.h" |
| #include "xfa/fxfa/parser/cxfa_xdp.h" |
| #include "xfa/fxfa/parser/cxfa_xfa.h" |
| #include "xfa/fxfa/parser/cxfa_xmlconnection.h" |
| #include "xfa/fxfa/parser/cxfa_xsdconnection.h" |
| #include "xfa/fxfa/parser/cxfa_xsl.h" |
| #include "xfa/fxfa/parser/cxfa_zpl.h" |
| |
| namespace { |
| |
| struct ElementNameInfo { |
| uint32_t hash; |
| XFA_Element element; |
| } ElementNameToEnum[] = { |
| {0x23ee3 /* ps */, XFA_Element::Ps}, |
| {0x25363 /* to */, XFA_Element::To}, |
| {0x2587e /* ui */, XFA_Element::Ui}, |
| {0x1c648b /* recordSet */, XFA_Element::RecordSet}, |
| {0x171428f /* subsetBelow */, XFA_Element::SubsetBelow}, |
| {0x1a0776a /* subformSet */, XFA_Element::SubformSet}, |
| {0x2340d70 /* adobeExtensionLevel */, XFA_Element::AdobeExtensionLevel}, |
| {0x2c1c7f1 /* typeface */, XFA_Element::Typeface}, |
| {0x5518c25 /* break */, XFA_Element::Break}, |
| {0x5fff523 /* fontInfo */, XFA_Element::FontInfo}, |
| {0x653a227 /* numberPattern */, XFA_Element::NumberPattern}, |
| {0x65b4a05 /* dynamicRender */, XFA_Element::DynamicRender}, |
| {0x7e4362e /* printScaling */, XFA_Element::PrintScaling}, |
| {0x7fe6d3a /* checkButton */, XFA_Element::CheckButton}, |
| {0x80cf58f /* datePatterns */, XFA_Element::DatePatterns}, |
| {0x811929d /* sourceSet */, XFA_Element::SourceSet}, |
| {0x9f9d612 /* amd */, XFA_Element::Amd}, |
| {0x9f9efb6 /* arc */, XFA_Element::Arc}, |
| {0xa48835e /* day */, XFA_Element::Day}, |
| {0xa6328b8 /* era */, XFA_Element::Era}, |
| {0xae6a0a0 /* jog */, XFA_Element::Jog}, |
| {0xb1b3d22 /* log */, XFA_Element::Log}, |
| {0xb35439e /* map */, XFA_Element::Map}, |
| {0xb355301 /* mdp */, XFA_Element::Mdp}, |
| {0xb420438 /* breakBefore */, XFA_Element::BreakBefore}, |
| {0xb6a091c /* oid */, XFA_Element::Oid}, |
| {0xb84389f /* pcl */, XFA_Element::Pcl}, |
| {0xb843dba /* pdf */, XFA_Element::Pdf}, |
| {0xbb8df5d /* ref */, XFA_Element::Ref}, |
| {0xc080cd0 /* uri */, XFA_Element::Uri}, |
| {0xc56afbf /* xdc */, XFA_Element::Xdc}, |
| {0xc56afcc /* xdp */, XFA_Element::Xdp}, |
| {0xc56b9ff /* xfa */, XFA_Element::Xfa}, |
| {0xc56fcb7 /* xsl */, XFA_Element::Xsl}, |
| {0xc8b89d6 /* zpl */, XFA_Element::Zpl}, |
| {0xc9bae94 /* cache */, XFA_Element::Cache}, |
| {0xcb016be /* margin */, XFA_Element::Margin}, |
| {0xe1378fe /* keyUsage */, XFA_Element::KeyUsage}, |
| {0xfe3596a /* exclude */, XFA_Element::Exclude}, |
| {0x10395ac7 /* choiceList */, XFA_Element::ChoiceList}, |
| {0x1059ec18 /* level */, XFA_Element::Level}, |
| {0x10874804 /* labelPrinter */, XFA_Element::LabelPrinter}, |
| {0x10c40e03 /* calendarSymbols */, XFA_Element::CalendarSymbols}, |
| {0x10f1ea24 /* para */, XFA_Element::Para}, |
| {0x10f1ea37 /* part */, XFA_Element::Part}, |
| {0x1140975b /* pdfa */, XFA_Element::Pdfa}, |
| {0x1154efe6 /* filter */, XFA_Element::Filter}, |
| {0x13f41de1 /* present */, XFA_Element::Present}, |
| {0x1827e6ea /* pagination */, XFA_Element::Pagination}, |
| {0x18463707 /* encoding */, XFA_Element::Encoding}, |
| {0x185e41e2 /* event */, XFA_Element::Event}, |
| {0x1adb142d /* whitespace */, XFA_Element::Whitespace}, |
| {0x1f3f64c3 /* defaultUi */, XFA_Element::DefaultUi}, |
| {0x204e87cb /* dataModel */, XFA_Element::DataModel}, |
| {0x2057b350 /* barcode */, XFA_Element::Barcode}, |
| {0x20596bad /* timePattern */, XFA_Element::TimePattern}, |
| {0x210b74d3 /* batchOutput */, XFA_Element::BatchOutput}, |
| {0x212ff0e2 /* enforce */, XFA_Element::Enforce}, |
| {0x21d351b4 /* currencySymbols */, XFA_Element::CurrencySymbols}, |
| {0x21db83c5 /* addSilentPrint */, XFA_Element::AddSilentPrint}, |
| {0x22266258 /* rename */, XFA_Element::Rename}, |
| {0x226ca8f1 /* operation */, XFA_Element::Operation}, |
| {0x23e27b84 /* typefaces */, XFA_Element::Typefaces}, |
| {0x23f4aa75 /* subjectDNs */, XFA_Element::SubjectDNs}, |
| {0x240d5e8e /* issuers */, XFA_Element::Issuers}, |
| {0x2457a033 /* signaturePseudoModel */, XFA_Element::SignaturePseudoModel}, |
| {0x24a52f8a /* wsdlConnection */, XFA_Element::WsdlConnection}, |
| {0x254ebd07 /* debug */, XFA_Element::Debug}, |
| {0x2655c66a /* delta */, XFA_Element::Delta}, |
| {0x26c0daec /* eraNames */, XFA_Element::EraNames}, |
| {0x273ab03b /* modifyAnnots */, XFA_Element::ModifyAnnots}, |
| {0x27875bb4 /* startNode */, XFA_Element::StartNode}, |
| {0x285d0dbc /* button */, XFA_Element::Button}, |
| {0x28dee6e9 /* format */, XFA_Element::Format}, |
| {0x2a23349e /* border */, XFA_Element::Border}, |
| {0x2ae67f19 /* area */, XFA_Element::Area}, |
| {0x2c3c4c67 /* hyphenation */, XFA_Element::Hyphenation}, |
| {0x2d08af85 /* text */, XFA_Element::Text}, |
| {0x2d71b00f /* time */, XFA_Element::Time}, |
| {0x2f16a382 /* type */, XFA_Element::Type}, |
| {0x2fe057e9 /* overprint */, XFA_Element::Overprint}, |
| {0x302aee16 /* certificates */, XFA_Element::Certificates}, |
| {0x30b227df /* encryptionMethods */, XFA_Element::EncryptionMethods}, |
| {0x32b900d1 /* setProperty */, XFA_Element::SetProperty}, |
| {0x337d9e45 /* printerName */, XFA_Element::PrinterName}, |
| {0x33edda4b /* startPage */, XFA_Element::StartPage}, |
| {0x381943e4 /* pageOffset */, XFA_Element::PageOffset}, |
| {0x382106cd /* dateTime */, XFA_Element::DateTime}, |
| {0x386e7421 /* comb */, XFA_Element::Comb}, |
| {0x390acd9e /* pattern */, XFA_Element::Pattern}, |
| {0x3942163e /* ifEmpty */, XFA_Element::IfEmpty}, |
| {0x39944a7b /* suppressBanner */, XFA_Element::SuppressBanner}, |
| {0x3b3c3dca /* outputBin */, XFA_Element::OutputBin}, |
| {0x3b8a4024 /* field */, XFA_Element::Field}, |
| {0x3c15352f /* agent */, XFA_Element::Agent}, |
| {0x3d7e8668 /* outputXSL */, XFA_Element::OutputXSL}, |
| {0x3e1c91c5 /* adjustData */, XFA_Element::AdjustData}, |
| {0x3e7a9408 /* autoSave */, XFA_Element::AutoSave}, |
| {0x3ecead94 /* contentArea */, XFA_Element::ContentArea}, |
| {0x3ef334e3 /* eventPseudoModel */, XFA_Element::EventPseudoModel}, |
| {0x3fadaec0 /* wsdlAddress */, XFA_Element::WsdlAddress}, |
| {0x40623b5b /* solid */, XFA_Element::Solid}, |
| {0x41f0bd76 /* dateTimeSymbols */, XFA_Element::DateTimeSymbols}, |
| {0x444e7523 /* encryptionLevel */, XFA_Element::EncryptionLevel}, |
| {0x4523af55 /* edge */, XFA_Element::Edge}, |
| {0x45d5e3c1 /* stipple */, XFA_Element::Stipple}, |
| {0x475e4e87 /* attributes */, XFA_Element::Attributes}, |
| {0x487a8c87 /* versionControl */, XFA_Element::VersionControl}, |
| {0x48e5248c /* meridiem */, XFA_Element::Meridiem}, |
| {0x48f36719 /* exclGroup */, XFA_Element::ExclGroup}, |
| {0x4977356b /* toolTip */, XFA_Element::ToolTip}, |
| {0x499afecc /* compress */, XFA_Element::Compress}, |
| {0x4a0c4948 /* reason */, XFA_Element::Reason}, |
| {0x4bdcce13 /* execute */, XFA_Element::Execute}, |
| {0x4c56b216 /* contentCopy */, XFA_Element::ContentCopy}, |
| {0x4cc176d3 /* dateTimeEdit */, XFA_Element::DateTimeEdit}, |
| {0x4e1e39b6 /* config */, XFA_Element::Config}, |
| {0x4e2d6083 /* image */, XFA_Element::Image}, |
| {0x4e814150 /* #xHTML */, XFA_Element::SharpxHTML}, |
| {0x4f2388c1 /* numberOfCopies */, XFA_Element::NumberOfCopies}, |
| {0x4f512e30 /* behaviorOverride */, XFA_Element::BehaviorOverride}, |
| {0x4fdc3454 /* timeStamp */, XFA_Element::TimeStamp}, |
| {0x51d90546 /* month */, XFA_Element::Month}, |
| {0x523437e4 /* viewerPreferences */, XFA_Element::ViewerPreferences}, |
| {0x53abc1c6 /* scriptModel */, XFA_Element::ScriptModel}, |
| {0x54034c2f /* decimal */, XFA_Element::Decimal}, |
| {0x54202c9e /* subform */, XFA_Element::Subform}, |
| {0x542c7300 /* select */, XFA_Element::Select}, |
| {0x5436d198 /* window */, XFA_Element::Window}, |
| {0x5473b6dc /* localeSet */, XFA_Element::LocaleSet}, |
| {0x56ae179e /* handler */, XFA_Element::Handler}, |
| {0x5700bd5f /* hostPseudoModel */, XFA_Element::HostPseudoModel}, |
| {0x570ce835 /* presence */, XFA_Element::Presence}, |
| {0x5779d65f /* record */, XFA_Element::Record}, |
| {0x59c8f27d /* embed */, XFA_Element::Embed}, |
| {0x5a50e9e6 /* version */, XFA_Element::Version}, |
| {0x5b8383df /* command */, XFA_Element::Command}, |
| {0x5c43c6c3 /* copies */, XFA_Element::Copies}, |
| {0x5e0c2c49 /* staple */, XFA_Element::Staple}, |
| {0x5e5083dd /* submitFormat */, XFA_Element::SubmitFormat}, |
| {0x5e8c5d20 /* boolean */, XFA_Element::Boolean}, |
| {0x60490a85 /* message */, XFA_Element::Message}, |
| {0x60d4c8b1 /* output */, XFA_Element::Output}, |
| {0x61810081 /* psMap */, XFA_Element::PsMap}, |
| {0x62bd904b /* excludeNS */, XFA_Element::ExcludeNS}, |
| {0x669d4f77 /* assist */, XFA_Element::Assist}, |
| {0x67334a1c /* picture */, XFA_Element::Picture}, |
| {0x67fe7334 /* traversal */, XFA_Element::Traversal}, |
| {0x6894589c /* silentPrint */, XFA_Element::SilentPrint}, |
| {0x68a16bbd /* webClient */, XFA_Element::WebClient}, |
| {0x69f115df /* layoutPseudoModel */, XFA_Element::LayoutPseudoModel}, |
| {0x6a4bc084 /* producer */, XFA_Element::Producer}, |
| {0x6a9e04c9 /* corner */, XFA_Element::Corner}, |
| {0x6ccd7274 /* msgId */, XFA_Element::MsgId}, |
| {0x6e67921f /* color */, XFA_Element::Color}, |
| {0x6ec217a5 /* keep */, XFA_Element::Keep}, |
| {0x6eef1116 /* query */, XFA_Element::Query}, |
| {0x7033bfd5 /* insert */, XFA_Element::Insert}, |
| {0x704af389 /* imageEdit */, XFA_Element::ImageEdit}, |
| {0x7233018a /* validate */, XFA_Element::Validate}, |
| {0x72ba47b4 /* digestMethods */, XFA_Element::DigestMethods}, |
| {0x72f2aa7a /* numberPatterns */, XFA_Element::NumberPatterns}, |
| {0x74caed29 /* pageSet */, XFA_Element::PageSet}, |
| {0x7568e6ae /* integer */, XFA_Element::Integer}, |
| {0x76182db9 /* soapAddress */, XFA_Element::SoapAddress}, |
| {0x773146c5 /* equate */, XFA_Element::Equate}, |
| {0x77d449dd /* formFieldFilling */, XFA_Element::FormFieldFilling}, |
| {0x7889d68a /* pageRange */, XFA_Element::PageRange}, |
| {0x7baca2e3 /* update */, XFA_Element::Update}, |
| {0x7ce89001 /* connectString */, XFA_Element::ConnectString}, |
| {0x7d9fd7c5 /* mode */, XFA_Element::Mode}, |
| {0x7e7e845e /* layout */, XFA_Element::Layout}, |
| {0x7e845c34 /* #xml */, XFA_Element::Sharpxml}, |
| {0x7fb341df /* xsdConnection */, XFA_Element::XsdConnection}, |
| {0x7ffb51cc /* traverse */, XFA_Element::Traverse}, |
| {0x80203b5a /* encodings */, XFA_Element::Encodings}, |
| {0x803550fc /* template */, XFA_Element::Template}, |
| {0x803d5bbc /* acrobat */, XFA_Element::Acrobat}, |
| {0x821d6569 /* validationMessaging */, XFA_Element::ValidationMessaging}, |
| {0x830e688f /* signing */, XFA_Element::Signing}, |
| {0x83a550d2 /* dataWindow */, XFA_Element::DataWindow}, |
| {0x83dab9f5 /* script */, XFA_Element::Script}, |
| {0x8411ebcd /* addViewerPreferences */, XFA_Element::AddViewerPreferences}, |
| {0x8777642e /* alwaysEmbed */, XFA_Element::AlwaysEmbed}, |
| {0x877a6b39 /* passwordEdit */, XFA_Element::PasswordEdit}, |
| {0x87e84c99 /* numericEdit */, XFA_Element::NumericEdit}, |
| {0x8852cdec /* encryptionMethod */, XFA_Element::EncryptionMethod}, |
| {0x891f4606 /* change */, XFA_Element::Change}, |
| {0x89939f36 /* pageArea */, XFA_Element::PageArea}, |
| {0x8a9d6247 /* submitUrl */, XFA_Element::SubmitUrl}, |
| {0x8ad8b90f /* oids */, XFA_Element::Oids}, |
| {0x8b036f32 /* signature */, XFA_Element::Signature}, |
| {0x8b128efb /* ADBE_JSConsole */, XFA_Element::ADBE_JSConsole}, |
| {0x8bcfe96e /* caption */, XFA_Element::Caption}, |
| {0x8e1c2921 /* relevant */, XFA_Element::Relevant}, |
| {0x8e3f0a4b /* flipLabel */, XFA_Element::FlipLabel}, |
| {0x900280b7 /* exData */, XFA_Element::ExData}, |
| {0x91e80352 /* dayNames */, XFA_Element::DayNames}, |
| {0x93113b11 /* soapAction */, XFA_Element::SoapAction}, |
| {0x938b09f6 /* defaultTypeface */, XFA_Element::DefaultTypeface}, |
| {0x95b37897 /* manifest */, XFA_Element::Manifest}, |
| {0x97b76b54 /* overflow */, XFA_Element::Overflow}, |
| {0x9a57861b /* linear */, XFA_Element::Linear}, |
| {0x9ad5a821 /* currencySymbol */, XFA_Element::CurrencySymbol}, |
| {0x9c6471b3 /* delete */, XFA_Element::Delete}, |
| {0x9deea61d /* deltas */, XFA_Element::Deltas}, |
| {0x9e67de21 /* digestMethod */, XFA_Element::DigestMethod}, |
| {0x9f3e9510 /* instanceManager */, XFA_Element::InstanceManager}, |
| {0xa0799892 /* equateRange */, XFA_Element::EquateRange}, |
| {0xa084a381 /* medium */, XFA_Element::Medium}, |
| {0xa1211b8b /* textEdit */, XFA_Element::TextEdit}, |
| {0xa17008f0 /* templateCache */, XFA_Element::TemplateCache}, |
| {0xa4f7b88f /* compressObjectStream */, XFA_Element::CompressObjectStream}, |
| {0xa65f5d17 /* dataValue */, XFA_Element::DataValue}, |
| {0xa6caaa89 /* accessibleContent */, XFA_Element::AccessibleContent}, |
| {0xa94cc00b /* includeXDPContent */, XFA_Element::IncludeXDPContent}, |
| {0xa9b081a1 /* xmlConnection */, XFA_Element::XmlConnection}, |
| {0xab2a3b74 /* validateApprovalSignatures */, |
| XFA_Element::ValidateApprovalSignatures}, |
| {0xab8c5a2b /* signData */, XFA_Element::SignData}, |
| {0xabaa2ceb /* packets */, XFA_Element::Packets}, |
| {0xadba359c /* datePattern */, XFA_Element::DatePattern}, |
| {0xae222b2b /* duplexOption */, XFA_Element::DuplexOption}, |
| {0xb012effb /* base */, XFA_Element::Base}, |
| {0xb0e5485d /* bind */, XFA_Element::Bind}, |
| {0xb45d61b2 /* compression */, XFA_Element::Compression}, |
| {0xb563f0ff /* user */, XFA_Element::User}, |
| {0xb5848ad5 /* rectangle */, XFA_Element::Rectangle}, |
| {0xb6dacb72 /* effectiveOutputPolicy */, |
| XFA_Element::EffectiveOutputPolicy}, |
| {0xb7d7654d /* ADBE_JSDebugger */, XFA_Element::ADBE_JSDebugger}, |
| {0xbab37f73 /* acrobat7 */, XFA_Element::Acrobat7}, |
| {0xbc70081e /* interactive */, XFA_Element::Interactive}, |
| {0xbc8fa350 /* locale */, XFA_Element::Locale}, |
| {0xbcd44940 /* currentPage */, XFA_Element::CurrentPage}, |
| {0xbde9abda /* data */, XFA_Element::Data}, |
| {0xbde9abde /* date */, XFA_Element::Date}, |
| {0xbe52dfbf /* desc */, XFA_Element::Desc}, |
| {0xbf4b6405 /* encrypt */, XFA_Element::Encrypt}, |
| {0xbfa87cce /* draw */, XFA_Element::Draw}, |
| {0xc181ff4b /* encryption */, XFA_Element::Encryption}, |
| {0xc1970f40 /* meridiemNames */, XFA_Element::MeridiemNames}, |
| {0xc5ad9f5e /* messaging */, XFA_Element::Messaging}, |
| {0xc69549f4 /* speak */, XFA_Element::Speak}, |
| {0xc7743dc7 /* dataGroup */, XFA_Element::DataGroup}, |
| {0xc7eb20e9 /* common */, XFA_Element::Common}, |
| {0xc85d4528 /* #text */, XFA_Element::Sharptext}, |
| {0xc861556a /* paginationOverride */, XFA_Element::PaginationOverride}, |
| {0xc903dabb /* reasons */, XFA_Element::Reasons}, |
| {0xc9a8127f /* signatureProperties */, XFA_Element::SignatureProperties}, |
| {0xca010c2d /* threshold */, XFA_Element::Threshold}, |
| {0xcb4c5e96 /* appearanceFilter */, XFA_Element::AppearanceFilter}, |
| {0xcc92aba7 /* fill */, XFA_Element::Fill}, |
| {0xcd308b77 /* font */, XFA_Element::Font}, |
| {0xcd309ff4 /* form */, XFA_Element::Form}, |
| {0xcebcca2d /* mediumInfo */, XFA_Element::MediumInfo}, |
| {0xcfe0d643 /* certificate */, XFA_Element::Certificate}, |
| {0xd012c033 /* password */, XFA_Element::Password}, |
| {0xd01604bd /* runScripts */, XFA_Element::RunScripts}, |
| {0xd1227e6f /* trace */, XFA_Element::Trace}, |
| {0xd1532876 /* float */, XFA_Element::Float}, |
| {0xd17a6c30 /* renderPolicy */, XFA_Element::RenderPolicy}, |
| {0xd4bf6823 /* logPseudoModel */, XFA_Element::LogPseudoModel}, |
| {0xd58aa962 /* destination */, XFA_Element::Destination}, |
| {0xd6e27f1d /* value */, XFA_Element::Value}, |
| {0xd7a14462 /* bookend */, XFA_Element::Bookend}, |
| {0xd8c31254 /* exObject */, XFA_Element::ExObject}, |
| {0xda6a8590 /* openAction */, XFA_Element::OpenAction}, |
| {0xdab4fb7d /* neverEmbed */, XFA_Element::NeverEmbed}, |
| {0xdb98475f /* bindItems */, XFA_Element::BindItems}, |
| {0xdbfbe02e /* calculate */, XFA_Element::Calculate}, |
| {0xdd7676ed /* print */, XFA_Element::Print}, |
| {0xdde273d7 /* extras */, XFA_Element::Extras}, |
| {0xde146b34 /* proto */, XFA_Element::Proto}, |
| {0xdf059321 /* dSigData */, XFA_Element::DSigData}, |
| {0xdfccf030 /* creator */, XFA_Element::Creator}, |
| {0xdff78c6a /* connect */, XFA_Element::Connect}, |
| {0xe11a2cbc /* permissions */, XFA_Element::Permissions}, |
| {0xe14c801c /* connectionSet */, XFA_Element::ConnectionSet}, |
| {0xe1c83a14 /* submit */, XFA_Element::Submit}, |
| {0xe29821cd /* range */, XFA_Element::Range}, |
| {0xe38d83c7 /* linearized */, XFA_Element::Linearized}, |
| {0xe3aa2578 /* packet */, XFA_Element::Packet}, |
| {0xe3aa860e /* rootElement */, XFA_Element::RootElement}, |
| {0xe3e553fa /* plaintextMetadata */, XFA_Element::PlaintextMetadata}, |
| {0xe3e6e4f2 /* numberSymbols */, XFA_Element::NumberSymbols}, |
| {0xe3f067f6 /* printHighQuality */, XFA_Element::PrintHighQuality}, |
| {0xe3fd078c /* driver */, XFA_Element::Driver}, |
| {0xe48b34f2 /* incrementalLoad */, XFA_Element::IncrementalLoad}, |
| {0xe550e7c2 /* subjectDN */, XFA_Element::SubjectDN}, |
| {0xe6669a78 /* compressLogicalStructure */, |
| XFA_Element::CompressLogicalStructure}, |
| {0xe7a7ea02 /* incrementalMerge */, XFA_Element::IncrementalMerge}, |
| {0xe948530d /* radial */, XFA_Element::Radial}, |
| {0xea8d6999 /* variables */, XFA_Element::Variables}, |
| {0xeaa142c0 /* timePatterns */, XFA_Element::TimePatterns}, |
| {0xeb943a71 /* effectiveInputPolicy */, XFA_Element::EffectiveInputPolicy}, |
| {0xef04a2bc /* nameAttr */, XFA_Element::NameAttr}, |
| {0xf07222ab /* conformance */, XFA_Element::Conformance}, |
| {0xf0aaaadc /* transform */, XFA_Element::Transform}, |
| {0xf1433e88 /* lockDocument */, XFA_Element::LockDocument}, |
| {0xf54eb997 /* breakAfter */, XFA_Element::BreakAfter}, |
| {0xf616da28 /* line */, XFA_Element::Line}, |
| {0xf616f3dc /* list */, XFA_Element::List}, |
| {0xf7055fb1 /* source */, XFA_Element::Source}, |
| {0xf7eebe1c /* occur */, XFA_Element::Occur}, |
| {0xf8d10d97 /* pickTrayByPDFSize */, XFA_Element::PickTrayByPDFSize}, |
| {0xf8f19e3a /* monthNames */, XFA_Element::MonthNames}, |
| {0xf984149b /* severity */, XFA_Element::Severity}, |
| {0xf9bcb037 /* groupParent */, XFA_Element::GroupParent}, |
| {0xfbc42fff /* documentAssembly */, XFA_Element::DocumentAssembly}, |
| {0xfc78159f /* numberSymbol */, XFA_Element::NumberSymbol}, |
| {0xfcbd606c /* tagged */, XFA_Element::Tagged}, |
| {0xff063802 /* items */, XFA_Element::Items}, |
| }; |
| |
| } // namespace |
| |
| // static |
| XFA_Element CXFA_Node::NameToElement(const WideString& name) { |
| uint32_t hash = FX_HashCode_GetW(name.AsStringView(), false); |
| auto* elem = std::lower_bound( |
| std::begin(ElementNameToEnum), std::end(ElementNameToEnum), hash, |
| [](const ElementNameInfo& a, uint32_t hash) { return a.hash < hash; }); |
| if (elem && elem->hash == hash) |
| return elem->element; |
| return XFA_Element::Unknown; |
| } |
| |
| // static |
| std::unique_ptr<CXFA_Node> CXFA_Node::Create(CXFA_Document* doc, |
| XFA_Element element, |
| XFA_XDPPACKET packet) { |
| ASSERT(element != XFA_Element::NodeList); |
| std::unique_ptr<CXFA_Node> node; |
| switch (element) { |
| case XFA_Element::Ps: |
| node = pdfium::MakeUnique<CXFA_Ps>(doc, packet); |
| break; |
| case XFA_Element::To: |
| node = pdfium::MakeUnique<CXFA_To>(doc, packet); |
| break; |
| case XFA_Element::Ui: |
| node = pdfium::MakeUnique<CXFA_Ui>(doc, packet); |
| break; |
| case XFA_Element::RecordSet: |
| node = pdfium::MakeUnique<CXFA_RecordSet>(doc, packet); |
| break; |
| case XFA_Element::SubsetBelow: |
| node = pdfium::MakeUnique<CXFA_SubsetBelow>(doc, packet); |
| break; |
| case XFA_Element::SubformSet: |
| node = pdfium::MakeUnique<CXFA_SubformSet>(doc, packet); |
| break; |
| case XFA_Element::AdobeExtensionLevel: |
| node = pdfium::MakeUnique<CXFA_AdobeExtensionLevel>(doc, packet); |
| break; |
| case XFA_Element::Typeface: |
| node = pdfium::MakeUnique<CXFA_Typeface>(doc, packet); |
| break; |
| case XFA_Element::Break: |
| node = pdfium::MakeUnique<CXFA_Break>(doc, packet); |
| break; |
| case XFA_Element::FontInfo: |
| node = pdfium::MakeUnique<CXFA_FontInfo>(doc, packet); |
| break; |
| case XFA_Element::NumberPattern: |
| node = pdfium::MakeUnique<CXFA_NumberPattern>(doc, packet); |
| break; |
| case XFA_Element::DynamicRender: |
| node = pdfium::MakeUnique<CXFA_DynamicRender>(doc, packet); |
| break; |
| case XFA_Element::PrintScaling: |
| node = pdfium::MakeUnique<CXFA_PrintScaling>(doc, packet); |
| break; |
| case XFA_Element::CheckButton: |
| node = pdfium::MakeUnique<CXFA_CheckButton>(doc, packet); |
| break; |
| case XFA_Element::DatePatterns: |
| node = pdfium::MakeUnique<CXFA_DatePatterns>(doc, packet); |
| break; |
| case XFA_Element::SourceSet: |
| node = pdfium::MakeUnique<CXFA_SourceSet>(doc, packet); |
| break; |
| case XFA_Element::Amd: |
| node = pdfium::MakeUnique<CXFA_Amd>(doc, packet); |
| break; |
| case XFA_Element::Arc: |
| node = pdfium::MakeUnique<CXFA_Arc>(doc, packet); |
| break; |
| case XFA_Element::Day: |
| node = pdfium::MakeUnique<CXFA_Day>(doc, packet); |
| break; |
| case XFA_Element::Era: |
| node = pdfium::MakeUnique<CXFA_Era>(doc, packet); |
| break; |
| case XFA_Element::Jog: |
| node = pdfium::MakeUnique<CXFA_Jog>(doc, packet); |
| break; |
| case XFA_Element::Log: |
| node = pdfium::MakeUnique<CXFA_Log>(doc, packet); |
| break; |
| case XFA_Element::Map: |
| node = pdfium::MakeUnique<CXFA_Map>(doc, packet); |
| break; |
| case XFA_Element::Mdp: |
| node = pdfium::MakeUnique<CXFA_Mdp>(doc, packet); |
| break; |
| case XFA_Element::BreakBefore: |
| node = pdfium::MakeUnique<CXFA_BreakBefore>(doc, packet); |
| break; |
| case XFA_Element::Oid: |
| node = pdfium::MakeUnique<CXFA_Oid>(doc, packet); |
| break; |
| case XFA_Element::Pcl: |
| node = pdfium::MakeUnique<CXFA_Pcl>(doc, packet); |
| break; |
| case XFA_Element::Pdf: |
| node = pdfium::MakeUnique<CXFA_Pdf>(doc, packet); |
| break; |
| case XFA_Element::Ref: |
| node = pdfium::MakeUnique<CXFA_Ref>(doc, packet); |
| break; |
| case XFA_Element::Uri: |
| node = pdfium::MakeUnique<CXFA_Uri>(doc, packet); |
| break; |
| case XFA_Element::Xdc: |
| node = pdfium::MakeUnique<CXFA_Xdc>(doc, packet); |
| break; |
| case XFA_Element::Xdp: |
| node = pdfium::MakeUnique<CXFA_Xdp>(doc, packet); |
| break; |
| case XFA_Element::Xfa: |
| node = pdfium::MakeUnique<CXFA_Xfa>(doc, packet); |
| break; |
| case XFA_Element::Xsl: |
| node = pdfium::MakeUnique<CXFA_Xsl>(doc, packet); |
| break; |
| case XFA_Element::Zpl: |
| node = pdfium::MakeUnique<CXFA_Zpl>(doc, packet); |
| break; |
| case XFA_Element::Cache: |
| node = pdfium::MakeUnique<CXFA_Cache>(doc, packet); |
| break; |
| case XFA_Element::Margin: |
| node = pdfium::MakeUnique<CXFA_Margin>(doc, packet); |
| break; |
| case XFA_Element::KeyUsage: |
| node = pdfium::MakeUnique<CXFA_KeyUsage>(doc, packet); |
| break; |
| case XFA_Element::Exclude: |
| node = pdfium::MakeUnique<CXFA_Exclude>(doc, packet); |
| break; |
| case XFA_Element::ChoiceList: |
| node = pdfium::MakeUnique<CXFA_ChoiceList>(doc, packet); |
| break; |
| case XFA_Element::Level: |
| node = pdfium::MakeUnique<CXFA_Level>(doc, packet); |
| break; |
| case XFA_Element::LabelPrinter: |
| node = pdfium::MakeUnique<CXFA_LabelPrinter>(doc, packet); |
| break; |
| case XFA_Element::CalendarSymbols: |
| node = pdfium::MakeUnique<CXFA_CalendarSymbols>(doc, packet); |
| break; |
| case XFA_Element::Para: |
| node = pdfium::MakeUnique<CXFA_Para>(doc, packet); |
| break; |
| case XFA_Element::Part: |
| node = pdfium::MakeUnique<CXFA_Part>(doc, packet); |
| break; |
| case XFA_Element::Pdfa: |
| node = pdfium::MakeUnique<CXFA_Pdfa>(doc, packet); |
| break; |
| case XFA_Element::Filter: |
| node = pdfium::MakeUnique<CXFA_Filter>(doc, packet); |
| break; |
| case XFA_Element::Present: |
| node = pdfium::MakeUnique<CXFA_Present>(doc, packet); |
| break; |
| case XFA_Element::Pagination: |
| node = pdfium::MakeUnique<CXFA_Pagination>(doc, packet); |
| break; |
| case XFA_Element::Encoding: |
| node = pdfium::MakeUnique<CXFA_Encoding>(doc, packet); |
| break; |
| case XFA_Element::Event: |
| node = pdfium::MakeUnique<CXFA_Event>(doc, packet); |
| break; |
| case XFA_Element::Whitespace: |
| node = pdfium::MakeUnique<CXFA_Whitespace>(doc, packet); |
| break; |
| case XFA_Element::DefaultUi: |
| node = pdfium::MakeUnique<CXFA_DefaultUi>(doc, packet); |
| break; |
| case XFA_Element::DataModel: |
| node = pdfium::MakeUnique<CXFA_DataModel>(doc, packet); |
| break; |
| case XFA_Element::Barcode: |
| node = pdfium::MakeUnique<CXFA_Barcode>(doc, packet); |
| break; |
| case XFA_Element::TimePattern: |
| node = pdfium::MakeUnique<CXFA_TimePattern>(doc, packet); |
| break; |
| case XFA_Element::BatchOutput: |
| node = pdfium::MakeUnique<CXFA_BatchOutput>(doc, packet); |
| break; |
| case XFA_Element::Enforce: |
| node = pdfium::MakeUnique<CXFA_Enforce>(doc, packet); |
| break; |
| case XFA_Element::CurrencySymbols: |
| node = pdfium::MakeUnique<CXFA_CurrencySymbols>(doc, packet); |
| break; |
| case XFA_Element::AddSilentPrint: |
| node = pdfium::MakeUnique<CXFA_AddSilentPrint>(doc, packet); |
| break; |
| case XFA_Element::Rename: |
| node = pdfium::MakeUnique<CXFA_Rename>(doc, packet); |
| break; |
| case XFA_Element::Operation: |
| node = pdfium::MakeUnique<CXFA_Operation>(doc, packet); |
| break; |
| case XFA_Element::Typefaces: |
| node = pdfium::MakeUnique<CXFA_Typefaces>(doc, packet); |
| break; |
| case XFA_Element::SubjectDNs: |
| node = pdfium::MakeUnique<CXFA_SubjectDNs>(doc, packet); |
| break; |
| case XFA_Element::Issuers: |
| node = pdfium::MakeUnique<CXFA_Issuers>(doc, packet); |
| break; |
| case XFA_Element::SignaturePseudoModel: |
| node = pdfium::MakeUnique<CXFA_SignaturePseudoModel>(doc, packet); |
| break; |
| case XFA_Element::WsdlConnection: |
| node = pdfium::MakeUnique<CXFA_WsdlConnection>(doc, packet); |
| break; |
| case XFA_Element::Debug: |
| node = pdfium::MakeUnique<CXFA_Debug>(doc, packet); |
| break; |
| case XFA_Element::Delta: |
| node = pdfium::MakeUnique<CXFA_Delta>(doc, packet); |
| break; |
| case XFA_Element::EraNames: |
| node = pdfium::MakeUnique<CXFA_EraNames>(doc, packet); |
| break; |
| case XFA_Element::ModifyAnnots: |
| node = pdfium::MakeUnique<CXFA_ModifyAnnots>(doc, packet); |
| break; |
| case XFA_Element::StartNode: |
| node = pdfium::MakeUnique<CXFA_StartNode>(doc, packet); |
| break; |
| case XFA_Element::Button: |
| node = pdfium::MakeUnique<CXFA_Button>(doc, packet); |
| break; |
| case XFA_Element::Format: |
| node = pdfium::MakeUnique<CXFA_Format>(doc, packet); |
| break; |
| case XFA_Element::Border: |
| node = pdfium::MakeUnique<CXFA_Border>(doc, packet); |
| break; |
| case XFA_Element::Area: |
| node = pdfium::MakeUnique<CXFA_Area>(doc, packet); |
| break; |
| case XFA_Element::Hyphenation: |
| node = pdfium::MakeUnique<CXFA_Hyphenation>(doc, packet); |
| break; |
| case XFA_Element::Text: |
| node = pdfium::MakeUnique<CXFA_Text>(doc, packet); |
| break; |
| case XFA_Element::Time: |
| node = pdfium::MakeUnique<CXFA_Time>(doc, packet); |
| break; |
| case XFA_Element::Type: |
| node = pdfium::MakeUnique<CXFA_Type>(doc, packet); |
| break; |
| case XFA_Element::Overprint: |
| node = pdfium::MakeUnique<CXFA_Overprint>(doc, packet); |
| break; |
| case XFA_Element::Certificates: |
| node = pdfium::MakeUnique<CXFA_Certificates>(doc, packet); |
| break; |
| case XFA_Element::EncryptionMethods: |
| node = pdfium::MakeUnique<CXFA_EncryptionMethods>(doc, packet); |
| break; |
| case XFA_Element::SetProperty: |
| node = pdfium::MakeUnique<CXFA_SetProperty>(doc, packet); |
| break; |
| case XFA_Element::PrinterName: |
| node = pdfium::MakeUnique<CXFA_PrinterName>(doc, packet); |
| break; |
| case XFA_Element::StartPage: |
| node = pdfium::MakeUnique<CXFA_StartPage>(doc, packet); |
| break; |
| case XFA_Element::PageOffset: |
| node = pdfium::MakeUnique<CXFA_PageOffset>(doc, packet); |
| break; |
| case XFA_Element::DateTime: |
| node = pdfium::MakeUnique<CXFA_DateTime>(doc, packet); |
| break; |
| case XFA_Element::Comb: |
| node = pdfium::MakeUnique<CXFA_Comb>(doc, packet); |
| break; |
| case XFA_Element::Pattern: |
| node = pdfium::MakeUnique<CXFA_Pattern>(doc, packet); |
| break; |
| case XFA_Element::IfEmpty: |
| node = pdfium::MakeUnique<CXFA_IfEmpty>(doc, packet); |
| break; |
| case XFA_Element::SuppressBanner: |
| node = pdfium::MakeUnique<CXFA_SuppressBanner>(doc, packet); |
| break; |
| case XFA_Element::OutputBin: |
| node = pdfium::MakeUnique<CXFA_OutputBin>(doc, packet); |
| break; |
| case XFA_Element::Field: |
| node = pdfium::MakeUnique<CXFA_Field>(doc, packet); |
| break; |
| case XFA_Element::Agent: |
| node = pdfium::MakeUnique<CXFA_Agent>(doc, packet); |
| break; |
| case XFA_Element::OutputXSL: |
| node = pdfium::MakeUnique<CXFA_OutputXSL>(doc, packet); |
| break; |
| case XFA_Element::AdjustData: |
| node = pdfium::MakeUnique<CXFA_AdjustData>(doc, packet); |
| break; |
| case XFA_Element::AutoSave: |
| node = pdfium::MakeUnique<CXFA_AutoSave>(doc, packet); |
| break; |
| case XFA_Element::ContentArea: |
| node = pdfium::MakeUnique<CXFA_ContentArea>(doc, packet); |
| break; |
| case XFA_Element::EventPseudoModel: |
| node = pdfium::MakeUnique<CXFA_EventPseudoModel>(doc, packet); |
| break; |
| case XFA_Element::WsdlAddress: |
| node = pdfium::MakeUnique<CXFA_WsdlAddress>(doc, packet); |
| break; |
| case XFA_Element::Solid: |
| node = pdfium::MakeUnique<CXFA_Solid>(doc, packet); |
| break; |
| case XFA_Element::DateTimeSymbols: |
| node = pdfium::MakeUnique<CXFA_DateTimeSymbols>(doc, packet); |
| break; |
| case XFA_Element::EncryptionLevel: |
| node = pdfium::MakeUnique<CXFA_EncryptionLevel>(doc, packet); |
| break; |
| case XFA_Element::Edge: |
| node = pdfium::MakeUnique<CXFA_Edge>(doc, packet); |
| break; |
| case XFA_Element::Stipple: |
| node = pdfium::MakeUnique<CXFA_Stipple>(doc, packet); |
| break; |
| case XFA_Element::Attributes: |
| node = pdfium::MakeUnique<CXFA_Attributes>(doc, packet); |
| break; |
| case XFA_Element::VersionControl: |
| node = pdfium::MakeUnique<CXFA_VersionControl>(doc, packet); |
| break; |
| case XFA_Element::Meridiem: |
| node = pdfium::MakeUnique<CXFA_Meridiem>(doc, packet); |
| break; |
| case XFA_Element::ExclGroup: |
| node = pdfium::MakeUnique<CXFA_ExclGroup>(doc, packet); |
| break; |
| case XFA_Element::ToolTip: |
| node = pdfium::MakeUnique<CXFA_ToolTip>(doc, packet); |
| break; |
| case XFA_Element::Compress: |
| node = pdfium::MakeUnique<CXFA_Compress>(doc, packet); |
| break; |
| case XFA_Element::Reason: |
| node = pdfium::MakeUnique<CXFA_Reason>(doc, packet); |
| break; |
| case XFA_Element::Execute: |
| node = pdfium::MakeUnique<CXFA_Execute>(doc, packet); |
| break; |
| case XFA_Element::ContentCopy: |
| node = pdfium::MakeUnique<CXFA_ContentCopy>(doc, packet); |
| break; |
| case XFA_Element::DateTimeEdit: |
| node = pdfium::MakeUnique<CXFA_DateTimeEdit>(doc, packet); |
| break; |
| case XFA_Element::Config: |
| node = pdfium::MakeUnique<CXFA_Config>(doc, packet); |
| break; |
| case XFA_Element::Image: |
| node = pdfium::MakeUnique<CXFA_Image>(doc, packet); |
| break; |
| case XFA_Element::SharpxHTML: |
| node = pdfium::MakeUnique<CXFA_SharpxHTML>(doc, packet); |
| break; |
| case XFA_Element::NumberOfCopies: |
| node = pdfium::MakeUnique<CXFA_NumberOfCopies>(doc, packet); |
| break; |
| case XFA_Element::BehaviorOverride: |
| node = pdfium::MakeUnique<CXFA_BehaviorOverride>(doc, packet); |
| break; |
| case XFA_Element::TimeStamp: |
| node = pdfium::MakeUnique<CXFA_TimeStamp>(doc, packet); |
| break; |
| case XFA_Element::Month: |
| node = pdfium::MakeUnique<CXFA_Month>(doc, packet); |
| break; |
| case XFA_Element::ViewerPreferences: |
| node = pdfium::MakeUnique<CXFA_ViewerPreferences>(doc, packet); |
| break; |
| case XFA_Element::ScriptModel: |
| node = pdfium::MakeUnique<CXFA_ScriptModel>(doc, packet); |
| break; |
| case XFA_Element::Decimal: |
| node = pdfium::MakeUnique<CXFA_Decimal>(doc, packet); |
| break; |
| case XFA_Element::Subform: |
| node = pdfium::MakeUnique<CXFA_Subform>(doc, packet); |
| break; |
| case XFA_Element::Select: |
| node = pdfium::MakeUnique<CXFA_Select>(doc, packet); |
| break; |
| case XFA_Element::Window: |
| node = pdfium::MakeUnique<CXFA_Window>(doc, packet); |
| break; |
| case XFA_Element::LocaleSet: |
| node = pdfium::MakeUnique<CXFA_LocaleSet>(doc, packet); |
| break; |
| case XFA_Element::Handler: |
| node = pdfium::MakeUnique<CXFA_Handler>(doc, packet); |
| break; |
| case XFA_Element::HostPseudoModel: |
| node = pdfium::MakeUnique<CXFA_HostPseudoModel>(doc, packet); |
| break; |
| case XFA_Element::Presence: |
| node = pdfium::MakeUnique<CXFA_Presence>(doc, packet); |
| break; |
| case XFA_Element::Record: |
| node = pdfium::MakeUnique<CXFA_Record>(doc, packet); |
| break; |
| case XFA_Element::Embed: |
| node = pdfium::MakeUnique<CXFA_Embed>(doc, packet); |
| break; |
| case XFA_Element::Version: |
| node = pdfium::MakeUnique<CXFA_Version>(doc, packet); |
| break; |
| case XFA_Element::Command: |
| node = pdfium::MakeUnique<CXFA_Command>(doc, packet); |
| break; |
| case XFA_Element::Copies: |
| node = pdfium::MakeUnique<CXFA_Copies>(doc, packet); |
| break; |
| case XFA_Element::Staple: |
| node = pdfium::MakeUnique<CXFA_Staple>(doc, packet); |
| break; |
| case XFA_Element::SubmitFormat: |
| node = pdfium::MakeUnique<CXFA_SubmitFormat>(doc, packet); |
| break; |
| case XFA_Element::Boolean: |
| node = pdfium::MakeUnique<CXFA_Boolean>(doc, packet); |
| break; |
| case XFA_Element::Message: |
| node = pdfium::MakeUnique<CXFA_Message>(doc, packet); |
| break; |
| case XFA_Element::Output: |
| node = pdfium::MakeUnique<CXFA_Output>(doc, packet); |
| break; |
| case XFA_Element::PsMap: |
| node = pdfium::MakeUnique<CXFA_PsMap>(doc, packet); |
| break; |
| case XFA_Element::ExcludeNS: |
| node = pdfium::MakeUnique<CXFA_ExcludeNS>(doc, packet); |
| break; |
| case XFA_Element::Assist: |
| node = pdfium::MakeUnique<CXFA_Assist>(doc, packet); |
| break; |
| case XFA_Element::Picture: |
| node = pdfium::MakeUnique<CXFA_Picture>(doc, packet); |
| break; |
| case XFA_Element::Traversal: |
| node = pdfium::MakeUnique<CXFA_Traversal>(doc, packet); |
| break; |
| case XFA_Element::SilentPrint: |
| node = pdfium::MakeUnique<CXFA_SilentPrint>(doc, packet); |
| break; |
| case XFA_Element::WebClient: |
| node = pdfium::MakeUnique<CXFA_WebClient>(doc, packet); |
| break; |
| case XFA_Element::LayoutPseudoModel: |
| node = pdfium::MakeUnique<CXFA_LayoutPseudoModel>(doc, packet); |
| break; |
| case XFA_Element::Producer: |
| node = pdfium::MakeUnique<CXFA_Producer>(doc, packet); |
| break; |
| case XFA_Element::Corner: |
| node = pdfium::MakeUnique<CXFA_Corner>(doc, packet); |
| break; |
| case XFA_Element::MsgId: |
| node = pdfium::MakeUnique<CXFA_MsgId>(doc, packet); |
| break; |
| case XFA_Element::Color: |
| node = pdfium::MakeUnique<CXFA_Color>(doc, packet); |
| break; |
| case XFA_Element::Keep: |
| node = pdfium::MakeUnique<CXFA_Keep>(doc, packet); |
| break; |
| case XFA_Element::Query: |
| node = pdfium::MakeUnique<CXFA_Query>(doc, packet); |
| break; |
| case XFA_Element::Insert: |
| node = pdfium::MakeUnique<CXFA_Insert>(doc, packet); |
| break; |
| case XFA_Element::ImageEdit: |
| node = pdfium::MakeUnique<CXFA_ImageEdit>(doc, packet); |
| break; |
| case XFA_Element::Validate: |
| node = pdfium::MakeUnique<CXFA_Validate>(doc, packet); |
| break; |
| case XFA_Element::DigestMethods: |
| node = pdfium::MakeUnique<CXFA_DigestMethods>(doc, packet); |
| break; |
| case XFA_Element::NumberPatterns: |
| node = pdfium::MakeUnique<CXFA_NumberPatterns>(doc, packet); |
| break; |
| case XFA_Element::PageSet: |
| node = pdfium::MakeUnique<CXFA_PageSet>(doc, packet); |
| break; |
| case XFA_Element::Integer: |
| node = pdfium::MakeUnique<CXFA_Integer>(doc, packet); |
| break; |
| case XFA_Element::SoapAddress: |
| node = pdfium::MakeUnique<CXFA_SoapAddress>(doc, packet); |
| break; |
| case XFA_Element::Equate: |
| node = pdfium::MakeUnique<CXFA_Equate>(doc, packet); |
| break; |
| case XFA_Element::FormFieldFilling: |
| node = pdfium::MakeUnique<CXFA_FormFieldFilling>(doc, packet); |
| break; |
| case XFA_Element::PageRange: |
| node = pdfium::MakeUnique<CXFA_PageRange>(doc, packet); |
| break; |
| case XFA_Element::Update: |
| node = pdfium::MakeUnique<CXFA_Update>(doc, packet); |
| break; |
| case XFA_Element::ConnectString: |
| node = pdfium::MakeUnique<CXFA_ConnectString>(doc, packet); |
| break; |
| case XFA_Element::Mode: |
| node = pdfium::MakeUnique<CXFA_Mode>(doc, packet); |
| break; |
| case XFA_Element::Layout: |
| node = pdfium::MakeUnique<CXFA_Layout>(doc, packet); |
| break; |
| case XFA_Element::Sharpxml: |
| node = pdfium::MakeUnique<CXFA_Sharpxml>(doc, packet); |
| break; |
| case XFA_Element::XsdConnection: |
| node = pdfium::MakeUnique<CXFA_XsdConnection>(doc, packet); |
| break; |
| case XFA_Element::Traverse: |
| node = pdfium::MakeUnique<CXFA_Traverse>(doc, packet); |
| break; |
| case XFA_Element::Encodings: |
| node = pdfium::MakeUnique<CXFA_Encodings>(doc, packet); |
| break; |
| case XFA_Element::Template: |
| node = pdfium::MakeUnique<CXFA_Template>(doc, packet); |
| break; |
| case XFA_Element::Acrobat: |
| node = pdfium::MakeUnique<CXFA_Acrobat>(doc, packet); |
| break; |
| case XFA_Element::ValidationMessaging: |
| node = pdfium::MakeUnique<CXFA_ValidationMessaging>(doc, packet); |
| break; |
| case XFA_Element::Signing: |
| node = pdfium::MakeUnique<CXFA_Signing>(doc, packet); |
| break; |
| case XFA_Element::DataWindow: |
| node = pdfium::MakeUnique<CXFA_DataWindow>(doc, packet); |
| break; |
| case XFA_Element::Script: |
| node = pdfium::MakeUnique<CXFA_Script>(doc, packet); |
| break; |
| case XFA_Element::AddViewerPreferences: |
| node = pdfium::MakeUnique<CXFA_AddViewerPreferences>(doc, packet); |
| break; |
| case XFA_Element::AlwaysEmbed: |
| node = pdfium::MakeUnique<CXFA_AlwaysEmbed>(doc, packet); |
| break; |
| case XFA_Element::PasswordEdit: |
| node = pdfium::MakeUnique<CXFA_PasswordEdit>(doc, packet); |
| break; |
| case XFA_Element::NumericEdit: |
| node = pdfium::MakeUnique<CXFA_NumericEdit>(doc, packet); |
| break; |
| case XFA_Element::EncryptionMethod: |
| node = pdfium::MakeUnique<CXFA_EncryptionMethod>(doc, packet); |
| break; |
| case XFA_Element::Change: |
| node = pdfium::MakeUnique<CXFA_Change>(doc, packet); |
| break; |
| case XFA_Element::PageArea: |
| node = pdfium::MakeUnique<CXFA_PageArea>(doc, packet); |
| break; |
| case XFA_Element::SubmitUrl: |
| node = pdfium::MakeUnique<CXFA_SubmitUrl>(doc, packet); |
| break; |
| case XFA_Element::Oids: |
| node = pdfium::MakeUnique<CXFA_Oids>(doc, packet); |
| break; |
| case XFA_Element::Signature: |
| node = pdfium::MakeUnique<CXFA_Signature>(doc, packet); |
| break; |
| case XFA_Element::ADBE_JSConsole: |
| node = pdfium::MakeUnique<CXFA_aDBE_JSConsole>(doc, packet); |
| break; |
| case XFA_Element::Caption: |
| node = pdfium::MakeUnique<CXFA_Caption>(doc, packet); |
| break; |
| case XFA_Element::Relevant: |
| node = pdfium::MakeUnique<CXFA_Relevant>(doc, packet); |
| break; |
| case XFA_Element::FlipLabel: |
| node = pdfium::MakeUnique<CXFA_FlipLabel>(doc, packet); |
| break; |
| case XFA_Element::ExData: |
| node = pdfium::MakeUnique<CXFA_ExData>(doc, packet); |
| break; |
| case XFA_Element::DayNames: |
| node = pdfium::MakeUnique<CXFA_DayNames>(doc, packet); |
| break; |
| case XFA_Element::SoapAction: |
| node = pdfium::MakeUnique<CXFA_SoapAction>(doc, packet); |
| break; |
| case XFA_Element::DefaultTypeface: |
| node = pdfium::MakeUnique<CXFA_DefaultTypeface>(doc, packet); |
| break; |
| case XFA_Element::Manifest: |
| node = pdfium::MakeUnique<CXFA_Manifest>(doc, packet); |
| break; |
| case XFA_Element::Overflow: |
| node = pdfium::MakeUnique<CXFA_Overflow>(doc, packet); |
| break; |
| case XFA_Element::Linear: |
| node = pdfium::MakeUnique<CXFA_Linear>(doc, packet); |
| break; |
| case XFA_Element::CurrencySymbol: |
| node = pdfium::MakeUnique<CXFA_CurrencySymbol>(doc, packet); |
| break; |
| case XFA_Element::Delete: |
| node = pdfium::MakeUnique<CXFA_Delete>(doc, packet); |
| break; |
| case XFA_Element::Deltas: |
| node = pdfium::MakeUnique<CXFA_Deltas>(doc, packet); |
| break; |
| case XFA_Element::DigestMethod: |
| node = pdfium::MakeUnique<CXFA_DigestMethod>(doc, packet); |
| break; |
| case XFA_Element::InstanceManager: |
| node = pdfium::MakeUnique<CXFA_InstanceManager>(doc, packet); |
| break; |
| case XFA_Element::EquateRange: |
| node = pdfium::MakeUnique<CXFA_EquateRange>(doc, packet); |
| break; |
| case XFA_Element::Medium: |
| node = pdfium::MakeUnique<CXFA_Medium>(doc, packet); |
| break; |
| case XFA_Element::TextEdit: |
| node = pdfium::MakeUnique<CXFA_TextEdit>(doc, packet); |
| break; |
| case XFA_Element::TemplateCache: |
| node = pdfium::MakeUnique<CXFA_TemplateCache>(doc, packet); |
| break; |
| case XFA_Element::CompressObjectStream: |
| node = pdfium::MakeUnique<CXFA_CompressObjectStream>(doc, packet); |
| break; |
| case XFA_Element::DataValue: |
| node = pdfium::MakeUnique<CXFA_DataValue>(doc, packet); |
| break; |
| case XFA_Element::AccessibleContent: |
| node = pdfium::MakeUnique<CXFA_AccessibleContent>(doc, packet); |
| break; |
| case XFA_Element::IncludeXDPContent: |
| node = pdfium::MakeUnique<CXFA_IncludeXDPContent>(doc, packet); |
| break; |
| case XFA_Element::XmlConnection: |
| node = pdfium::MakeUnique<CXFA_XmlConnection>(doc, packet); |
| break; |
| case XFA_Element::ValidateApprovalSignatures: |
| node = pdfium::MakeUnique<CXFA_ValidateApprovalSignatures>(doc, packet); |
| break; |
| case XFA_Element::SignData: |
| node = pdfium::MakeUnique<CXFA_SignData>(doc, packet); |
| break; |
| case XFA_Element::Packets: |
| node = pdfium::MakeUnique<CXFA_Packets>(doc, packet); |
| break; |
| case XFA_Element::DatePattern: |
| node = pdfium::MakeUnique<CXFA_DatePattern>(doc, packet); |
| break; |
| case XFA_Element::DuplexOption: |
| node = pdfium::MakeUnique<CXFA_DuplexOption>(doc, packet); |
| break; |
| case XFA_Element::Base: |
| node = pdfium::MakeUnique<CXFA_Base>(doc, packet); |
| break; |
| case XFA_Element::Bind: |
| node = pdfium::MakeUnique<CXFA_Bind>(doc, packet); |
| break; |
| case XFA_Element::Compression: |
| node = pdfium::MakeUnique<CXFA_Compression>(doc, packet); |
| break; |
| case XFA_Element::User: |
| node = pdfium::MakeUnique<CXFA_User>(doc, packet); |
| break; |
| case XFA_Element::Rectangle: |
| node = pdfium::MakeUnique<CXFA_Rectangle>(doc, packet); |
| break; |
| case XFA_Element::EffectiveOutputPolicy: |
| node = pdfium::MakeUnique<CXFA_EffectiveOutputPolicy>(doc, packet); |
| break; |
| case XFA_Element::ADBE_JSDebugger: |
| node = pdfium::MakeUnique<CXFA_aDBE_JSDebugger>(doc, packet); |
| break; |
| case XFA_Element::Acrobat7: |
| node = pdfium::MakeUnique<CXFA_Acrobat7>(doc, packet); |
| break; |
| case XFA_Element::Interactive: |
| node = pdfium::MakeUnique<CXFA_Interactive>(doc, packet); |
| break; |
| case XFA_Element::Locale: |
| node = pdfium::MakeUnique<CXFA_Locale>(doc, packet); |
| break; |
| case XFA_Element::CurrentPage: |
| node = pdfium::MakeUnique<CXFA_CurrentPage>(doc, packet); |
| break; |
| case XFA_Element::Data: |
| node = pdfium::MakeUnique<CXFA_Data>(doc, packet); |
| break; |
| case XFA_Element::Date: |
| node = pdfium::MakeUnique<CXFA_Date>(doc, packet); |
| break; |
| case XFA_Element::Desc: |
| node = pdfium::MakeUnique<CXFA_Desc>(doc, packet); |
| break; |
| case XFA_Element::Encrypt: |
| node = pdfium::MakeUnique<CXFA_Encrypt>(doc, packet); |
| break; |
| case XFA_Element::Draw: |
| node = pdfium::MakeUnique<CXFA_Draw>(doc, packet); |
| break; |
| case XFA_Element::Encryption: |
| node = pdfium::MakeUnique<CXFA_Encryption>(doc, packet); |
| break; |
| case XFA_Element::MeridiemNames: |
| node = pdfium::MakeUnique<CXFA_MeridiemNames>(doc, packet); |
| break; |
| case XFA_Element::Messaging: |
| node = pdfium::MakeUnique<CXFA_Messaging>(doc, packet); |
| break; |
| case XFA_Element::Speak: |
| node = pdfium::MakeUnique<CXFA_Speak>(doc, packet); |
| break; |
| case XFA_Element::DataGroup: |
| node = pdfium::MakeUnique<CXFA_DataGroup>(doc, packet); |
| break; |
| case XFA_Element::Common: |
| node = pdfium::MakeUnique<CXFA_Common>(doc, packet); |
| break; |
| case XFA_Element::Sharptext: |
| node = pdfium::MakeUnique<CXFA_Sharptext>(doc, packet); |
| break; |
| case XFA_Element::PaginationOverride: |
| node = pdfium::MakeUnique<CXFA_PaginationOverride>(doc, packet); |
| break; |
| case XFA_Element::Reasons: |
| node = pdfium::MakeUnique<CXFA_Reasons>(doc, packet); |
| break; |
| case XFA_Element::SignatureProperties: |
| node = pdfium::MakeUnique<CXFA_SignatureProperties>(doc, packet); |
| break; |
| case XFA_Element::Threshold: |
| node = pdfium::MakeUnique<CXFA_Threshold>(doc, packet); |
| break; |
| case XFA_Element::AppearanceFilter: |
| node = pdfium::MakeUnique<CXFA_AppearanceFilter>(doc, packet); |
| break; |
| case XFA_Element::Fill: |
| node = pdfium::MakeUnique<CXFA_Fill>(doc, packet); |
| break; |
| case XFA_Element::Font: |
| node = pdfium::MakeUnique<CXFA_Font>(doc, packet); |
| break; |
| case XFA_Element::Form: |
| node = pdfium::MakeUnique<CXFA_Form>(doc, packet); |
| break; |
| case XFA_Element::MediumInfo: |
| node = pdfium::MakeUnique<CXFA_MediumInfo>(doc, packet); |
| break; |
| case XFA_Element::Certificate: |
| node = pdfium::MakeUnique<CXFA_Certificate>(doc, packet); |
| break; |
| case XFA_Element::Password: |
| node = pdfium::MakeUnique<CXFA_Password>(doc, packet); |
| break; |
| case XFA_Element::RunScripts: |
| node = pdfium::MakeUnique<CXFA_RunScripts>(doc, packet); |
| break; |
| case XFA_Element::Trace: |
| node = pdfium::MakeUnique<CXFA_Trace>(doc, packet); |
| break; |
| case XFA_Element::Float: |
| node = pdfium::MakeUnique<CXFA_Float>(doc, packet); |
| break; |
| case XFA_Element::RenderPolicy: |
| node = pdfium::MakeUnique<CXFA_RenderPolicy>(doc, packet); |
| break; |
| case XFA_Element::LogPseudoModel: |
| node = pdfium::MakeUnique<CXFA_LogPseudoModel>(doc, packet); |
| break; |
| case XFA_Element::Destination: |
| node = pdfium::MakeUnique<CXFA_Destination>(doc, packet); |
| break; |
| case XFA_Element::Value: |
| node = pdfium::MakeUnique<CXFA_Value>(doc, packet); |
| break; |
| case XFA_Element::Bookend: |
| node = pdfium::MakeUnique<CXFA_Bookend>(doc, packet); |
| break; |
| case XFA_Element::ExObject: |
| node = pdfium::MakeUnique<CXFA_ExObject>(doc, packet); |
| break; |
| case XFA_Element::OpenAction: |
| node = pdfium::MakeUnique<CXFA_OpenAction>(doc, packet); |
| break; |
| case XFA_Element::NeverEmbed: |
| node = pdfium::MakeUnique<CXFA_NeverEmbed>(doc, packet); |
| break; |
| case XFA_Element::BindItems: |
| node = pdfium::MakeUnique<CXFA_BindItems>(doc, packet); |
| break; |
| case XFA_Element::Calculate: |
| node = pdfium::MakeUnique<CXFA_Calculate>(doc, packet); |
| break; |
| case XFA_Element::Print: |
| node = pdfium::MakeUnique<CXFA_Print>(doc, packet); |
| break; |
| case XFA_Element::Extras: |
| node = pdfium::MakeUnique<CXFA_Extras>(doc, packet); |
| break; |
| case XFA_Element::Proto: |
| node = pdfium::MakeUnique<CXFA_Proto>(doc, packet); |
| break; |
| case XFA_Element::DSigData: |
| node = pdfium::MakeUnique<CXFA_DSigData>(doc, packet); |
| break; |
| case XFA_Element::Creator: |
| node = pdfium::MakeUnique<CXFA_Creator>(doc, packet); |
| break; |
| case XFA_Element::Connect: |
| node = pdfium::MakeUnique<CXFA_Connect>(doc, packet); |
| break; |
| case XFA_Element::Permissions: |
| node = pdfium::MakeUnique<CXFA_Permissions>(doc, packet); |
| break; |
| case XFA_Element::ConnectionSet: |
| node = pdfium::MakeUnique<CXFA_ConnectionSet>(doc, packet); |
| break; |
| case XFA_Element::Submit: |
| node = pdfium::MakeUnique<CXFA_Submit>(doc, packet); |
| break; |
| case XFA_Element::Range: |
| node = pdfium::MakeUnique<CXFA_Range>(doc, packet); |
| break; |
| case XFA_Element::Linearized: |
| node = pdfium::MakeUnique<CXFA_Linearized>(doc, packet); |
| break; |
| case XFA_Element::Packet: |
| node = pdfium::MakeUnique<CXFA_Packet>(doc, packet); |
| break; |
| case XFA_Element::RootElement: |
| node = pdfium::MakeUnique<CXFA_RootElement>(doc, packet); |
| break; |
| case XFA_Element::PlaintextMetadata: |
| node = pdfium::MakeUnique<CXFA_PlaintextMetadata>(doc, packet); |
| break; |
| case XFA_Element::NumberSymbols: |
| node = pdfium::MakeUnique<CXFA_NumberSymbols>(doc, packet); |
| break; |
| case XFA_Element::PrintHighQuality: |
| node = pdfium::MakeUnique<CXFA_PrintHighQuality>(doc, packet); |
| break; |
| case XFA_Element::Driver: |
| node = pdfium::MakeUnique<CXFA_Driver>(doc, packet); |
| break; |
| case XFA_Element::IncrementalLoad: |
| node = pdfium::MakeUnique<CXFA_IncrementalLoad>(doc, packet); |
| break; |
| case XFA_Element::SubjectDN: |
| node = pdfium::MakeUnique<CXFA_SubjectDN>(doc, packet); |
| break; |
| case XFA_Element::CompressLogicalStructure: |
| node = pdfium::MakeUnique<CXFA_CompressLogicalStructure>(doc, packet); |
| break; |
| case XFA_Element::IncrementalMerge: |
| node = pdfium::MakeUnique<CXFA_IncrementalMerge>(doc, packet); |
| break; |
| case XFA_Element::Radial: |
| node = pdfium::MakeUnique<CXFA_Radial>(doc, packet); |
| break; |
| case XFA_Element::Variables: |
| node = pdfium::MakeUnique<CXFA_Variables>(doc, packet); |
| break; |
| case XFA_Element::TimePatterns: |
| node = pdfium::MakeUnique<CXFA_TimePatterns>(doc, packet); |
| break; |
| case XFA_Element::EffectiveInputPolicy: |
| node = pdfium::MakeUnique<CXFA_EffectiveInputPolicy>(doc, packet); |
| break; |
| case XFA_Element::NameAttr: |
| node = pdfium::MakeUnique<CXFA_NameAttr>(doc, packet); |
| break; |
| case XFA_Element::Conformance: |
| node = pdfium::MakeUnique<CXFA_Conformance>(doc, packet); |
| break; |
| case XFA_Element::Transform: |
| node = pdfium::MakeUnique<CXFA_Transform>(doc, packet); |
| break; |
| case XFA_Element::LockDocument: |
| node = pdfium::MakeUnique<CXFA_LockDocument>(doc, packet); |
| break; |
| case XFA_Element::BreakAfter: |
| node = pdfium::MakeUnique<CXFA_BreakAfter>(doc, packet); |
| break; |
| case XFA_Element::Line: |
| node = pdfium::MakeUnique<CXFA_Line>(doc, packet); |
| break; |
| case XFA_Element::List: |
| node = pdfium::MakeUnique<CXFA_List>(doc, packet); |
| break; |
| case XFA_Element::Source: |
| node = pdfium::MakeUnique<CXFA_Source>(doc, packet); |
| break; |
| case XFA_Element::Occur: |
| node = pdfium::MakeUnique<CXFA_Occur>(doc, packet); |
| break; |
| case XFA_Element::PickTrayByPDFSize: |
| node = pdfium::MakeUnique<CXFA_PickTrayByPDFSize>(doc, packet); |
| break; |
| case XFA_Element::MonthNames: |
| node = pdfium::MakeUnique<CXFA_MonthNames>(doc, packet); |
| break; |
| case XFA_Element::Severity: |
| node = pdfium::MakeUnique<CXFA_Severity>(doc, packet); |
| break; |
| case XFA_Element::GroupParent: |
| node = pdfium::MakeUnique<CXFA_GroupParent>(doc, packet); |
| break; |
| case XFA_Element::DocumentAssembly: |
| node = pdfium::MakeUnique<CXFA_DocumentAssembly>(doc, packet); |
| break; |
| case XFA_Element::NumberSymbol: |
| node = pdfium::MakeUnique<CXFA_NumberSymbol>(doc, packet); |
| break; |
| case XFA_Element::Tagged: |
| node = pdfium::MakeUnique<CXFA_Tagged>(doc, packet); |
| break; |
| case XFA_Element::Items: |
| node = pdfium::MakeUnique<CXFA_Items>(doc, packet); |
| break; |
| case XFA_Element::Unknown: |
| case XFA_Element::NodeList: |
| NOTREACHED(); |
| return nullptr; |
| } |
| if (!node || !node->IsValidInPacket(packet)) |
| return nullptr; |
| return node; |
| } |