#include "split.h" #include #include #include #include #include #include #include template static inline void OldSplit(char* pszBuf, T* pRes) { pRes->resize(0); pRes->push_back(pszBuf); for (char* pszData = pszBuf; *pszData; ++pszData) { if (*pszData == '\t') { *pszData = 0; pRes->push_back(pszData + 1); } } } template inline void Cmp(const T1& t1, const T2& t2) { try { UNIT_ASSERT_EQUAL(t1.size(), t2.size()); } catch (...) { Print(t1); Cerr << "---------------" << Endl; Print(t2); throw; } auto i = t1.begin(); auto j = t2.begin(); for (; i != t1.end() && j != t2.end(); ++i, ++j) { try { UNIT_ASSERT_EQUAL(*i, *j); } catch (...) { Cerr << "(" << *i << ")->(" << *j << ")" << Endl; throw; } } } template inline void Print(const T& t) { for (typename T::const_iterator i = t.begin(); i != t.end(); ++i) { Cerr << *i << Endl; } } template