anchor.diff:    }
   }
   
  -class _BindingToken {
  -  final String value;
  -  final bool isBinding;
  -
  -  _BindingToken(this.value, {this.isBinding: false});
  -
  -  bool get isText => !isBinding;
  -}
   
   class _TemplateIterator {
     final Element _templateElement;
  
positive.code: // TODO(jmesserly): remove this when we can extend Element for real.
  _nodeOrCustom(node) => node is Element ? node.xtag : node;
  
  List<_BindingToken> _parseMustacheTokens(String s) {
    var result = [];
    var length = s.length;
    var index = 0, lastIndex = 0;
    while (lastIndex < length) {
      index = s.indexOf('{{', lastIndex);
      if (index < 0) {
        result.add(new _BindingToken(s.substring(lastIndex)));
        break;
      } else {
        // There is a non-empty text run before the next path token.
        if (index > 0 && lastIndex < index) {
          result.add(new _BindingToken(s.substring(lastIndex, index)));
        }
        lastIndex = index + 2;
        index = s.indexOf('}}', lastIndex);
        if (index < 0) {
          var text = s.substring(lastIndex - 2);
          if (result.length > 0 && result.last.isText) {
            result.last.value += text;
          } else {
            result.add(new _BindingToken(text));
          }
          break;
        }
  
        var value = s.substring(lastIndex, index).trim();
        result.add(new _BindingToken(value, isBinding: true));
        lastIndex = index + 2;
      }
    }
    return result;
  }
  
  void _addTemplateInstanceRecord(fragment, model) {
  
negative.code: }
  
  void _addBindings(Node node, model, [BindingDelegate delegate]) {
    List bindings = null;
    if (node is Element) {
      bindings = _parseAttributeBindings(node);
    } else if (node is Text) {
      var tokens = _parseMustacheTokens(node.text);
      if (tokens != null) bindings = ['text', tokens];
    }
  
    if (bindings != null) {
      _processBindings(bindings, node, model, delegate);
    }
  
    for (var c = node.firstChild; c != null; c = c.nextNode) {
  