this._rendered = true; var str = this.contents.resolve(context); if(str && str.render && str.getRootNode){ var root = this._curr = str.getRootNode(); var lists = this._lists; var list = lists[root]; if(!list){ list = lists[root] = new dd._HtmlNodeList(); list.push(new dd.ChangeNode(buffer.getParent())); list.push(new dd._HtmlNode(root)); list.push(str); list.push(new dd.ChangeNode(buffer.getParent())); } return list.render(context, buffer); }else{ if(!this._txt){ this._txt = document.createTextNode(str); } this._txt.data = str; return buffer.concat(this._txt); }