 
                 switch startToken.type
                   when 0 then node.data = startToken.value
-                  when 1 then buildBinding node, 'textNode', startToken.value
+                  when 1 then buildBinding 'TextBinding', node, null, startToken.value
 
                 for token in restTokens
                   node.parentNode.appendChild (text = document.createTextNode token.value)
-                  buildBinding text, 'textNode', token.value if token.type is 1
+                  buildBinding 'TextBinding', text, null, token.value if token.type is 1
         else if componentRegExp.test node.tagName
           type = node.tagName.replace(componentRegExp, '').toLowerCase()
           @bindings.push new Rivets.ComponentBinding @, node, type

          for attribute in attributes or node.attributes
            if bindingRegExp.test attribute.name
              type = attribute.name.replace bindingRegExp, ''
              buildBinding node, type, attribute.value

        parse childNode for childNode in node.childNodes


      if dependencies = context.shift()
        options.dependencies = dependencies.split /\s+/

      @bindings.push new Rivets[binding] @, node, type, key, keypath, options

    parse = (node) =>
      unless node in skipNodes
