diff options
| author | qrort <[email protected]> | 2022-12-02 11:31:25 +0300 | 
|---|---|---|
| committer | qrort <[email protected]> | 2022-12-02 11:31:25 +0300 | 
| commit | b1f4ffc9c8abff3ba58dc1ec9a9f92d2f0de6806 (patch) | |
| tree | 2a23209faf0fea5586a6d4b9cee60d1b318d29fe /library/cpp/string_utils/tskv_format/escape.cpp | |
| parent | 559174a9144de40d6bb3997ea4073c82289b4974 (diff) | |
remove kikimr/driver DEPENDS
Diffstat (limited to 'library/cpp/string_utils/tskv_format/escape.cpp')
| -rw-r--r-- | library/cpp/string_utils/tskv_format/escape.cpp | 112 | 
1 files changed, 0 insertions, 112 deletions
diff --git a/library/cpp/string_utils/tskv_format/escape.cpp b/library/cpp/string_utils/tskv_format/escape.cpp deleted file mode 100644 index 3dc78bec8c0..00000000000 --- a/library/cpp/string_utils/tskv_format/escape.cpp +++ /dev/null @@ -1,112 +0,0 @@ -#include <util/generic/yexception.h> -#include "escape.h" - -namespace NTskvFormat { -    namespace { -        const TStringBuf ESCAPE_CHARS("\t\n\r\\\0=\"", 7); - -        TString& EscapeImpl(const char* src, size_t len, TString& dst) { -            TStringBuf srcStr(src, len); -            size_t noEscapeStart = 0; - -            while (noEscapeStart < len) { -                size_t noEscapeEnd = srcStr.find_first_of(ESCAPE_CHARS, noEscapeStart); - -                if (noEscapeEnd == TStringBuf::npos) { -                    dst.append(src + noEscapeStart, len - noEscapeStart); -                    break; -                } - -                dst.append(src + noEscapeStart, noEscapeEnd - noEscapeStart); - -                switch (src[noEscapeEnd]) { -                    case '\t': -                        dst.append(TStringBuf("\\t")); -                        break; -                    case '\n': -                        dst.append(TStringBuf("\\n")); -                        break; -                    case '\r': -                        dst.append(TStringBuf("\\r")); -                        break; -                    case '\0': -                        dst.append(TStringBuf("\\0")); -                        break; -                    case '\\': -                        dst.append(TStringBuf("\\\\")); -                        break; -                    case '=': -                        dst.append(TStringBuf("\\=")); -                        break; -                    case '"': -                        dst.append(TStringBuf("\\\"")); -                        break; -                } - -                noEscapeStart = noEscapeEnd + 1; -            } - -            return dst; -        } - -        TString& UnescapeImpl(const char* src, const size_t len, TString& dst) { -            TStringBuf srcStr(src, len); -            size_t noEscapeStart = 0; - -            while (noEscapeStart < len) { -                size_t noEscapeEnd = srcStr.find('\\', noEscapeStart); - -                if (noEscapeEnd == TStringBuf::npos) { -                    dst.append(src + noEscapeStart, len - noEscapeStart); -                    break; -                } - -                dst.append(src + noEscapeStart, noEscapeEnd - noEscapeStart); - -                if (noEscapeEnd + 1 >= len) { -                    throw yexception() << "expected (t|n|r|0|\\|=|\"|) after \\. Got end of line."; -                } - -                switch (src[noEscapeEnd + 1]) { -                    case 't': -                        dst.append('\t'); -                        break; -                    case 'n': -                        dst.append('\n'); -                        break; -                    case 'r': -                        dst.append('\r'); -                        break; -                    case '0': -                        dst.append('\0'); -                        break; -                    case '\\': -                        dst.append('\\'); -                        break; -                    case '=': -                        dst.append('='); -                        break; -                    case '"': -                        dst.append('"'); -                        break; -                    default: -                        throw yexception() << "unexpected symbol '" << src[noEscapeEnd + 1] << "' after \\"; -                } - -                noEscapeStart = noEscapeEnd + 2; -            } - -            return dst; -        } - -    } - -    TString& Escape(const TStringBuf& src, TString& dst) { -        return EscapeImpl(src.data(), src.size(), dst); -    } - -    TString& Unescape(const TStringBuf& src, TString& dst) { -        return UnescapeImpl(src.data(), src.size(), dst); -    } - -}  | 
