Skip to content

Commit 87e7b61

Browse files
committed
Cleanup macro usage in ext/dom and ext/libxml
With the new lifetime system in place, we can simplify some macros.
1 parent 003ebdd commit 87e7b61

File tree

6 files changed

+49
-89
lines changed

6 files changed

+49
-89
lines changed

ext/dom/characterdata.c

+7-15
Original file line numberDiff line numberDiff line change
@@ -330,15 +330,13 @@ PHP_METHOD(DOMCharacterData, replaceData)
330330

331331
PHP_METHOD(DOMCharacterData, remove)
332332
{
333-
zval *id = ZEND_THIS;
334-
xmlNodePtr child;
335333
dom_object *intern;
336334

337335
if (zend_parse_parameters_none() == FAILURE) {
338336
RETURN_THROWS();
339337
}
340338

341-
DOM_GET_OBJ(child, id, xmlNodePtr, intern);
339+
DOM_GET_THIS_INTERN(intern);
342340

343341
dom_child_node_remove(intern);
344342
RETURN_NULL();
@@ -347,50 +345,44 @@ PHP_METHOD(DOMCharacterData, remove)
347345
PHP_METHOD(DOMCharacterData, after)
348346
{
349347
uint32_t argc;
350-
zval *args, *id;
348+
zval *args;
351349
dom_object *intern;
352-
xmlNode *context;
353350

354351
if (zend_parse_parameters(ZEND_NUM_ARGS(), "+", &args, &argc) == FAILURE) {
355352
RETURN_THROWS();
356353
}
357354

358-
id = ZEND_THIS;
359-
DOM_GET_OBJ(context, id, xmlNodePtr, intern);
355+
DOM_GET_THIS_INTERN(intern);
360356

361357
dom_parent_node_after(intern, args, argc);
362358
}
363359

364360
PHP_METHOD(DOMCharacterData, before)
365361
{
366362
uint32_t argc;
367-
zval *args, *id;
363+
zval *args;
368364
dom_object *intern;
369-
xmlNode *context;
370365

371366
if (zend_parse_parameters(ZEND_NUM_ARGS(), "+", &args, &argc) == FAILURE) {
372367
RETURN_THROWS();
373368
}
374369

375-
id = ZEND_THIS;
376-
DOM_GET_OBJ(context, id, xmlNodePtr, intern);
370+
DOM_GET_THIS_INTERN(intern);
377371

378372
dom_parent_node_before(intern, args, argc);
379373
}
380374

381375
PHP_METHOD(DOMCharacterData, replaceWith)
382376
{
383377
uint32_t argc;
384-
zval *args, *id;
378+
zval *args;
385379
dom_object *intern;
386-
xmlNode *context;
387380

388381
if (zend_parse_parameters(ZEND_NUM_ARGS(), "+", &args, &argc) == FAILURE) {
389382
RETURN_THROWS();
390383
}
391384

392-
id = ZEND_THIS;
393-
DOM_GET_OBJ(context, id, xmlNodePtr, intern);
385+
DOM_GET_THIS_INTERN(intern);
394386

395387
dom_parent_node_after(intern, args, argc);
396388
dom_child_node_remove(intern);

ext/dom/document.c

+9-23
Original file line numberDiff line numberDiff line change
@@ -772,18 +772,15 @@ PHP_METHOD(DOMDocument, createEntityReference)
772772
*/
773773
PHP_METHOD(DOMDocument, getElementsByTagName)
774774
{
775-
zval *id;
776-
xmlDocPtr docp;
777775
size_t name_len;
778776
dom_object *intern, *namednode;
779777
char *name;
780778

781-
id = ZEND_THIS;
782779
if (zend_parse_parameters(ZEND_NUM_ARGS(), "s", &name, &name_len) == FAILURE) {
783780
RETURN_THROWS();
784781
}
785782

786-
DOM_GET_OBJ(docp, id, xmlDocPtr, intern);
783+
DOM_GET_THIS_INTERN(intern);
787784

788785
php_dom_create_iterator(return_value, DOM_NODELIST);
789786
namednode = Z_DOMOBJ_P(return_value);
@@ -796,7 +793,7 @@ Since: DOM Level 2
796793
*/
797794
PHP_METHOD(DOMDocument, importNode)
798795
{
799-
zval *id, *node;
796+
zval *node;
800797
xmlDocPtr docp;
801798
xmlNodePtr nodep, retnodep;
802799
dom_object *intern, *nodeobj;
@@ -805,12 +802,11 @@ PHP_METHOD(DOMDocument, importNode)
805802
/* See http://www.xmlsoft.org/html/libxml-tree.html#xmlDocCopyNode for meaning of values */
806803
int extended_recursive;
807804

808-
id = ZEND_THIS;
809805
if (zend_parse_parameters(ZEND_NUM_ARGS(), "O|b", &node, dom_node_class_entry, &recursive) == FAILURE) {
810806
RETURN_THROWS();
811807
}
812808

813-
DOM_GET_OBJ(docp, id, xmlDocPtr, intern);
809+
DOM_GET_OBJ(docp, ZEND_THIS, xmlDocPtr, intern);
814810

815811
DOM_GET_OBJ(nodep, node, xmlNodePtr, nodeobj);
816812

@@ -982,18 +978,15 @@ Since: DOM Level 2
982978
*/
983979
PHP_METHOD(DOMDocument, getElementsByTagNameNS)
984980
{
985-
zval *id;
986-
xmlDocPtr docp;
987981
size_t uri_len, name_len;
988982
dom_object *intern, *namednode;
989983
char *uri, *name;
990984

991-
id = ZEND_THIS;
992985
if (zend_parse_parameters(ZEND_NUM_ARGS(), "s!s", &uri, &uri_len, &name, &name_len) == FAILURE) {
993986
RETURN_THROWS();
994987
}
995988

996-
DOM_GET_OBJ(docp, id, xmlDocPtr, intern);
989+
DOM_GET_THIS_INTERN(intern);
997990

998991
php_dom_create_iterator(return_value, DOM_NODELIST);
999992
namednode = Z_DOMOBJ_P(return_value);
@@ -2130,18 +2123,15 @@ PHP_METHOD(DOMDocument, saveHTML)
21302123
/* {{{ Register extended class used to create base node type */
21312124
PHP_METHOD(DOMDocument, registerNodeClass)
21322125
{
2133-
zval *id;
2134-
xmlDoc *docp;
21352126
zend_class_entry *basece = dom_node_class_entry, *ce = NULL;
21362127
dom_object *intern;
21372128

2138-
id = ZEND_THIS;
21392129
if (zend_parse_parameters(ZEND_NUM_ARGS(), "CC!", &basece, &ce) == FAILURE) {
21402130
RETURN_THROWS();
21412131
}
21422132

21432133
if (ce == NULL || instanceof_function(ce, basece)) {
2144-
DOM_GET_OBJ(docp, id, xmlDocPtr, intern);
2134+
DOM_GET_THIS_INTERN(intern);
21452135
dom_set_doc_classmap(intern->document, basece, ce);
21462136
RETURN_TRUE;
21472137
}
@@ -2156,16 +2146,14 @@ Since: DOM Living Standard (DOM4)
21562146
PHP_METHOD(DOMDocument, append)
21572147
{
21582148
uint32_t argc;
2159-
zval *args, *id;
2149+
zval *args;
21602150
dom_object *intern;
2161-
xmlNode *context;
21622151

21632152
if (zend_parse_parameters(ZEND_NUM_ARGS(), "+", &args, &argc) == FAILURE) {
21642153
RETURN_THROWS();
21652154
}
21662155

2167-
id = ZEND_THIS;
2168-
DOM_GET_OBJ(context, id, xmlNodePtr, intern);
2156+
DOM_GET_THIS_INTERN(intern);
21692157

21702158
dom_parent_node_append(intern, args, argc);
21712159
}
@@ -2177,16 +2165,14 @@ Since: DOM Living Standard (DOM4)
21772165
PHP_METHOD(DOMDocument, prepend)
21782166
{
21792167
uint32_t argc;
2180-
zval *args, *id;
2168+
zval *args;
21812169
dom_object *intern;
2182-
xmlNode *context;
21832170

21842171
if (zend_parse_parameters(ZEND_NUM_ARGS(), "+", &args, &argc) == FAILURE) {
21852172
RETURN_THROWS();
21862173
}
21872174

2188-
id = ZEND_THIS;
2189-
DOM_GET_OBJ(context, id, xmlNodePtr, intern);
2175+
DOM_GET_THIS_INTERN(intern);
21902176

21912177
dom_parent_node_prepend(intern, args, argc);
21922178
}

ext/dom/documentfragment.c

+4-8
Original file line numberDiff line numberDiff line change
@@ -98,16 +98,14 @@ Since: DOM Living Standard (DOM4)
9898
PHP_METHOD(DOMDocumentFragment, append)
9999
{
100100
uint32_t argc;
101-
zval *args, *id;
101+
zval *args;
102102
dom_object *intern;
103-
xmlNode *context;
104103

105104
if (zend_parse_parameters(ZEND_NUM_ARGS(), "+", &args, &argc) == FAILURE) {
106105
RETURN_THROWS();
107106
}
108107

109-
id = ZEND_THIS;
110-
DOM_GET_OBJ(context, id, xmlNodePtr, intern);
108+
DOM_GET_THIS_INTERN(intern);
111109

112110
dom_parent_node_append(intern, args, argc);
113111
}
@@ -119,16 +117,14 @@ Since: DOM Living Standard (DOM4)
119117
PHP_METHOD(DOMDocumentFragment, prepend)
120118
{
121119
uint32_t argc;
122-
zval *args, *id;
120+
zval *args;
123121
dom_object *intern;
124-
xmlNode *context;
125122

126123
if (zend_parse_parameters(ZEND_NUM_ARGS(), "+", &args, &argc) == FAILURE) {
127124
RETURN_THROWS();
128125
}
129126

130-
id = ZEND_THIS;
131-
DOM_GET_OBJ(context, id, xmlNodePtr, intern);
127+
DOM_GET_THIS_INTERN(intern);
132128

133129
dom_parent_node_prepend(intern, args, argc);
134130
}

ext/dom/element.c

+13-32
Original file line numberDiff line numberDiff line change
@@ -495,18 +495,15 @@ PHP_METHOD(DOMElement, removeAttributeNode)
495495
*/
496496
PHP_METHOD(DOMElement, getElementsByTagName)
497497
{
498-
zval *id;
499-
xmlNodePtr elemp;
500498
size_t name_len;
501499
dom_object *intern, *namednode;
502500
char *name;
503501

504-
id = ZEND_THIS;
505502
if (zend_parse_parameters(ZEND_NUM_ARGS(), "s", &name, &name_len) == FAILURE) {
506503
RETURN_THROWS();
507504
}
508505

509-
DOM_GET_OBJ(elemp, id, xmlNodePtr, intern);
506+
DOM_GET_THIS_INTERN(intern);
510507

511508
php_dom_create_iterator(return_value, DOM_NODELIST);
512509
namednode = Z_DOMOBJ_P(return_value);
@@ -900,18 +897,15 @@ Since: DOM Level 2
900897
*/
901898
PHP_METHOD(DOMElement, getElementsByTagNameNS)
902899
{
903-
zval *id;
904-
xmlNodePtr elemp;
905900
size_t uri_len, name_len;
906901
dom_object *intern, *namednode;
907902
char *uri, *name;
908903

909-
id = ZEND_THIS;
910904
if (zend_parse_parameters(ZEND_NUM_ARGS(), "s!s", &uri, &uri_len, &name, &name_len) == FAILURE) {
911905
RETURN_THROWS();
912906
}
913907

914-
DOM_GET_OBJ(elemp, id, xmlNodePtr, intern);
908+
DOM_GET_THIS_INTERN(intern);
915909

916910
php_dom_create_iterator(return_value, DOM_NODELIST);
917911
namednode = Z_DOMOBJ_P(return_value);
@@ -1115,16 +1109,13 @@ PHP_METHOD(DOMElement, setIdAttributeNode)
11151109
*/
11161110
PHP_METHOD(DOMElement, remove)
11171111
{
1118-
zval *id;
1119-
xmlNodePtr child;
11201112
dom_object *intern;
11211113

11221114
if (zend_parse_parameters_none() == FAILURE) {
11231115
RETURN_THROWS();
11241116
}
11251117

1126-
id = ZEND_THIS;
1127-
DOM_GET_OBJ(child, id, xmlNodePtr, intern);
1118+
DOM_GET_THIS_INTERN(intern);
11281119

11291120
dom_child_node_remove(intern);
11301121
}
@@ -1133,33 +1124,29 @@ PHP_METHOD(DOMElement, remove)
11331124
PHP_METHOD(DOMElement, after)
11341125
{
11351126
uint32_t argc;
1136-
zval *args, *id;
1127+
zval *args;
11371128
dom_object *intern;
1138-
xmlNode *context;
11391129

11401130
if (zend_parse_parameters(ZEND_NUM_ARGS(), "+", &args, &argc) == FAILURE) {
11411131
RETURN_THROWS();
11421132
}
11431133

1144-
id = ZEND_THIS;
1145-
DOM_GET_OBJ(context, id, xmlNodePtr, intern);
1134+
DOM_GET_THIS_INTERN(intern);
11461135

11471136
dom_parent_node_after(intern, args, argc);
11481137
}
11491138

11501139
PHP_METHOD(DOMElement, before)
11511140
{
11521141
uint32_t argc;
1153-
zval *args, *id;
1142+
zval *args;
11541143
dom_object *intern;
1155-
xmlNode *context;
11561144

11571145
if (zend_parse_parameters(ZEND_NUM_ARGS(), "+", &args, &argc) == FAILURE) {
11581146
RETURN_THROWS();
11591147
}
11601148

1161-
id = ZEND_THIS;
1162-
DOM_GET_OBJ(context, id, xmlNodePtr, intern);
1149+
DOM_GET_THIS_INTERN(intern);
11631150

11641151
dom_parent_node_before(intern, args, argc);
11651152
}
@@ -1170,16 +1157,14 @@ Since: DOM Living Standard (DOM4)
11701157
PHP_METHOD(DOMElement, append)
11711158
{
11721159
uint32_t argc;
1173-
zval *args, *id;
1160+
zval *args;
11741161
dom_object *intern;
1175-
xmlNode *context;
11761162

11771163
if (zend_parse_parameters(ZEND_NUM_ARGS(), "+", &args, &argc) == FAILURE) {
11781164
RETURN_THROWS();
11791165
}
11801166

1181-
id = ZEND_THIS;
1182-
DOM_GET_OBJ(context, id, xmlNodePtr, intern);
1167+
DOM_GET_THIS_INTERN(intern);
11831168

11841169
dom_parent_node_append(intern, args, argc);
11851170
}
@@ -1191,16 +1176,14 @@ Since: DOM Living Standard (DOM4)
11911176
PHP_METHOD(DOMElement, prepend)
11921177
{
11931178
uint32_t argc;
1194-
zval *args, *id;
1179+
zval *args;
11951180
dom_object *intern;
1196-
xmlNode *context;
11971181

11981182
if (zend_parse_parameters(ZEND_NUM_ARGS(), "+", &args, &argc) == FAILURE) {
11991183
RETURN_THROWS();
12001184
}
12011185

1202-
id = ZEND_THIS;
1203-
DOM_GET_OBJ(context, id, xmlNodePtr, intern);
1186+
DOM_GET_THIS_INTERN(intern);
12041187

12051188
dom_parent_node_prepend(intern, args, argc);
12061189
}
@@ -1212,16 +1195,14 @@ Since: DOM Living Standard (DOM4)
12121195
PHP_METHOD(DOMElement, replaceWith)
12131196
{
12141197
uint32_t argc;
1215-
zval *args, *id;
1198+
zval *args;
12161199
dom_object *intern;
1217-
xmlNode *context;
12181200

12191201
if (zend_parse_parameters(ZEND_NUM_ARGS(), "+", &args, &argc) == FAILURE) {
12201202
RETURN_THROWS();
12211203
}
12221204

1223-
id = ZEND_THIS;
1224-
DOM_GET_OBJ(context, id, xmlNodePtr, intern);
1205+
DOM_GET_THIS_INTERN(intern);
12251206

12261207
dom_child_replace_with(intern, args, argc);
12271208
}

0 commit comments

Comments
 (0)