code: function() {
  			var endContainer = this.endContainer,
  				endOffset = this.endOffset;
  
  			// [IE] Special handling for range end in text with a following NBSP,
  			// we it to be isolated, for bogus check.
  			if ( CKEDITOR.env.ie && endContainer.type == CKEDITOR.NODE_TEXT )
  			{
  				var textAfter = CKEDITOR.tools.rtrim( endContainer.substring( endOffset ) );
  				if ( nbspRegExp.test( textAfter ) )
  					this.trim( 1, 0 );
  			}
  
  			// Antecipate the trim() call here, so the walker will not make
  			// changes to the DOM, which would not get reflected into this
  			// range otherwise.
  			this.trim();
  
  			// We need to grab the block element holding the start boundary, so
  			// let's use an element path for it.
  			var path = new CKEDITOR.dom.elementPath( this.endContainer, this.root );
  
  			// Creates a range starting at the block start until the range start.
  			var walkerRange = this.clone();
  			walkerRange.collapse( false );
  			walkerRange.setEndAt( path.block || path.blockLimit, CKEDITOR.POSITION_BEFORE_END );
  
  			var walker = new CKEDITOR.dom.walker( walkerRange );
  			walker.evaluator = getCheckStartEndBlockEvalFunction();
  
  			return walker.checkForward();
  		}
docs: **Note:** Calls to this function may produce changes to the DOM. The range may
  be updated to reflect such changes.
  
  @returns {Boolean}
  @todo