each blocks already have the correct parent-child relationship so i guess we can get rid of this

pull/10794/head
Rich Harris 2 years ago
parent 55002ea533
commit cc77d1726a

@ -11,7 +11,6 @@ import { unstate } from './proxy.js';
import { destroy_effect, pre_effect } from './reactivity/effects.js';
import {
EACH_BLOCK,
IF_BLOCK,
EFFECT,
PRE_EFFECT,
RENDER_EFFECT,
@ -759,15 +758,14 @@ export function invalidate_inner_signals(fn) {
/**
* @param {import('#client').Effect} signal
* @param {boolean} inert
* @param {Set<import('#client').Block>} [visited_blocks]
* @returns {void}
*/
function mark_subtree_children_inert(signal, inert, visited_blocks) {
function mark_subtree_children_inert(signal, inert) {
const effects = signal.effects;
if (effects !== null) {
for (var i = 0; i < effects.length; i++) {
const effect = effects[i];
mark_subtree_inert(effect, inert, visited_blocks);
mark_subtree_inert(effect, inert);
}
}
}
@ -775,10 +773,9 @@ function mark_subtree_children_inert(signal, inert, visited_blocks) {
/**
* @param {import('#client').Effect} signal
* @param {boolean} inert
* @param {Set<import('#client').Block>} [visited_blocks]
* @returns {void}
*/
export function mark_subtree_inert(signal, inert, visited_blocks = new Set()) {
export function mark_subtree_inert(signal, inert) {
const flags = signal.f;
const is_already_inert = (flags & INERT) !== 0;
if (is_already_inert !== inert) {
@ -786,21 +783,8 @@ export function mark_subtree_inert(signal, inert, visited_blocks = new Set()) {
if (!inert && (flags & CLEAN) === 0) {
schedule_effect(signal, false);
}
const block = signal.block;
if (block !== null && !visited_blocks.has(block)) {
visited_blocks.add(block);
if (block.t === EACH_BLOCK) {
const items = block.v;
for (let { e: each_item_effect } of items) {
if (each_item_effect !== null) {
mark_subtree_inert(each_item_effect, inert, visited_blocks);
}
}
}
}
}
mark_subtree_children_inert(signal, inert, visited_blocks);
mark_subtree_children_inert(signal, inert);
}
/**

Loading…
Cancel
Save