code: function() {
                  var args = arguments;
                  var sc = args[0], so = args[1], ec = sc, eo = so;
  
                  switch (args.length) {
                      case 3:
                          eo = args[2];
                          break;
                      case 4:
                          ec = args[2];
                          eo = args[3];
                          break;
                  }
  
                  assertNoDocTypeNotationEntityAncestor(sc, true);
                  assertValidOffset(sc, so);
  
                  assertNoDocTypeNotationEntityAncestor(ec, true);
                  assertValidOffset(ec, eo);
  
                  boundaryUpdater(this, sc, so, ec, eo);
              }
docs: Convenience method to set a range's start and end boundaries. Overloaded as follows:
  - Two parameters (node, offset) creates a collapsed range at that position
  - Three parameters (node, startOffset, endOffset) creates a range contained with node starting at
  startOffset and ending at endOffset
  - Four parameters (startNode, startOffset, endNode, endOffset) creates a range starting at startOffset in
  startNode and ending at endOffset in endNode