remove generator.push and generator.pop

pull/453/head
Rich-Harris 9 years ago
parent d93a3698fb
commit abf774bc57

@ -418,15 +418,4 @@ export default class Generator {
templateProperties
};
}
pop () {
const tail = this.current;
this.current = tail.parent;
return tail;
}
push ( fragment ) {
this.current = fragment;
}
}

@ -86,27 +86,6 @@ class DomGenerator extends Generator {
` );
}
// generateBlock ( node, name, type ) {
// const childFragment = this.current.child({
// type,
// name,
// target: 'target',
// localElementDepth: 0,
// builders: getBuilders(),
// getUniqueName: this.getUniqueNameMaker( this.current.params )
// });
// this.push( childFragment );
// // walk the children here
// node.children.forEach( node => visit( node, this ) );
// this.addRenderer( this.current );
// this.pop();
// // unset the children, to avoid them being visited again
// node.children = [];
// }
helper ( name ) {
if ( this.options.dev && `${name}Dev` in shared ) {
name = `${name}Dev`;
@ -150,7 +129,6 @@ export default function dom ( parsed, source, options ) {
builders: getBuilders(),
getUniqueName
});
generator.push( mainFragment );
parsed.html.children.forEach( node => {
visit( generator, mainFragment, node );

@ -211,14 +211,11 @@ export default function visitEachBlock ( generator, fragment, node ) {
getUniqueName
});
generator.push( childFragment );
node.children.forEach( child => {
visit( generator, childFragment, child );
});
generator.addRenderer( childFragment );
generator.pop();
if ( node.else ) {
const childFragment = fragment.child({

@ -107,8 +107,6 @@ export default function visitElement ( generator, fragment, node ) {
key: null
});
generator.push( childFragment );
generator.elementDepth += 1;
node.children.forEach( child => {
@ -120,6 +118,4 @@ export default function visitElement ( generator, fragment, node ) {
if ( node.initialUpdate ) {
fragment.builders.create.addBlock( node.initialUpdate );
}
generator.pop();
}

@ -1,6 +1,5 @@
import deindent from '../../utils/deindent.js';
import CodeBuilder from '../../utils/CodeBuilder.js';
import flattenReference from '../../utils/flattenReference.js';
import Generator from '../Generator.js';
import Fragment from './Fragment.js';
import visit from './visit.js';
@ -12,24 +11,6 @@ class SsrGenerator extends Generator {
this.renderCode = '';
}
addBinding ( binding, name ) {
const conditions = [ `!( '${binding.name}' in root )`].concat( // TODO handle contextual bindings...
this.current.conditions.map( c => `(${c})` )
);
const { keypath } = flattenReference( binding.value );
this.bindings.push( deindent`
if ( ${conditions.join( '&&' )} ) {
tmp = ${name}.data();
if ( '${keypath}' in tmp ) {
root.${binding.name} = tmp.${keypath};
settled = false;
}
}
` );
}
append ( code ) {
this.renderCode += code;
}

Loading…
Cancel
Save