static void assertSame(json_string & s, json_string & m){ assertEquals(s, m); assertCStringSame(s.c_str(), m.c_str()); assertEquals(s.length(), m.length()); s.swap(m); assertEquals(s, m); assertCStringSame(s.c_str(), m.c_str()); assertEquals(s.length(), m.length()); }
static void assertConstEmpty(const json_string & s){ assertEquals(s.length(), 0); assertTrue(s.empty()); assertCStringSame(s.c_str(), JSON_TEXT("")); assertEquals(s, s); assertEquals(s, JSON_TEXT("")); }
JsonString::JsonString( json_string& str ) : m_begin((json_char*)str.c_str()) , m_length(str.length()) , m_zeroTerminate(false) , m_rawEnd(J('\0')) { }
//Something went wrong or an assert failed void JSONDebug::_JSON_FAIL(const json_string & msg){ #ifdef JSON_STDERROR //no callback, just use stderror #ifndef JSON_UNICODE std::cerr << msg << std::endl; #else std::cerr << std::string(msg.begin(), msg.end()) << std::endl; #endif #else if (ErrorCallback){ //only do anything if the callback is registered #ifdef JSON_LIBRARY ErrorCallback(msg.c_str()); #else ErrorCallback(msg); #endif } #endif }
static void assertDifferent(json_string & s, json_string & m){ assertNotEquals(s, m); assertCStringNotSame(s.c_str(), m.c_str()); }