1 /* 2 +----------------------------------------------------------------------+ 3 | Copyright (c) The PHP Group | 4 +----------------------------------------------------------------------+ 5 | This source file is subject to version 3.01 of the PHP license, | 6 | that is bundled with this package in the file LICENSE, and is | 7 | available through the world-wide-web at the following url: | 8 | https://www.php.net/license/3_01.txt | 9 | If you did not receive a copy of the PHP license and are unable to | 10 | obtain it through the world-wide-web, please send a note to | 11 | license@php.net so we can mail you a copy immediately. | 12 +----------------------------------------------------------------------+ 13 | Authors: Christian Stocker <chregu@php.net> | 14 | Rob Richards <rrichards@php.net> | 15 +----------------------------------------------------------------------+ 16 */ 17 18 #ifndef DOM_PROPERTIES_H 19 #define DOM_PROPERTIES_H 20 21 /* attr properties */ 22 zend_result dom_attr_name_read(dom_object *obj, zval *retval); 23 zend_result dom_attr_specified_read(dom_object *obj, zval *retval); 24 zend_result dom_attr_value_read(dom_object *obj, zval *retval); 25 zend_result dom_attr_value_write(dom_object *obj, zval *newval); 26 zend_result dom_attr_owner_element_read(dom_object *obj, zval *retval); 27 zend_result dom_attr_schema_type_info_read(dom_object *obj, zval *retval); 28 29 /* characterdata properties */ 30 zend_result dom_characterdata_data_read(dom_object *obj, zval *retval); 31 zend_result dom_characterdata_data_write(dom_object *obj, zval *newval); 32 zend_result dom_characterdata_length_read(dom_object *obj, zval *retval); 33 34 /* document properties */ 35 zend_result dom_document_doctype_read(dom_object *obj, zval *retval); 36 zend_result dom_document_implementation_read(dom_object *obj, zval *retval); 37 zend_result dom_modern_document_implementation_read(dom_object *obj, zval *retval); 38 zend_result dom_document_document_element_read(dom_object *obj, zval *retval); 39 zend_result dom_document_actual_encoding_read(dom_object *obj, zval *retval); 40 zend_result dom_document_actual_encoding_write(dom_object *obj, zval *newval); 41 zend_result dom_document_encoding_read(dom_object *obj, zval *retval); 42 zend_result dom_document_encoding_write(dom_object *obj, zval *newval); 43 zend_result dom_document_standalone_read(dom_object *obj, zval *retval); 44 zend_result dom_document_standalone_write(dom_object *obj, zval *newval); 45 zend_result dom_document_version_read(dom_object *obj, zval *retval); 46 zend_result dom_document_version_write(dom_object *obj, zval *newval); 47 zend_result dom_document_strict_error_checking_read(dom_object *obj, zval *retval); 48 zend_result dom_document_strict_error_checking_write(dom_object *obj, zval *newval); 49 zend_result dom_document_document_uri_read(dom_object *obj, zval *retval); 50 zend_result dom_document_document_uri_write(dom_object *obj, zval *newval); 51 zend_result dom_document_config_read(dom_object *obj, zval *retval); 52 zend_result dom_document_format_output_read(dom_object *obj, zval *retval); 53 zend_result dom_document_format_output_write(dom_object *obj, zval *newval); 54 zend_result dom_document_validate_on_parse_read(dom_object *obj, zval *retval); 55 zend_result dom_document_validate_on_parse_write(dom_object *obj, zval *newval); 56 zend_result dom_document_resolve_externals_read(dom_object *obj, zval *retval); 57 zend_result dom_document_resolve_externals_write(dom_object *obj, zval *newval); 58 zend_result dom_document_preserve_whitespace_read(dom_object *obj, zval *retval); 59 zend_result dom_document_preserve_whitespace_write(dom_object *obj, zval *newval); 60 zend_result dom_document_recover_read(dom_object *obj, zval *retval); 61 zend_result dom_document_recover_write(dom_object *obj, zval *newval); 62 zend_result dom_document_substitue_entities_read(dom_object *obj, zval *retval); 63 zend_result dom_document_substitue_entities_write(dom_object *obj, zval *newval); 64 65 /* html5 document properties */ 66 zend_result dom_html_document_encoding_write(dom_object *obj, zval *retval); 67 68 /* documenttype properties */ 69 zend_result dom_documenttype_name_read(dom_object *obj, zval *retval); 70 zend_result dom_documenttype_entities_read(dom_object *obj, zval *retval); 71 zend_result dom_documenttype_notations_read(dom_object *obj, zval *retval); 72 zend_result dom_documenttype_public_id_read(dom_object *obj, zval *retval); 73 zend_result dom_documenttype_system_id_read(dom_object *obj, zval *retval); 74 zend_result dom_documenttype_internal_subset_read(dom_object *obj, zval *retval); 75 76 /* element properties */ 77 zend_result dom_element_tag_name_read(dom_object *obj, zval *retval); 78 zend_result dom_element_class_name_read(dom_object *obj, zval *retval); 79 zend_result dom_element_class_name_write(dom_object *obj, zval *newval); 80 zend_result dom_element_id_read(dom_object *obj, zval *retval); 81 zend_result dom_element_id_write(dom_object *obj, zval *newval); 82 zend_result dom_element_schema_type_info_read(dom_object *obj, zval *retval); 83 84 /* entity properties */ 85 zend_result dom_entity_public_id_read(dom_object *obj, zval *retval); 86 zend_result dom_entity_system_id_read(dom_object *obj, zval *retval); 87 zend_result dom_entity_notation_name_read(dom_object *obj, zval *retval); 88 zend_result dom_entity_actual_encoding_read(dom_object *obj, zval *retval); 89 zend_result dom_entity_encoding_read(dom_object *obj, zval *retval); 90 zend_result dom_entity_version_read(dom_object *obj, zval *retval); 91 92 /* entity reference properties */ 93 zend_result dom_entity_reference_child_read(dom_object *obj, zval *retval); 94 zend_result dom_entity_reference_text_content_read(dom_object *obj, zval *retval); 95 zend_result dom_entity_reference_child_nodes_read(dom_object *obj, zval *retval); 96 97 /* namednodemap properties */ 98 zend_result dom_namednodemap_length_read(dom_object *obj, zval *retval); 99 100 /* parent node properties */ 101 zend_result dom_parent_node_first_element_child_read(dom_object *obj, zval *retval); 102 zend_result dom_parent_node_last_element_child_read(dom_object *obj, zval *retval); 103 zend_result dom_parent_node_child_element_count(dom_object *obj, zval *retval); 104 105 /* node properties */ 106 zend_result dom_node_node_name_read(dom_object *obj, zval *retval); 107 zend_result dom_node_node_value_read(dom_object *obj, zval *retval); 108 zend_result dom_node_node_value_write(dom_object *obj, zval *newval); 109 zend_result dom_node_node_type_read(dom_object *obj, zval *retval); 110 zend_result dom_node_parent_node_read(dom_object *obj, zval *retval); 111 zend_result dom_node_parent_element_read(dom_object *obj, zval *retval); 112 zend_result dom_node_child_nodes_read(dom_object *obj, zval *retval); 113 zend_result dom_node_first_child_read(dom_object *obj, zval *retval); 114 zend_result dom_node_last_child_read(dom_object *obj, zval *retval); 115 zend_result dom_node_previous_sibling_read(dom_object *obj, zval *retval); 116 zend_result dom_node_next_sibling_read(dom_object *obj, zval *retval); 117 zend_result dom_node_previous_element_sibling_read(dom_object *obj, zval *retval); 118 zend_result dom_node_next_element_sibling_read(dom_object *obj, zval *retval); 119 zend_result dom_node_attributes_read(dom_object *obj, zval *retval); 120 zend_result dom_node_is_connected_read(dom_object *obj, zval *retval); 121 zend_result dom_node_owner_document_read(dom_object *obj, zval *retval); 122 zend_result dom_node_namespace_uri_read(dom_object *obj, zval *retval); 123 zend_result dom_node_prefix_read(dom_object *obj, zval *retval); 124 zend_result dom_modern_node_prefix_read(dom_object *obj, zval *retval); 125 zend_result dom_node_prefix_write(dom_object *obj, zval *newval); 126 zend_result dom_node_local_name_read(dom_object *obj, zval *retval); 127 zend_result dom_node_base_uri_read(dom_object *obj, zval *retval); 128 zend_result dom_node_text_content_read(dom_object *obj, zval *retval); 129 zend_result dom_node_text_content_write(dom_object *obj, zval *newval); 130 131 /* nodelist properties */ 132 zend_result dom_nodelist_length_read(dom_object *obj, zval *retval); 133 134 /* notation properties */ 135 zend_result dom_notation_public_id_read(dom_object *obj, zval *retval); 136 zend_result dom_notation_system_id_read(dom_object *obj, zval *retval); 137 138 /* processinginstruction properties */ 139 zend_result dom_processinginstruction_target_read(dom_object *obj, zval *retval); 140 zend_result dom_processinginstruction_data_read(dom_object *obj, zval *retval); 141 zend_result dom_processinginstruction_data_write(dom_object *obj, zval *newval); 142 143 /* text properties */ 144 zend_result dom_text_whole_text_read(dom_object *obj, zval *retval); 145 146 #ifdef LIBXML_XPATH_ENABLED 147 /* xpath properties */ 148 zend_result dom_xpath_document_read(dom_object *obj, zval *retval); 149 zend_result dom_xpath_register_node_ns_read(dom_object *obj, zval *retval); 150 zend_result dom_xpath_register_node_ns_write(dom_object *obj, zval *newval); 151 #endif 152 153 #define DOM_PROP_NODE(type, name, obj) \ 154 type name = (type) dom_object_get_node(obj); \ 155 if (UNEXPECTED(name == NULL)) { \ 156 php_dom_throw_error(INVALID_STATE_ERR, true); \ 157 return FAILURE; \ 158 } 159 160 #endif /* DOM_PROPERTIES_H */ 161