MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ escape_json()

std::string Lila::Lila::escape_json ( const std::string &  str)
staticprivate

Escapes a string for safe JSON encoding.

Parameters
strInput string
Returns
Escaped string

Definition at line 303 of file Lila.cpp.

304{
305 std::string escaped;
306 escaped.reserve(str.size());
307
308 for (char c : str) {
309 switch (c) {
310 case '"':
311 escaped += "\\\"";
312 break;
313 case '\\':
314 escaped += "\\\\";
315 break;
316 case '\n':
317 escaped += "\\n";
318 break;
319 case '\r':
320 escaped += "\\r";
321 break;
322 case '\t':
323 escaped += "\\t";
324 break;
325 default:
326 if (c >= 0x20) {
327 escaped += c;
328 }
329 }
330 }
331 return escaped;
332}