text: 
  
  
  /* DEPRECATED! - use code/TinyFormatter.h instead.
   *
   *
   * */
  
  #ifndef AI_BOOST_FORMAT_DUMMY_INCLUDED
  #define AI_BOOST_FORMAT_DUMMY_INCLUDED
  
  #if (!defined BOOST_FORMAT_HPP) || (defined ASSIMP_FORCE_NOBOOST)
  
  #include <string>
  #include <vector>
  
  namespace boost
  {
  
  
  	class format
  	{
  	public:
  		format (const std::string& _d)
  			: d(_d)
  		{
  		}
  
  		template <typename T>
  		format& operator % (T in) 
  		{
  			// XXX add replacement for boost::lexical_cast?
  			
  			std::ostringstream ss;
  			ss << in; // note: ss cannot be an rvalue, or  the global operator << (const char*) is not called for T == const char*.
  			chunks.push_back( ss.str());
  			return *this;
  		}
  
  
  		operator std::string () const {
  			std::string res; // pray for NRVO to kick in
  
  			size_t start = 0, last = 0;
  
  			std::vector<std::string>::const_iterator chunkin = chunks.begin();
  
  			for ( start = d.find('%');start != std::string::npos;  start = d.find('%',last)) {
  				res += d.substr(last,start-last);
  				last = start+2;
  				if (d[start+1] == '%') {
  					res += "%";
  					continue;
  				}
  
  				if (chunkin == chunks.end()) {
  					break;
  				}
  
  				res += *chunkin++;
  			}
  			res += d.substr(last);
  			return res;
  		}
  
  	private:
  		std::string d;
  		std::vector<std::string> chunks;
  	};
  
  	inline std::string str(const std::string& s) {
  		return s;
  	} 
  }
  
  
  #else
  #	error "format.h was already included"
  #endif //
  #endif // !! AI_BOOST_FORMAT_DUMMY_INCLUDED
  
  