original_string: public function setDataProvider($data)
  	{
  		if ($data instanceof Dwoo_IDataProvider) {
  			$this->_dataProvider = $data;
  		}
  		elseif (is_subclass_of($data, 'Dwoo_Data') || 'Dwoo_Data' == $data) {
  			$this->_dataProvider = new $data();
  		}
  		else {
  			throw new Dwoo_Exception("Custom data provider must be a subclass of Dwoo_Data or instance of Dwoo_IDataProvider");
  		}
  	}
code: public function setDataProvider($data)
  	{
  		if ($data instanceof Dwoo_IDataProvider) {
  			$this->_dataProvider = $data;
  		}
  		elseif (is_subclass_of($data, 'Dwoo_Data') || 'Dwoo_Data' == $data) {
  			$this->_dataProvider = new $data();
  		}
  		else {
  			throw new Dwoo_Exception("Custom data provider must be a subclass of Dwoo_Data or instance of Dwoo_IDataProvider");
  		}
  	}
code_tokens: public function setDataProvider ( $ data ) { if ( $ data instanceof Dwoo_IDataProvider ) { $ this -> _dataProvider = $ data ; } elseif ( is_subclass_of ( $ data , 'Dwoo_Data' ) || 'Dwoo_Data' == $ data ) { $ this -> _dataProvider = new $ data ( ) ; } else { throw new Dwoo_Exception ( "Custom data provider must be a subclass of Dwoo_Data or instance of Dwoo_IDataProvider" ) ; } }
docstring: Sets Dwoo data object
  
  @param string|Dwoo_Data Object or name of the class
docstring_tokens: Sets Dwoo data object