shorten each block var names

pull/862/head
Rich Harris 7 years ago
parent 4f1d48c4a6
commit 5d84a93c99

@ -195,7 +195,7 @@ const preprocessors = {
stripWhitespace: boolean, stripWhitespace: boolean,
nextSibling: Node nextSibling: Node
) => { ) => {
node.var = block.getUniqueName(`each_block`); node.var = block.getUniqueName(`each`);
const dependencies = block.findDependencies(node.expression); const dependencies = block.findDependencies(node.expression);
block.addDependencies(dependencies); block.addDependencies(dependencies);
@ -209,7 +209,7 @@ const preprocessors = {
const listName = block.getUniqueName( const listName = block.getUniqueName(
(node.expression.type === 'MemberExpression' && !node.expression.computed) ? node.expression.property.name : (node.expression.type === 'MemberExpression' && !node.expression.computed) ? node.expression.property.name :
node.expression.type === 'Identifier' ? node.expression.name : node.expression.type === 'Identifier' ? node.expression.name :
`each_block_value` `each_value`
); );
listNames.set(node.context, listName); listNames.set(node.context, listName);

@ -14,16 +14,16 @@ export default function visitEachBlock(
elementStack: Node[], elementStack: Node[],
componentStack: Node[] componentStack: Node[]
) { ) {
const each_block = node.var; const each = node.var;
const create_each_block = node._block.name; const create_each_block = node._block.name;
const each_block_value = node._block.listName; const each_block_value = node._block.listName;
const iterations = block.getUniqueName(`${each_block}_iterations`); const iterations = block.getUniqueName(`${each}_blocks`);
const params = block.params.join(', '); const params = block.params.join(', ');
const needsAnchor = node.next ? !isDomNode(node.next, generator) : !state.parentNode; const needsAnchor = node.next ? !isDomNode(node.next, generator) : !state.parentNode;
const anchor = needsAnchor const anchor = needsAnchor
? block.getUniqueName(`${each_block}_anchor`) ? block.getUniqueName(`${each}_anchor`)
: (node.next && node.next.var) || 'null'; : (node.next && node.next.var) || 'null';
// hack the sourcemap, so that if data is missing the bug // hack the sourcemap, so that if data is missing the bug
@ -35,7 +35,7 @@ export default function visitEachBlock(
const mountOrIntro = node._block.hasIntroMethod ? 'intro' : 'mount'; const mountOrIntro = node._block.hasIntroMethod ? 'intro' : 'mount';
const vars = { const vars = {
each_block, each,
create_each_block, create_each_block,
each_block_value, each_block_value,
length, length,
@ -67,7 +67,7 @@ export default function visitEachBlock(
} }
if (node.else) { if (node.else) {
const each_block_else = generator.getUniqueName(`${each_block}_else`); const each_block_else = generator.getUniqueName(`${each}_else`);
block.builders.init.addLine(`var ${each_block_else} = null;`); block.builders.init.addLine(`var ${each_block_else} = null;`);
@ -144,7 +144,7 @@ function keyed(
node: Node, node: Node,
snippet: string, snippet: string,
{ {
each_block, each,
create_each_block, create_each_block,
each_block_value, each_block_value,
length, length,
@ -154,11 +154,11 @@ function keyed(
} }
) { ) {
const key = block.getUniqueName('key'); const key = block.getUniqueName('key');
const lookup = block.getUniqueName(`${each_block}_lookup`); const lookup = block.getUniqueName(`${each}_lookup`);
const iteration = block.getUniqueName(`${each_block}_iteration`); const iteration = block.getUniqueName(`${each}_iteration`);
const head = block.getUniqueName(`${each_block}_head`); const head = block.getUniqueName(`${each}_head`);
const last = block.getUniqueName(`${each_block}_last`); const last = block.getUniqueName(`${each}_last`);
const expected = block.getUniqueName(`${each_block}_expected`); const expected = block.getUniqueName(`${each}_expected`);
block.addVariable(lookup, `@blankObject()`); block.addVariable(lookup, `@blankObject()`);
block.addVariable(head); block.addVariable(head);
@ -222,7 +222,7 @@ function keyed(
let destroy; let destroy;
if (node._block.hasOutroMethod) { if (node._block.hasOutroMethod) {
const fn = block.getUniqueName(`${each_block}_outro`); const fn = block.getUniqueName(`${each}_outro`);
block.builders.init.addBlock(deindent` block.builders.init.addBlock(deindent`
function ${fn}(iteration) { function ${fn}(iteration) {
iteration.outro(function() { iteration.outro(function() {
@ -246,7 +246,7 @@ function keyed(
} }
`; `;
} else { } else {
const fn = block.getUniqueName(`${each_block}_destroy`); const fn = block.getUniqueName(`${each}_destroy`);
block.builders.init.addBlock(deindent` block.builders.init.addBlock(deindent`
function ${fn}(iteration) { function ${fn}(iteration) {
iteration.unmount(); iteration.unmount();

@ -205,16 +205,16 @@ function create_main_fragment(state, component) {
var comments = state.comments; var comments = state.comments;
var each_block_iterations = []; var each_blocks = [];
for (var i = 0; i < comments.length; i += 1) { for (var i = 0; i < comments.length; i += 1) {
each_block_iterations[i] = create_each_block(state, comments, comments[i], i, component); each_blocks[i] = create_each_block(state, comments, comments[i], i, component);
} }
return { return {
create: function() { create: function() {
for (var i = 0; i < each_block_iterations.length; i += 1) { for (var i = 0; i < each_blocks.length; i += 1) {
each_block_iterations[i].create(); each_blocks[i].create();
} }
text = createText("\n\n"); text = createText("\n\n");
@ -223,8 +223,8 @@ function create_main_fragment(state, component) {
}, },
mount: function(target, anchor) { mount: function(target, anchor) {
for (var i = 0; i < each_block_iterations.length; i += 1) { for (var i = 0; i < each_blocks.length; i += 1) {
each_block_iterations[i].mount(target, anchor); each_blocks[i].mount(target, anchor);
} }
insertNode(text, target, anchor); insertNode(text, target, anchor);
@ -237,20 +237,20 @@ function create_main_fragment(state, component) {
if (changed.comments || changed.elapsed || changed.time) { if (changed.comments || changed.elapsed || changed.time) {
for (var i = 0; i < comments.length; i += 1) { for (var i = 0; i < comments.length; i += 1) {
if (each_block_iterations[i]) { if (each_blocks[i]) {
each_block_iterations[i].update(changed, state, comments, comments[i], i); each_blocks[i].update(changed, state, comments, comments[i], i);
} else { } else {
each_block_iterations[i] = create_each_block(state, comments, comments[i], i, component); each_blocks[i] = create_each_block(state, comments, comments[i], i, component);
each_block_iterations[i].create(); each_blocks[i].create();
each_block_iterations[i].mount(text.parentNode, text); each_blocks[i].mount(text.parentNode, text);
} }
} }
for (; i < each_block_iterations.length; i += 1) { for (; i < each_blocks.length; i += 1) {
each_block_iterations[i].unmount(); each_blocks[i].unmount();
each_block_iterations[i].destroy(); each_blocks[i].destroy();
} }
each_block_iterations.length = comments.length; each_blocks.length = comments.length;
} }
if (changed.foo) { if (changed.foo) {
@ -259,8 +259,8 @@ function create_main_fragment(state, component) {
}, },
unmount: function() { unmount: function() {
for (var i = 0; i < each_block_iterations.length; i += 1) { for (var i = 0; i < each_blocks.length; i += 1) {
each_block_iterations[i].unmount(); each_blocks[i].unmount();
} }
detachNode(text); detachNode(text);
@ -268,7 +268,7 @@ function create_main_fragment(state, component) {
}, },
destroy: function() { destroy: function() {
destroyEach(each_block_iterations, false, 0); destroyEach(each_blocks, false, 0);
} }
}; };
} }

@ -7,16 +7,16 @@ function create_main_fragment(state, component) {
var comments = state.comments; var comments = state.comments;
var each_block_iterations = []; var each_blocks = [];
for (var i = 0; i < comments.length; i += 1) { for (var i = 0; i < comments.length; i += 1) {
each_block_iterations[i] = create_each_block(state, comments, comments[i], i, component); each_blocks[i] = create_each_block(state, comments, comments[i], i, component);
} }
return { return {
create: function() { create: function() {
for (var i = 0; i < each_block_iterations.length; i += 1) { for (var i = 0; i < each_blocks.length; i += 1) {
each_block_iterations[i].create(); each_blocks[i].create();
} }
text = createText("\n\n"); text = createText("\n\n");
@ -25,8 +25,8 @@ function create_main_fragment(state, component) {
}, },
mount: function(target, anchor) { mount: function(target, anchor) {
for (var i = 0; i < each_block_iterations.length; i += 1) { for (var i = 0; i < each_blocks.length; i += 1) {
each_block_iterations[i].mount(target, anchor); each_blocks[i].mount(target, anchor);
} }
insertNode(text, target, anchor); insertNode(text, target, anchor);
@ -39,20 +39,20 @@ function create_main_fragment(state, component) {
if (changed.comments || changed.elapsed || changed.time) { if (changed.comments || changed.elapsed || changed.time) {
for (var i = 0; i < comments.length; i += 1) { for (var i = 0; i < comments.length; i += 1) {
if (each_block_iterations[i]) { if (each_blocks[i]) {
each_block_iterations[i].update(changed, state, comments, comments[i], i); each_blocks[i].update(changed, state, comments, comments[i], i);
} else { } else {
each_block_iterations[i] = create_each_block(state, comments, comments[i], i, component); each_blocks[i] = create_each_block(state, comments, comments[i], i, component);
each_block_iterations[i].create(); each_blocks[i].create();
each_block_iterations[i].mount(text.parentNode, text); each_blocks[i].mount(text.parentNode, text);
} }
} }
for (; i < each_block_iterations.length; i += 1) { for (; i < each_blocks.length; i += 1) {
each_block_iterations[i].unmount(); each_blocks[i].unmount();
each_block_iterations[i].destroy(); each_blocks[i].destroy();
} }
each_block_iterations.length = comments.length; each_blocks.length = comments.length;
} }
if (changed.foo) { if (changed.foo) {
@ -61,8 +61,8 @@ function create_main_fragment(state, component) {
}, },
unmount: function() { unmount: function() {
for (var i = 0; i < each_block_iterations.length; i += 1) { for (var i = 0; i < each_blocks.length; i += 1) {
each_block_iterations[i].unmount(); each_blocks[i].unmount();
} }
detachNode(text); detachNode(text);
@ -70,7 +70,7 @@ function create_main_fragment(state, component) {
}, },
destroy: function() { destroy: function() {
destroyEach(each_block_iterations, false, 0); destroyEach(each_blocks, false, 0);
} }
}; };
} }

Loading…
Cancel
Save