original_string: public function setCacheDir($dir)
  	{
  		$this->cacheDir = rtrim($dir, '/\\').DIRECTORY_SEPARATOR;
  		if (is_writable($this->cacheDir) === false) {
  			throw new Dwoo_Exception('The cache directory must be writable, chmod "'.$this->cacheDir.'" to make it writable');
  		}
  	}
code: public function setCacheDir($dir)
  	{
  		$this->cacheDir = rtrim($dir, '/\\').DIRECTORY_SEPARATOR;
  		if (is_writable($this->cacheDir) === false) {
  			throw new Dwoo_Exception('The cache directory must be writable, chmod "'.$this->cacheDir.'" to make it writable');
  		}
  	}
code_tokens: public function setCacheDir ( $ dir ) { $ this -> cacheDir = rtrim ( $ dir , '/\\' ) . DIRECTORY_SEPARATOR ; if ( is_writable ( $ this -> cacheDir ) === false ) { throw new Dwoo_Exception ( 'The cache directory must be writable, chmod "' . $ this -> cacheDir . '" to make it writable' ) ; } }
docstring: sets the cache directory and automatically appends a DIRECTORY_SEPARATOR
  
  @param string $dir the cache directory
docstring_tokens: sets the cache directory and automatically appends a DIRECTORY_SEPARATOR