diff --git a/ext/dom/php_dom.c b/ext/dom/php_dom.c index 9dcb79e39802..a1044ff83829 100644 --- a/ext/dom/php_dom.c +++ b/ext/dom/php_dom.c @@ -421,7 +421,7 @@ static HashTable* dom_get_debug_info_helper(zend_object *object, int *is_temp) / zend_string_addref(object_str); } - zend_hash_add(debug_info, string_key, &value); + zend_hash_update(debug_info, string_key, &value); } ZEND_HASH_FOREACH_END(); zend_string_release_ex(object_str, 0); diff --git a/ext/dom/php_dom.stub.php b/ext/dom/php_dom.stub.php index 72c63883fcce..94aad3e2370a 100644 --- a/ext/dom/php_dom.stub.php +++ b/ext/dom/php_dom.stub.php @@ -4,6 +4,23 @@ class DOMDocumentType extends DOMNode { + /** @readonly */ + public string $name; + + /** @readonly */ + public DOMNamedNodeMap $entities; + + /** @readonly */ + public DOMNamedNodeMap $notations; + + /** @readonly */ + public string $publicId; + + /** @readonly */ + public string $systemId; + + /** @readonly */ + public ?string $internalSubset; } class DOMCdataSection extends DOMText @@ -41,6 +58,54 @@ public function replaceWith(...$nodes): void; class DOMNode { + /** @readonly */ + public string $nodeName; + + /** @var string|null */ + public $nodeValue; + + /** @readonly */ + public int $nodeType; + + /** @readonly */ + public ?DOMNode $parentNode; + + /** @readonly */ + public DOMNodeList $childNodes; + + /** @readonly */ + public ?DOMNode $firstChild; + + /** @readonly */ + public ?DOMNode $lastChild; + + /** @readonly */ + public ?DOMNode $previousSibling; + + /** @readonly */ + public ?DOMNode $nextSibling; + + /** @readonly */ + public ?DOMNamedNodeMap $attributes; + + /** @readonly */ + public ?DOMDocument $ownerDocument; + + /** @readonly */ + public ?string $namespaceURI; + + /** @var string */ + public $prefix = ""; + + /** @readonly */ + public ?string $localName; + + /** @readonly */ + public ?string $baseURI; + + /** @var string */ + public $textContent = ""; + /** @return DOMNode|false */ public function appendChild(DOMNode $node) {} @@ -95,6 +160,29 @@ public function replaceChild(DOMNode $node, DOMNode $child) {} class DOMNameSpaceNode { + /** @readonly */ + public string $nodeName; + + /** @readonly */ + public ?string $nodeValue; + + /** @readonly */ + public int $nodeType; + + /** @readonly */ + public string $prefix; + + /** @readonly */ + public ?string $localName; + + /** @readonly */ + public ?string $namespaceURI; + + /** @readonly */ + public ?DOMDocument $ownerDocument; + + /** @readonly */ + public ?DOMNode $parentNode; } class DOMImplementation @@ -114,6 +202,15 @@ public function createDocument(?string $namespace = null, string $qualifiedName class DOMDocumentFragment extends DOMNode implements DOMParentNode { + /** @readonly */ + public ?DOMElement $firstElementChild; + + /** @readonly */ + public ?DOMElement $lastElementChild; + + /** @readonly */ + public int $childElementCount; + public function __construct() {} /** @return bool */ @@ -128,6 +225,9 @@ public function prepend(...$nodes): void {} class DOMNodeList implements IteratorAggregate, Countable { + /** @readonly */ + public int $length; + /** @return int|false */ public function count() {} @@ -139,6 +239,18 @@ public function item(int $index) {} class DOMCharacterData extends DOMNode implements DOMChildNode { + /** @readonly */ + public string $data; + + /** @readonly */ + public int $length; + + /** @readonly */ + public ?DOMElement $previousElementSibling; + + /** @readonly */ + public ?DOMElement $nextElementSibling; + /** @return bool */ public function appendData(string $data) {} @@ -168,6 +280,21 @@ public function after(...$nodes): void {} class DOMAttr extends DOMNode { + /** @readonly */ + public string $name; + + /** @readonly */ + public bool $specified = true; + + /** @readonly */ + public string $value; + + /** @readonly */ + public ?DOMElement $ownerElement; + + /** @readonly */ + public mixed $schemaTypeInfo = null; + public function __construct(string $name, string $value = "") {} /** @return bool */ @@ -176,6 +303,27 @@ public function isId() {} class DOMElement extends DOMNode implements DOMParentNode, DOMChildNode { + /** @readonly */ + public string $tagName; + + /** @readonly */ + public mixed $schemaTypeInfo = null; + + /** @readonly */ + public ?DOMElement $firstElementChild; + + /** @readonly */ + public ?DOMElement $lastElementChild; + + /** @readonly */ + public int $childElementCount; + + /** @readonly */ + public ?DOMElement $previousElementSibling; + + /** @readonly */ + public ?DOMElement $nextElementSibling; + public function __construct(string $qualifiedName, ?string $value = null, string $namespace = "") {} /** @return string */ @@ -252,6 +400,78 @@ public function prepend(...$nodes): void {} class DOMDocument extends DOMNode implements DOMParentNode { + /** @readonly */ + public ?DOMDocumentType $doctype; + + /** @readonly */ + public DOMImplementation $implementation; + + /** @readonly */ + public ?DOMElement $documentElement; + + /** + * @readonly + * @deprecated + */ + public ?string $actualEncoding; + + /** @var string|null */ + public $encoding; + + /** @readonly */ + public ?string $xmlEncoding; + + /** @var bool */ + public $standalone = false; + + /** @var bool */ + public $xmlStandalone = false; + + /** @var string|null */ + public $version; + + /** @var string|null */ + public $xmlVersion; + + /** @var bool */ + public $strictErrorChecking = false; + + /** @var string|null */ + public $documentURI; + + /** + * @readonly + * @deprecated + */ + public mixed $config = null; + + /** @var bool */ + public $formatOutput = false; + + /** @var bool */ + public $validateOnParse = false; + + /** @var bool */ + public $resolveExternals = false; + + /** @var bool */ + public $preserveWhiteSpace = false; + + /** @var bool */ + public $recover = false; + + /** @var bool */ + public $substituteEntities = false; + + /** @readonly */ + public ?DOMElement $firstElementChild; + + /** @readonly */ + public ?DOMElement $lastElementChild; + + /** @readonly */ + public int $childElementCount; + public function __construct(string $version = "1.0", string $encoding = "") {} /** @return DOMAttr|false */ @@ -366,6 +586,9 @@ final class DOMException extends Exception class DOMText extends DOMCharacterData { + /** @readonly */ + public string $wholeText; + public function __construct(string $data = "") {} /** @return bool */ @@ -383,6 +606,9 @@ public function splitText(int $offset) {} class DOMNamedNodeMap implements IteratorAggregate, Countable { + /** @readonly */ + public int $length; + /** @return DOMNode|null */ public function getNamedItem(string $qualifiedName) {} @@ -400,6 +626,23 @@ public function getIterator(): Iterator {} class DOMEntity extends DOMNode { + /** @readonly */ + public ?string $publicId; + + /** @readonly */ + public ?string $systemId; + + /** @readonly */ + public ?string $notationName; + + /** @readonly */ + public mixed $actualEncoding = null; + + /** @readonly */ + public mixed $encoding = null; + + /** @readonly */ + public mixed $version = null; } class DOMEntityReference extends DOMNode @@ -409,16 +652,33 @@ public function __construct(string $name) {} class DOMNotation extends DOMNode { + /** @readonly */ + public string $publicId; + + /** @readonly */ + public string $systemId; } class DOMProcessingInstruction extends DOMNode { + /** @readonly */ + public string $target; + + /** @var string */ + public $data = ""; + public function __construct(string $name, string $value = "") {} } #ifdef LIBXML_XPATH_ENABLED class DOMXPath { + /** @readonly */ + public DOMDocument $document; + + /** @var bool */ + public $registerNodeNamespaces = false; + public function __construct(DOMDocument $document, bool $registerNodeNS = true) {} /** @return mixed */ diff --git a/ext/dom/php_dom_arginfo.h b/ext/dom/php_dom_arginfo.h index b6e621b1bc7f..62f67e7e1bd2 100644 --- a/ext/dom/php_dom_arginfo.h +++ b/ext/dom/php_dom_arginfo.h @@ -1,5 +1,5 @@ /* This is a generated file, edit the .stub.php file instead. - * Stub hash: c41e6d58eb8b0bbdb07401c4f1eb92c6ba3d324c */ + * Stub hash: da7dc3118b701446f39e1b3375600923b3a1202e */ ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_dom_import_simplexml, 0, 1, DOMElement, 1) ZEND_ARG_TYPE_INFO(0, node, IS_OBJECT, 0) @@ -855,6 +855,44 @@ static zend_class_entry *register_class_DOMDocumentType(zend_class_entry *class_ INIT_CLASS_ENTRY(ce, "DOMDocumentType", class_DOMDocumentType_methods); class_entry = zend_register_internal_class_ex(&ce, class_entry_DOMNode); + zval property_name_default_value; + ZVAL_UNDEF(&property_name_default_value); + zend_string *property_name_name = zend_string_init("name", sizeof("name") - 1, 1); + zend_declare_typed_property(class_entry, property_name_name, &property_name_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING)); + zend_string_release(property_name_name); + + zend_string *property_entities_class_DOMNamedNodeMap = zend_string_init("DOMNamedNodeMap", sizeof("DOMNamedNodeMap")-1, 1); + zval property_entities_default_value; + ZVAL_UNDEF(&property_entities_default_value); + zend_string *property_entities_name = zend_string_init("entities", sizeof("entities") - 1, 1); + zend_declare_typed_property(class_entry, property_entities_name, &property_entities_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_entities_class_DOMNamedNodeMap, 0, 0)); + zend_string_release(property_entities_name); + + zend_string *property_notations_class_DOMNamedNodeMap = zend_string_init("DOMNamedNodeMap", sizeof("DOMNamedNodeMap")-1, 1); + zval property_notations_default_value; + ZVAL_UNDEF(&property_notations_default_value); + zend_string *property_notations_name = zend_string_init("notations", sizeof("notations") - 1, 1); + zend_declare_typed_property(class_entry, property_notations_name, &property_notations_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_notations_class_DOMNamedNodeMap, 0, 0)); + zend_string_release(property_notations_name); + + zval property_publicId_default_value; + ZVAL_UNDEF(&property_publicId_default_value); + zend_string *property_publicId_name = zend_string_init("publicId", sizeof("publicId") - 1, 1); + zend_declare_typed_property(class_entry, property_publicId_name, &property_publicId_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING)); + zend_string_release(property_publicId_name); + + zval property_systemId_default_value; + ZVAL_UNDEF(&property_systemId_default_value); + zend_string *property_systemId_name = zend_string_init("systemId", sizeof("systemId") - 1, 1); + zend_declare_typed_property(class_entry, property_systemId_name, &property_systemId_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING)); + zend_string_release(property_systemId_name); + + zval property_internalSubset_default_value; + ZVAL_UNDEF(&property_internalSubset_default_value); + zend_string *property_internalSubset_name = zend_string_init("internalSubset", sizeof("internalSubset") - 1, 1); + zend_declare_typed_property(class_entry, property_internalSubset_name, &property_internalSubset_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING|MAY_BE_NULL)); + zend_string_release(property_internalSubset_name); + return class_entry; } @@ -905,6 +943,110 @@ static zend_class_entry *register_class_DOMNode(void) INIT_CLASS_ENTRY(ce, "DOMNode", class_DOMNode_methods); class_entry = zend_register_internal_class_ex(&ce, NULL); + zval property_nodeName_default_value; + ZVAL_UNDEF(&property_nodeName_default_value); + zend_string *property_nodeName_name = zend_string_init("nodeName", sizeof("nodeName") - 1, 1); + zend_declare_typed_property(class_entry, property_nodeName_name, &property_nodeName_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING)); + zend_string_release(property_nodeName_name); + + zval property_nodeValue_default_value; + ZVAL_NULL(&property_nodeValue_default_value); + zend_string *property_nodeValue_name = zend_string_init("nodeValue", sizeof("nodeValue") - 1, 1); + zend_declare_property_ex(class_entry, property_nodeValue_name, &property_nodeValue_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_nodeValue_name); + + zval property_nodeType_default_value; + ZVAL_UNDEF(&property_nodeType_default_value); + zend_string *property_nodeType_name = zend_string_init("nodeType", sizeof("nodeType") - 1, 1); + zend_declare_typed_property(class_entry, property_nodeType_name, &property_nodeType_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG)); + zend_string_release(property_nodeType_name); + + zend_string *property_parentNode_class_DOMNode = zend_string_init("DOMNode", sizeof("DOMNode")-1, 1); + zval property_parentNode_default_value; + ZVAL_UNDEF(&property_parentNode_default_value); + zend_string *property_parentNode_name = zend_string_init("parentNode", sizeof("parentNode") - 1, 1); + zend_declare_typed_property(class_entry, property_parentNode_name, &property_parentNode_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_parentNode_class_DOMNode, 0, MAY_BE_NULL)); + zend_string_release(property_parentNode_name); + + zend_string *property_childNodes_class_DOMNodeList = zend_string_init("DOMNodeList", sizeof("DOMNodeList")-1, 1); + zval property_childNodes_default_value; + ZVAL_UNDEF(&property_childNodes_default_value); + zend_string *property_childNodes_name = zend_string_init("childNodes", sizeof("childNodes") - 1, 1); + zend_declare_typed_property(class_entry, property_childNodes_name, &property_childNodes_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_childNodes_class_DOMNodeList, 0, 0)); + zend_string_release(property_childNodes_name); + + zend_string *property_firstChild_class_DOMNode = zend_string_init("DOMNode", sizeof("DOMNode")-1, 1); + zval property_firstChild_default_value; + ZVAL_UNDEF(&property_firstChild_default_value); + zend_string *property_firstChild_name = zend_string_init("firstChild", sizeof("firstChild") - 1, 1); + zend_declare_typed_property(class_entry, property_firstChild_name, &property_firstChild_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_firstChild_class_DOMNode, 0, MAY_BE_NULL)); + zend_string_release(property_firstChild_name); + + zend_string *property_lastChild_class_DOMNode = zend_string_init("DOMNode", sizeof("DOMNode")-1, 1); + zval property_lastChild_default_value; + ZVAL_UNDEF(&property_lastChild_default_value); + zend_string *property_lastChild_name = zend_string_init("lastChild", sizeof("lastChild") - 1, 1); + zend_declare_typed_property(class_entry, property_lastChild_name, &property_lastChild_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_lastChild_class_DOMNode, 0, MAY_BE_NULL)); + zend_string_release(property_lastChild_name); + + zend_string *property_previousSibling_class_DOMNode = zend_string_init("DOMNode", sizeof("DOMNode")-1, 1); + zval property_previousSibling_default_value; + ZVAL_UNDEF(&property_previousSibling_default_value); + zend_string *property_previousSibling_name = zend_string_init("previousSibling", sizeof("previousSibling") - 1, 1); + zend_declare_typed_property(class_entry, property_previousSibling_name, &property_previousSibling_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_previousSibling_class_DOMNode, 0, MAY_BE_NULL)); + zend_string_release(property_previousSibling_name); + + zend_string *property_nextSibling_class_DOMNode = zend_string_init("DOMNode", sizeof("DOMNode")-1, 1); + zval property_nextSibling_default_value; + ZVAL_UNDEF(&property_nextSibling_default_value); + zend_string *property_nextSibling_name = zend_string_init("nextSibling", sizeof("nextSibling") - 1, 1); + zend_declare_typed_property(class_entry, property_nextSibling_name, &property_nextSibling_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_nextSibling_class_DOMNode, 0, MAY_BE_NULL)); + zend_string_release(property_nextSibling_name); + + zend_string *property_attributes_class_DOMNamedNodeMap = zend_string_init("DOMNamedNodeMap", sizeof("DOMNamedNodeMap")-1, 1); + zval property_attributes_default_value; + ZVAL_UNDEF(&property_attributes_default_value); + zend_string *property_attributes_name = zend_string_init("attributes", sizeof("attributes") - 1, 1); + zend_declare_typed_property(class_entry, property_attributes_name, &property_attributes_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_attributes_class_DOMNamedNodeMap, 0, MAY_BE_NULL)); + zend_string_release(property_attributes_name); + + zend_string *property_ownerDocument_class_DOMDocument = zend_string_init("DOMDocument", sizeof("DOMDocument")-1, 1); + zval property_ownerDocument_default_value; + ZVAL_UNDEF(&property_ownerDocument_default_value); + zend_string *property_ownerDocument_name = zend_string_init("ownerDocument", sizeof("ownerDocument") - 1, 1); + zend_declare_typed_property(class_entry, property_ownerDocument_name, &property_ownerDocument_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_ownerDocument_class_DOMDocument, 0, MAY_BE_NULL)); + zend_string_release(property_ownerDocument_name); + + zval property_namespaceURI_default_value; + ZVAL_UNDEF(&property_namespaceURI_default_value); + zend_string *property_namespaceURI_name = zend_string_init("namespaceURI", sizeof("namespaceURI") - 1, 1); + zend_declare_typed_property(class_entry, property_namespaceURI_name, &property_namespaceURI_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING|MAY_BE_NULL)); + zend_string_release(property_namespaceURI_name); + + zval property_prefix_default_value; + ZVAL_EMPTY_STRING(&property_prefix_default_value); + zend_string *property_prefix_name = zend_string_init("prefix", sizeof("prefix") - 1, 1); + zend_declare_property_ex(class_entry, property_prefix_name, &property_prefix_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_prefix_name); + + zval property_localName_default_value; + ZVAL_UNDEF(&property_localName_default_value); + zend_string *property_localName_name = zend_string_init("localName", sizeof("localName") - 1, 1); + zend_declare_typed_property(class_entry, property_localName_name, &property_localName_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING|MAY_BE_NULL)); + zend_string_release(property_localName_name); + + zval property_baseURI_default_value; + ZVAL_UNDEF(&property_baseURI_default_value); + zend_string *property_baseURI_name = zend_string_init("baseURI", sizeof("baseURI") - 1, 1); + zend_declare_typed_property(class_entry, property_baseURI_name, &property_baseURI_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING|MAY_BE_NULL)); + zend_string_release(property_baseURI_name); + + zval property_textContent_default_value; + ZVAL_EMPTY_STRING(&property_textContent_default_value); + zend_string *property_textContent_name = zend_string_init("textContent", sizeof("textContent") - 1, 1); + zend_declare_property_ex(class_entry, property_textContent_name, &property_textContent_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_textContent_name); + return class_entry; } @@ -915,6 +1057,56 @@ static zend_class_entry *register_class_DOMNameSpaceNode(void) INIT_CLASS_ENTRY(ce, "DOMNameSpaceNode", class_DOMNameSpaceNode_methods); class_entry = zend_register_internal_class_ex(&ce, NULL); + zval property_nodeName_default_value; + ZVAL_UNDEF(&property_nodeName_default_value); + zend_string *property_nodeName_name = zend_string_init("nodeName", sizeof("nodeName") - 1, 1); + zend_declare_typed_property(class_entry, property_nodeName_name, &property_nodeName_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING)); + zend_string_release(property_nodeName_name); + + zval property_nodeValue_default_value; + ZVAL_UNDEF(&property_nodeValue_default_value); + zend_string *property_nodeValue_name = zend_string_init("nodeValue", sizeof("nodeValue") - 1, 1); + zend_declare_typed_property(class_entry, property_nodeValue_name, &property_nodeValue_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING|MAY_BE_NULL)); + zend_string_release(property_nodeValue_name); + + zval property_nodeType_default_value; + ZVAL_UNDEF(&property_nodeType_default_value); + zend_string *property_nodeType_name = zend_string_init("nodeType", sizeof("nodeType") - 1, 1); + zend_declare_typed_property(class_entry, property_nodeType_name, &property_nodeType_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG)); + zend_string_release(property_nodeType_name); + + zval property_prefix_default_value; + ZVAL_UNDEF(&property_prefix_default_value); + zend_string *property_prefix_name = zend_string_init("prefix", sizeof("prefix") - 1, 1); + zend_declare_typed_property(class_entry, property_prefix_name, &property_prefix_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING)); + zend_string_release(property_prefix_name); + + zval property_localName_default_value; + ZVAL_UNDEF(&property_localName_default_value); + zend_string *property_localName_name = zend_string_init("localName", sizeof("localName") - 1, 1); + zend_declare_typed_property(class_entry, property_localName_name, &property_localName_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING|MAY_BE_NULL)); + zend_string_release(property_localName_name); + + zval property_namespaceURI_default_value; + ZVAL_UNDEF(&property_namespaceURI_default_value); + zend_string *property_namespaceURI_name = zend_string_init("namespaceURI", sizeof("namespaceURI") - 1, 1); + zend_declare_typed_property(class_entry, property_namespaceURI_name, &property_namespaceURI_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING|MAY_BE_NULL)); + zend_string_release(property_namespaceURI_name); + + zend_string *property_ownerDocument_class_DOMDocument = zend_string_init("DOMDocument", sizeof("DOMDocument")-1, 1); + zval property_ownerDocument_default_value; + ZVAL_UNDEF(&property_ownerDocument_default_value); + zend_string *property_ownerDocument_name = zend_string_init("ownerDocument", sizeof("ownerDocument") - 1, 1); + zend_declare_typed_property(class_entry, property_ownerDocument_name, &property_ownerDocument_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_ownerDocument_class_DOMDocument, 0, MAY_BE_NULL)); + zend_string_release(property_ownerDocument_name); + + zend_string *property_parentNode_class_DOMNode = zend_string_init("DOMNode", sizeof("DOMNode")-1, 1); + zval property_parentNode_default_value; + ZVAL_UNDEF(&property_parentNode_default_value); + zend_string *property_parentNode_name = zend_string_init("parentNode", sizeof("parentNode") - 1, 1); + zend_declare_typed_property(class_entry, property_parentNode_name, &property_parentNode_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_parentNode_class_DOMNode, 0, MAY_BE_NULL)); + zend_string_release(property_parentNode_name); + return class_entry; } @@ -936,6 +1128,26 @@ static zend_class_entry *register_class_DOMDocumentFragment(zend_class_entry *cl class_entry = zend_register_internal_class_ex(&ce, class_entry_DOMNode); zend_class_implements(class_entry, 1, class_entry_DOMParentNode); + zend_string *property_firstElementChild_class_DOMElement = zend_string_init("DOMElement", sizeof("DOMElement")-1, 1); + zval property_firstElementChild_default_value; + ZVAL_UNDEF(&property_firstElementChild_default_value); + zend_string *property_firstElementChild_name = zend_string_init("firstElementChild", sizeof("firstElementChild") - 1, 1); + zend_declare_typed_property(class_entry, property_firstElementChild_name, &property_firstElementChild_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_firstElementChild_class_DOMElement, 0, MAY_BE_NULL)); + zend_string_release(property_firstElementChild_name); + + zend_string *property_lastElementChild_class_DOMElement = zend_string_init("DOMElement", sizeof("DOMElement")-1, 1); + zval property_lastElementChild_default_value; + ZVAL_UNDEF(&property_lastElementChild_default_value); + zend_string *property_lastElementChild_name = zend_string_init("lastElementChild", sizeof("lastElementChild") - 1, 1); + zend_declare_typed_property(class_entry, property_lastElementChild_name, &property_lastElementChild_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_lastElementChild_class_DOMElement, 0, MAY_BE_NULL)); + zend_string_release(property_lastElementChild_name); + + zval property_childElementCount_default_value; + ZVAL_UNDEF(&property_childElementCount_default_value); + zend_string *property_childElementCount_name = zend_string_init("childElementCount", sizeof("childElementCount") - 1, 1); + zend_declare_typed_property(class_entry, property_childElementCount_name, &property_childElementCount_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG)); + zend_string_release(property_childElementCount_name); + return class_entry; } @@ -947,6 +1159,12 @@ static zend_class_entry *register_class_DOMNodeList(zend_class_entry *class_entr class_entry = zend_register_internal_class_ex(&ce, NULL); zend_class_implements(class_entry, 2, class_entry_IteratorAggregate, class_entry_Countable); + zval property_length_default_value; + ZVAL_UNDEF(&property_length_default_value); + zend_string *property_length_name = zend_string_init("length", sizeof("length") - 1, 1); + zend_declare_typed_property(class_entry, property_length_name, &property_length_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG)); + zend_string_release(property_length_name); + return class_entry; } @@ -958,6 +1176,32 @@ static zend_class_entry *register_class_DOMCharacterData(zend_class_entry *class class_entry = zend_register_internal_class_ex(&ce, class_entry_DOMNode); zend_class_implements(class_entry, 1, class_entry_DOMChildNode); + zval property_data_default_value; + ZVAL_UNDEF(&property_data_default_value); + zend_string *property_data_name = zend_string_init("data", sizeof("data") - 1, 1); + zend_declare_typed_property(class_entry, property_data_name, &property_data_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING)); + zend_string_release(property_data_name); + + zval property_length_default_value; + ZVAL_UNDEF(&property_length_default_value); + zend_string *property_length_name = zend_string_init("length", sizeof("length") - 1, 1); + zend_declare_typed_property(class_entry, property_length_name, &property_length_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG)); + zend_string_release(property_length_name); + + zend_string *property_previousElementSibling_class_DOMElement = zend_string_init("DOMElement", sizeof("DOMElement")-1, 1); + zval property_previousElementSibling_default_value; + ZVAL_UNDEF(&property_previousElementSibling_default_value); + zend_string *property_previousElementSibling_name = zend_string_init("previousElementSibling", sizeof("previousElementSibling") - 1, 1); + zend_declare_typed_property(class_entry, property_previousElementSibling_name, &property_previousElementSibling_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_previousElementSibling_class_DOMElement, 0, MAY_BE_NULL)); + zend_string_release(property_previousElementSibling_name); + + zend_string *property_nextElementSibling_class_DOMElement = zend_string_init("DOMElement", sizeof("DOMElement")-1, 1); + zval property_nextElementSibling_default_value; + ZVAL_UNDEF(&property_nextElementSibling_default_value); + zend_string *property_nextElementSibling_name = zend_string_init("nextElementSibling", sizeof("nextElementSibling") - 1, 1); + zend_declare_typed_property(class_entry, property_nextElementSibling_name, &property_nextElementSibling_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_nextElementSibling_class_DOMElement, 0, MAY_BE_NULL)); + zend_string_release(property_nextElementSibling_name); + return class_entry; } @@ -968,6 +1212,37 @@ static zend_class_entry *register_class_DOMAttr(zend_class_entry *class_entry_DO INIT_CLASS_ENTRY(ce, "DOMAttr", class_DOMAttr_methods); class_entry = zend_register_internal_class_ex(&ce, class_entry_DOMNode); + zval property_name_default_value; + ZVAL_UNDEF(&property_name_default_value); + zend_string *property_name_name = zend_string_init("name", sizeof("name") - 1, 1); + zend_declare_typed_property(class_entry, property_name_name, &property_name_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING)); + zend_string_release(property_name_name); + + zval property_specified_default_value; + ZVAL_BOOL(&property_specified_default_value, 1); + zend_string *property_specified_name = zend_string_init("specified", sizeof("specified") - 1, 1); + zend_declare_typed_property(class_entry, property_specified_name, &property_specified_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_BOOL)); + zend_string_release(property_specified_name); + + zval property_value_default_value; + ZVAL_UNDEF(&property_value_default_value); + zend_string *property_value_name = zend_string_init("value", sizeof("value") - 1, 1); + zend_declare_typed_property(class_entry, property_value_name, &property_value_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING)); + zend_string_release(property_value_name); + + zend_string *property_ownerElement_class_DOMElement = zend_string_init("DOMElement", sizeof("DOMElement")-1, 1); + zval property_ownerElement_default_value; + ZVAL_UNDEF(&property_ownerElement_default_value); + zend_string *property_ownerElement_name = zend_string_init("ownerElement", sizeof("ownerElement") - 1, 1); + zend_declare_typed_property(class_entry, property_ownerElement_name, &property_ownerElement_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_ownerElement_class_DOMElement, 0, MAY_BE_NULL)); + zend_string_release(property_ownerElement_name); + + zval property_schemaTypeInfo_default_value; + ZVAL_NULL(&property_schemaTypeInfo_default_value); + zend_string *property_schemaTypeInfo_name = zend_string_init("schemaTypeInfo", sizeof("schemaTypeInfo") - 1, 1); + zend_declare_typed_property(class_entry, property_schemaTypeInfo_name, &property_schemaTypeInfo_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_ANY)); + zend_string_release(property_schemaTypeInfo_name); + return class_entry; } @@ -979,6 +1254,52 @@ static zend_class_entry *register_class_DOMElement(zend_class_entry *class_entry class_entry = zend_register_internal_class_ex(&ce, class_entry_DOMNode); zend_class_implements(class_entry, 2, class_entry_DOMParentNode, class_entry_DOMChildNode); + zval property_tagName_default_value; + ZVAL_UNDEF(&property_tagName_default_value); + zend_string *property_tagName_name = zend_string_init("tagName", sizeof("tagName") - 1, 1); + zend_declare_typed_property(class_entry, property_tagName_name, &property_tagName_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING)); + zend_string_release(property_tagName_name); + + zval property_schemaTypeInfo_default_value; + ZVAL_NULL(&property_schemaTypeInfo_default_value); + zend_string *property_schemaTypeInfo_name = zend_string_init("schemaTypeInfo", sizeof("schemaTypeInfo") - 1, 1); + zend_declare_typed_property(class_entry, property_schemaTypeInfo_name, &property_schemaTypeInfo_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_ANY)); + zend_string_release(property_schemaTypeInfo_name); + + zend_string *property_firstElementChild_class_DOMElement = zend_string_init("DOMElement", sizeof("DOMElement")-1, 1); + zval property_firstElementChild_default_value; + ZVAL_UNDEF(&property_firstElementChild_default_value); + zend_string *property_firstElementChild_name = zend_string_init("firstElementChild", sizeof("firstElementChild") - 1, 1); + zend_declare_typed_property(class_entry, property_firstElementChild_name, &property_firstElementChild_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_firstElementChild_class_DOMElement, 0, MAY_BE_NULL)); + zend_string_release(property_firstElementChild_name); + + zend_string *property_lastElementChild_class_DOMElement = zend_string_init("DOMElement", sizeof("DOMElement")-1, 1); + zval property_lastElementChild_default_value; + ZVAL_UNDEF(&property_lastElementChild_default_value); + zend_string *property_lastElementChild_name = zend_string_init("lastElementChild", sizeof("lastElementChild") - 1, 1); + zend_declare_typed_property(class_entry, property_lastElementChild_name, &property_lastElementChild_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_lastElementChild_class_DOMElement, 0, MAY_BE_NULL)); + zend_string_release(property_lastElementChild_name); + + zval property_childElementCount_default_value; + ZVAL_UNDEF(&property_childElementCount_default_value); + zend_string *property_childElementCount_name = zend_string_init("childElementCount", sizeof("childElementCount") - 1, 1); + zend_declare_typed_property(class_entry, property_childElementCount_name, &property_childElementCount_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG)); + zend_string_release(property_childElementCount_name); + + zend_string *property_previousElementSibling_class_DOMElement = zend_string_init("DOMElement", sizeof("DOMElement")-1, 1); + zval property_previousElementSibling_default_value; + ZVAL_UNDEF(&property_previousElementSibling_default_value); + zend_string *property_previousElementSibling_name = zend_string_init("previousElementSibling", sizeof("previousElementSibling") - 1, 1); + zend_declare_typed_property(class_entry, property_previousElementSibling_name, &property_previousElementSibling_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_previousElementSibling_class_DOMElement, 0, MAY_BE_NULL)); + zend_string_release(property_previousElementSibling_name); + + zend_string *property_nextElementSibling_class_DOMElement = zend_string_init("DOMElement", sizeof("DOMElement")-1, 1); + zval property_nextElementSibling_default_value; + ZVAL_UNDEF(&property_nextElementSibling_default_value); + zend_string *property_nextElementSibling_name = zend_string_init("nextElementSibling", sizeof("nextElementSibling") - 1, 1); + zend_declare_typed_property(class_entry, property_nextElementSibling_name, &property_nextElementSibling_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_nextElementSibling_class_DOMElement, 0, MAY_BE_NULL)); + zend_string_release(property_nextElementSibling_name); + return class_entry; } @@ -990,6 +1311,143 @@ static zend_class_entry *register_class_DOMDocument(zend_class_entry *class_entr class_entry = zend_register_internal_class_ex(&ce, class_entry_DOMNode); zend_class_implements(class_entry, 1, class_entry_DOMParentNode); + zend_string *property_doctype_class_DOMDocumentType = zend_string_init("DOMDocumentType", sizeof("DOMDocumentType")-1, 1); + zval property_doctype_default_value; + ZVAL_UNDEF(&property_doctype_default_value); + zend_string *property_doctype_name = zend_string_init("doctype", sizeof("doctype") - 1, 1); + zend_declare_typed_property(class_entry, property_doctype_name, &property_doctype_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_doctype_class_DOMDocumentType, 0, MAY_BE_NULL)); + zend_string_release(property_doctype_name); + + zend_string *property_implementation_class_DOMImplementation = zend_string_init("DOMImplementation", sizeof("DOMImplementation")-1, 1); + zval property_implementation_default_value; + ZVAL_UNDEF(&property_implementation_default_value); + zend_string *property_implementation_name = zend_string_init("implementation", sizeof("implementation") - 1, 1); + zend_declare_typed_property(class_entry, property_implementation_name, &property_implementation_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_implementation_class_DOMImplementation, 0, 0)); + zend_string_release(property_implementation_name); + + zend_string *property_documentElement_class_DOMElement = zend_string_init("DOMElement", sizeof("DOMElement")-1, 1); + zval property_documentElement_default_value; + ZVAL_UNDEF(&property_documentElement_default_value); + zend_string *property_documentElement_name = zend_string_init("documentElement", sizeof("documentElement") - 1, 1); + zend_declare_typed_property(class_entry, property_documentElement_name, &property_documentElement_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_documentElement_class_DOMElement, 0, MAY_BE_NULL)); + zend_string_release(property_documentElement_name); + + zval property_actualEncoding_default_value; + ZVAL_UNDEF(&property_actualEncoding_default_value); + zend_string *property_actualEncoding_name = zend_string_init("actualEncoding", sizeof("actualEncoding") - 1, 1); + zend_declare_typed_property(class_entry, property_actualEncoding_name, &property_actualEncoding_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING|MAY_BE_NULL)); + zend_string_release(property_actualEncoding_name); + + zval property_encoding_default_value; + ZVAL_NULL(&property_encoding_default_value); + zend_string *property_encoding_name = zend_string_init("encoding", sizeof("encoding") - 1, 1); + zend_declare_property_ex(class_entry, property_encoding_name, &property_encoding_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_encoding_name); + + zval property_xmlEncoding_default_value; + ZVAL_UNDEF(&property_xmlEncoding_default_value); + zend_string *property_xmlEncoding_name = zend_string_init("xmlEncoding", sizeof("xmlEncoding") - 1, 1); + zend_declare_typed_property(class_entry, property_xmlEncoding_name, &property_xmlEncoding_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING|MAY_BE_NULL)); + zend_string_release(property_xmlEncoding_name); + + zval property_standalone_default_value; + ZVAL_BOOL(&property_standalone_default_value, 0); + zend_string *property_standalone_name = zend_string_init("standalone", sizeof("standalone") - 1, 1); + zend_declare_property_ex(class_entry, property_standalone_name, &property_standalone_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_standalone_name); + + zval property_xmlStandalone_default_value; + ZVAL_BOOL(&property_xmlStandalone_default_value, 0); + zend_string *property_xmlStandalone_name = zend_string_init("xmlStandalone", sizeof("xmlStandalone") - 1, 1); + zend_declare_property_ex(class_entry, property_xmlStandalone_name, &property_xmlStandalone_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_xmlStandalone_name); + + zval property_version_default_value; + ZVAL_NULL(&property_version_default_value); + zend_string *property_version_name = zend_string_init("version", sizeof("version") - 1, 1); + zend_declare_property_ex(class_entry, property_version_name, &property_version_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_version_name); + + zval property_xmlVersion_default_value; + ZVAL_NULL(&property_xmlVersion_default_value); + zend_string *property_xmlVersion_name = zend_string_init("xmlVersion", sizeof("xmlVersion") - 1, 1); + zend_declare_property_ex(class_entry, property_xmlVersion_name, &property_xmlVersion_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_xmlVersion_name); + + zval property_strictErrorChecking_default_value; + ZVAL_BOOL(&property_strictErrorChecking_default_value, 0); + zend_string *property_strictErrorChecking_name = zend_string_init("strictErrorChecking", sizeof("strictErrorChecking") - 1, 1); + zend_declare_property_ex(class_entry, property_strictErrorChecking_name, &property_strictErrorChecking_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_strictErrorChecking_name); + + zval property_documentURI_default_value; + ZVAL_NULL(&property_documentURI_default_value); + zend_string *property_documentURI_name = zend_string_init("documentURI", sizeof("documentURI") - 1, 1); + zend_declare_property_ex(class_entry, property_documentURI_name, &property_documentURI_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_documentURI_name); + + zval property_config_default_value; + ZVAL_NULL(&property_config_default_value); + zend_string *property_config_name = zend_string_init("config", sizeof("config") - 1, 1); + zend_declare_typed_property(class_entry, property_config_name, &property_config_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_ANY)); + zend_string_release(property_config_name); + + zval property_formatOutput_default_value; + ZVAL_BOOL(&property_formatOutput_default_value, 0); + zend_string *property_formatOutput_name = zend_string_init("formatOutput", sizeof("formatOutput") - 1, 1); + zend_declare_property_ex(class_entry, property_formatOutput_name, &property_formatOutput_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_formatOutput_name); + + zval property_validateOnParse_default_value; + ZVAL_BOOL(&property_validateOnParse_default_value, 0); + zend_string *property_validateOnParse_name = zend_string_init("validateOnParse", sizeof("validateOnParse") - 1, 1); + zend_declare_property_ex(class_entry, property_validateOnParse_name, &property_validateOnParse_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_validateOnParse_name); + + zval property_resolveExternals_default_value; + ZVAL_BOOL(&property_resolveExternals_default_value, 0); + zend_string *property_resolveExternals_name = zend_string_init("resolveExternals", sizeof("resolveExternals") - 1, 1); + zend_declare_property_ex(class_entry, property_resolveExternals_name, &property_resolveExternals_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_resolveExternals_name); + + zval property_preserveWhiteSpace_default_value; + ZVAL_BOOL(&property_preserveWhiteSpace_default_value, 0); + zend_string *property_preserveWhiteSpace_name = zend_string_init("preserveWhiteSpace", sizeof("preserveWhiteSpace") - 1, 1); + zend_declare_property_ex(class_entry, property_preserveWhiteSpace_name, &property_preserveWhiteSpace_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_preserveWhiteSpace_name); + + zval property_recover_default_value; + ZVAL_BOOL(&property_recover_default_value, 0); + zend_string *property_recover_name = zend_string_init("recover", sizeof("recover") - 1, 1); + zend_declare_property_ex(class_entry, property_recover_name, &property_recover_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_recover_name); + + zval property_substituteEntities_default_value; + ZVAL_BOOL(&property_substituteEntities_default_value, 0); + zend_string *property_substituteEntities_name = zend_string_init("substituteEntities", sizeof("substituteEntities") - 1, 1); + zend_declare_property_ex(class_entry, property_substituteEntities_name, &property_substituteEntities_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_substituteEntities_name); + + zend_string *property_firstElementChild_class_DOMElement = zend_string_init("DOMElement", sizeof("DOMElement")-1, 1); + zval property_firstElementChild_default_value; + ZVAL_UNDEF(&property_firstElementChild_default_value); + zend_string *property_firstElementChild_name = zend_string_init("firstElementChild", sizeof("firstElementChild") - 1, 1); + zend_declare_typed_property(class_entry, property_firstElementChild_name, &property_firstElementChild_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_firstElementChild_class_DOMElement, 0, MAY_BE_NULL)); + zend_string_release(property_firstElementChild_name); + + zend_string *property_lastElementChild_class_DOMElement = zend_string_init("DOMElement", sizeof("DOMElement")-1, 1); + zval property_lastElementChild_default_value; + ZVAL_UNDEF(&property_lastElementChild_default_value); + zend_string *property_lastElementChild_name = zend_string_init("lastElementChild", sizeof("lastElementChild") - 1, 1); + zend_declare_typed_property(class_entry, property_lastElementChild_name, &property_lastElementChild_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_lastElementChild_class_DOMElement, 0, MAY_BE_NULL)); + zend_string_release(property_lastElementChild_name); + + zval property_childElementCount_default_value; + ZVAL_UNDEF(&property_childElementCount_default_value); + zend_string *property_childElementCount_name = zend_string_init("childElementCount", sizeof("childElementCount") - 1, 1); + zend_declare_typed_property(class_entry, property_childElementCount_name, &property_childElementCount_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG)); + zend_string_release(property_childElementCount_name); + return class_entry; } @@ -1017,6 +1475,12 @@ static zend_class_entry *register_class_DOMText(zend_class_entry *class_entry_DO INIT_CLASS_ENTRY(ce, "DOMText", class_DOMText_methods); class_entry = zend_register_internal_class_ex(&ce, class_entry_DOMCharacterData); + zval property_wholeText_default_value; + ZVAL_UNDEF(&property_wholeText_default_value); + zend_string *property_wholeText_name = zend_string_init("wholeText", sizeof("wholeText") - 1, 1); + zend_declare_typed_property(class_entry, property_wholeText_name, &property_wholeText_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING)); + zend_string_release(property_wholeText_name); + return class_entry; } @@ -1028,6 +1492,12 @@ static zend_class_entry *register_class_DOMNamedNodeMap(zend_class_entry *class_ class_entry = zend_register_internal_class_ex(&ce, NULL); zend_class_implements(class_entry, 2, class_entry_IteratorAggregate, class_entry_Countable); + zval property_length_default_value; + ZVAL_UNDEF(&property_length_default_value); + zend_string *property_length_name = zend_string_init("length", sizeof("length") - 1, 1); + zend_declare_typed_property(class_entry, property_length_name, &property_length_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_LONG)); + zend_string_release(property_length_name); + return class_entry; } @@ -1038,6 +1508,42 @@ static zend_class_entry *register_class_DOMEntity(zend_class_entry *class_entry_ INIT_CLASS_ENTRY(ce, "DOMEntity", class_DOMEntity_methods); class_entry = zend_register_internal_class_ex(&ce, class_entry_DOMNode); + zval property_publicId_default_value; + ZVAL_UNDEF(&property_publicId_default_value); + zend_string *property_publicId_name = zend_string_init("publicId", sizeof("publicId") - 1, 1); + zend_declare_typed_property(class_entry, property_publicId_name, &property_publicId_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING|MAY_BE_NULL)); + zend_string_release(property_publicId_name); + + zval property_systemId_default_value; + ZVAL_UNDEF(&property_systemId_default_value); + zend_string *property_systemId_name = zend_string_init("systemId", sizeof("systemId") - 1, 1); + zend_declare_typed_property(class_entry, property_systemId_name, &property_systemId_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING|MAY_BE_NULL)); + zend_string_release(property_systemId_name); + + zval property_notationName_default_value; + ZVAL_UNDEF(&property_notationName_default_value); + zend_string *property_notationName_name = zend_string_init("notationName", sizeof("notationName") - 1, 1); + zend_declare_typed_property(class_entry, property_notationName_name, &property_notationName_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING|MAY_BE_NULL)); + zend_string_release(property_notationName_name); + + zval property_actualEncoding_default_value; + ZVAL_NULL(&property_actualEncoding_default_value); + zend_string *property_actualEncoding_name = zend_string_init("actualEncoding", sizeof("actualEncoding") - 1, 1); + zend_declare_typed_property(class_entry, property_actualEncoding_name, &property_actualEncoding_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_ANY)); + zend_string_release(property_actualEncoding_name); + + zval property_encoding_default_value; + ZVAL_NULL(&property_encoding_default_value); + zend_string *property_encoding_name = zend_string_init("encoding", sizeof("encoding") - 1, 1); + zend_declare_typed_property(class_entry, property_encoding_name, &property_encoding_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_ANY)); + zend_string_release(property_encoding_name); + + zval property_version_default_value; + ZVAL_NULL(&property_version_default_value); + zend_string *property_version_name = zend_string_init("version", sizeof("version") - 1, 1); + zend_declare_typed_property(class_entry, property_version_name, &property_version_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_ANY)); + zend_string_release(property_version_name); + return class_entry; } @@ -1058,6 +1564,18 @@ static zend_class_entry *register_class_DOMNotation(zend_class_entry *class_entr INIT_CLASS_ENTRY(ce, "DOMNotation", class_DOMNotation_methods); class_entry = zend_register_internal_class_ex(&ce, class_entry_DOMNode); + zval property_publicId_default_value; + ZVAL_UNDEF(&property_publicId_default_value); + zend_string *property_publicId_name = zend_string_init("publicId", sizeof("publicId") - 1, 1); + zend_declare_typed_property(class_entry, property_publicId_name, &property_publicId_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING)); + zend_string_release(property_publicId_name); + + zval property_systemId_default_value; + ZVAL_UNDEF(&property_systemId_default_value); + zend_string *property_systemId_name = zend_string_init("systemId", sizeof("systemId") - 1, 1); + zend_declare_typed_property(class_entry, property_systemId_name, &property_systemId_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING)); + zend_string_release(property_systemId_name); + return class_entry; } @@ -1068,6 +1586,18 @@ static zend_class_entry *register_class_DOMProcessingInstruction(zend_class_entr INIT_CLASS_ENTRY(ce, "DOMProcessingInstruction", class_DOMProcessingInstruction_methods); class_entry = zend_register_internal_class_ex(&ce, class_entry_DOMNode); + zval property_target_default_value; + ZVAL_UNDEF(&property_target_default_value); + zend_string *property_target_name = zend_string_init("target", sizeof("target") - 1, 1); + zend_declare_typed_property(class_entry, property_target_name, &property_target_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_MASK(MAY_BE_STRING)); + zend_string_release(property_target_name); + + zval property_data_default_value; + ZVAL_EMPTY_STRING(&property_data_default_value); + zend_string *property_data_name = zend_string_init("data", sizeof("data") - 1, 1); + zend_declare_property_ex(class_entry, property_data_name, &property_data_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_data_name); + return class_entry; } @@ -1078,5 +1608,18 @@ static zend_class_entry *register_class_DOMXPath(void) INIT_CLASS_ENTRY(ce, "DOMXPath", class_DOMXPath_methods); class_entry = zend_register_internal_class_ex(&ce, NULL); + zend_string *property_document_class_DOMDocument = zend_string_init("DOMDocument", sizeof("DOMDocument")-1, 1); + zval property_document_default_value; + ZVAL_UNDEF(&property_document_default_value); + zend_string *property_document_name = zend_string_init("document", sizeof("document") - 1, 1); + zend_declare_typed_property(class_entry, property_document_name, &property_document_default_value, ZEND_ACC_PUBLIC, NULL, (zend_type) ZEND_TYPE_INIT_CLASS(property_document_class_DOMDocument, 0, 0)); + zend_string_release(property_document_name); + + zval property_registerNodeNamespaces_default_value; + ZVAL_BOOL(&property_registerNodeNamespaces_default_value, 0); + zend_string *property_registerNodeNamespaces_name = zend_string_init("registerNodeNamespaces", sizeof("registerNodeNamespaces") - 1, 1); + zend_declare_property_ex(class_entry, property_registerNodeNamespaces_name, &property_registerNodeNamespaces_default_value, ZEND_ACC_PUBLIC, NULL); + zend_string_release(property_registerNodeNamespaces_name); + return class_entry; } diff --git a/ext/dom/tests/DOMDocumentFragment_construct_basic_002.phpt b/ext/dom/tests/DOMDocumentFragment_construct_basic_002.phpt index 0d734452e856..ff97c0559d77 100644 --- a/ext/dom/tests/DOMDocumentFragment_construct_basic_002.phpt +++ b/ext/dom/tests/DOMDocumentFragment_construct_basic_002.phpt @@ -11,6 +11,12 @@ $fragment = new DOMDocumentFragment(); $fragment->__construct(); var_dump($fragment); ?> ---EXPECTF-- -object(DOMDocumentFragment)#%d (%d) { +--EXPECT-- +object(DOMDocumentFragment)#1 (3) { + ["nodeValue"]=> + NULL + ["prefix"]=> + string(0) "" + ["textContent"]=> + string(0) "" } diff --git a/ext/dom/tests/DOMDocument_implementationRead_basic.phpt b/ext/dom/tests/DOMDocument_implementationRead_basic.phpt index 98da11ca2d49..7ed43a5f4f2e 100644 --- a/ext/dom/tests/DOMDocument_implementationRead_basic.phpt +++ b/ext/dom/tests/DOMDocument_implementationRead_basic.phpt @@ -15,6 +15,6 @@ var_dump($doc->implementation); ?> ---EXPECTF-- -object(DOMImplementation)#%d (0) { +--EXPECT-- +object(DOMImplementation)#2 (0) { } diff --git a/ext/dom/tests/bug55700.phpt b/ext/dom/tests/bug55700.phpt index 9e00beb53e8b..9b8b65856ee5 100644 --- a/ext/dom/tests/bug55700.phpt +++ b/ext/dom/tests/bug55700.phpt @@ -33,8 +33,8 @@ bool(false) bool(true) 1 object(DOMXPath)#4 (2) { - ["document"]=> - string(22) "(object value omitted)" ["registerNodeNamespaces"]=> bool(true) + ["document"]=> + string(22) "(object value omitted)" } diff --git a/ext/dom/tests/bug69846.phpt b/ext/dom/tests/bug69846.phpt index a47d30a0576e..3f3618bed16f 100644 --- a/ext/dom/tests/bug69846.phpt +++ b/ext/dom/tests/bug69846.phpt @@ -31,6 +31,14 @@ foreach ($dataNodes AS $node) { --EXPECTF-- int(3) object(DOMText)#%d (21) { + ["nodeValue"]=> + string(3) " + " + ["prefix"]=> + string(0) "" + ["textContent"]=> + string(3) " + " ["wholeText"]=> string(3) " " @@ -45,9 +53,6 @@ object(DOMText)#%d (21) { NULL ["nodeName"]=> string(5) "#text" - ["nodeValue"]=> - string(3) " - " ["nodeType"]=> int(3) ["parentNode"]=> @@ -68,21 +73,30 @@ object(DOMText)#%d (21) { string(22) "(object value omitted)" ["namespaceURI"]=> NULL - ["prefix"]=> - string(0) "" ["localName"]=> NULL ["baseURI"]=> NULL - ["textContent"]=> - string(3) " - " } object(DOMElement)#%d (23) { - ["tagName"]=> - string(5) "form1" + ["nodeValue"]=> + string(39) " + Value A + Value B + Value C + " + ["prefix"]=> + string(0) "" + ["textContent"]=> + string(39) " + Value A + Value B + Value C + " ["schemaTypeInfo"]=> NULL + ["tagName"]=> + string(5) "form1" ["firstElementChild"]=> string(22) "(object value omitted)" ["lastElementChild"]=> @@ -95,12 +109,6 @@ object(DOMElement)#%d (23) { NULL ["nodeName"]=> string(5) "form1" - ["nodeValue"]=> - string(39) " - Value A - Value B - Value C - " ["nodeType"]=> int(1) ["parentNode"]=> @@ -121,20 +129,20 @@ object(DOMElement)#%d (23) { string(22) "(object value omitted)" ["namespaceURI"]=> NULL - ["prefix"]=> - string(0) "" ["localName"]=> string(5) "form1" ["baseURI"]=> NULL - ["textContent"]=> - string(39) " - Value A - Value B - Value C - " } object(DOMText)#%d (21) { + ["nodeValue"]=> + string(1) " +" + ["prefix"]=> + string(0) "" + ["textContent"]=> + string(1) " +" ["wholeText"]=> string(1) " " @@ -149,9 +157,6 @@ object(DOMText)#%d (21) { NULL ["nodeName"]=> string(5) "#text" - ["nodeValue"]=> - string(1) " -" ["nodeType"]=> int(3) ["parentNode"]=> @@ -172,13 +177,8 @@ object(DOMText)#%d (21) { string(22) "(object value omitted)" ["namespaceURI"]=> NULL - ["prefix"]=> - string(0) "" ["localName"]=> NULL ["baseURI"]=> NULL - ["textContent"]=> - string(1) " -" } diff --git a/ext/dom/tests/domobject_debug_handler.phpt b/ext/dom/tests/domobject_debug_handler.phpt index f1ad4efc5016..85ca0170977a 100644 --- a/ext/dom/tests/domobject_debug_handler.phpt +++ b/ext/dom/tests/domobject_debug_handler.phpt @@ -17,16 +17,12 @@ print_r($d); --EXPECTF-- DOMDocument Object ( - [dynamicProperty] => stdClass Object - ( - ) + [nodeValue] => + [prefix] => + [textContent] => + foobar - [doctype] => - [implementation] => (object value omitted) - [documentElement] => (object value omitted) - [actualEncoding] => [encoding] => - [xmlEncoding] => [standalone] => 1 [xmlStandalone] => 1 [version] => 1.0 @@ -40,11 +36,19 @@ DOMDocument Object [preserveWhiteSpace] => 1 [recover] => [substituteEntities] => + [dynamicProperty] => stdClass Object + ( + ) + + [doctype] => + [implementation] => (object value omitted) + [documentElement] => (object value omitted) + [actualEncoding] => + [xmlEncoding] => [firstElementChild] => (object value omitted) [lastElementChild] => (object value omitted) [childElementCount] => 1 [nodeName] => #document - [nodeValue] => [nodeType] => 9 [parentNode] => [childNodes] => (object value omitted) @@ -55,10 +59,6 @@ DOMDocument Object [attributes] => [ownerDocument] => [namespaceURI] => - [prefix] => [localName] => [baseURI] => %s - [textContent] => - foobar - )