docs: function (node, value) {
          assertType(node, LinkedListNode);
  
          var newNode;
  
          if (value instanceof LinkedListNode) {
              newNode = value;
              this.insertNodeBefore(node, newNode);
              if (node === this.head) {
                  this.head = newNode;
              }
          }
          else {
              newNode = new LinkedListNode(value);
              this.addBefore(node, newNode);
          }
  
          return newNode;
      }