]> git.kaiwu.me - njs.git/commitdiff
Generator: removing njs_generate_children_indexes_release_pop().
authorDmitry Volyntsev <xeioex@nginx.com>
Wed, 8 Dec 2021 13:14:59 +0000 (13:14 +0000)
committerDmitry Volyntsev <xeioex@nginx.com>
Wed, 8 Dec 2021 13:14:59 +0000 (13:14 +0000)
src/njs_generator.c

index 5005d0a857447d9a5b0a65e54487a9d0798520c3..96c736dcf9f2ec9e3435ee7790ab1387a087e79e 100644 (file)
@@ -348,8 +348,6 @@ static njs_index_t njs_generate_temp_index_get(njs_vm_t *vm,
     njs_generator_t *generator, njs_parser_node_t *node);
 static njs_int_t njs_generate_children_indexes_release(njs_vm_t *vm,
     njs_generator_t *generator, njs_parser_node_t *node);
-static njs_int_t njs_generate_children_indexes_release_pop(njs_vm_t *vm,
-    njs_generator_t *generator, njs_parser_node_t *node);
 static njs_int_t njs_generate_node_index_release(njs_vm_t *vm,
     njs_generator_t *generator, njs_parser_node_t *node);
 static njs_int_t njs_generate_node_index_release_pop(njs_vm_t *vm,
@@ -2700,6 +2698,7 @@ static njs_int_t
 njs_generate_assignment_end(njs_vm_t *vm, njs_generator_t *generator,
     njs_parser_node_t *node)
 {
+    njs_int_t              ret;
     njs_parser_node_t      *lvalue, *expr, *object, *property;
     njs_vmcode_prop_set_t  *prop_set;
 
@@ -2733,7 +2732,12 @@ njs_generate_assignment_end(njs_vm_t *vm, njs_generator_t *generator,
     node->index = expr->index;
     node->temporary = expr->temporary;
 
-    return njs_generate_children_indexes_release_pop(vm, generator, lvalue);
+    ret = njs_generate_children_indexes_release(vm, generator, lvalue);
+    if (njs_slow_path(ret != NJS_OK)) {
+        return ret;
+    }
+
+    return njs_generator_stack_pop(vm, generator, NULL);
 }
 
 
@@ -3573,7 +3577,12 @@ found:
 
     njs_mp_free(vm->mem_pool, generator->context);
 
-    return njs_generate_children_indexes_release_pop(vm, generator, lvalue);
+    ret = njs_generate_children_indexes_release(vm, generator, lvalue);
+    if (njs_slow_path(ret != NJS_OK)) {
+        return ret;
+    }
+
+    return njs_generator_stack_pop(vm, generator, NULL);
 }
 
 
@@ -4937,22 +4946,6 @@ njs_generate_children_indexes_release(njs_vm_t *vm, njs_generator_t *generator,
 }
 
 
-static njs_int_t
-njs_generate_children_indexes_release_pop(njs_vm_t *vm,
-    njs_generator_t *generator, njs_parser_node_t *node)
-{
-    njs_int_t  ret;
-
-    ret = njs_generate_node_index_release(vm, generator, node->left);
-
-    if (njs_fast_path(ret == NJS_OK)) {
-        return njs_generate_node_index_release_pop(vm, generator, node->right);
-    }
-
-    return ret;
-}
-
-
 static njs_int_t
 njs_generate_node_index_release(njs_vm_t *vm, njs_generator_t *generator,
     njs_parser_node_t *node)