| 540 | } |
| 541 | |
| 542 | absl::StatusOr<std::string> UnescapeBytes(absl::string_view str) { |
| 543 | std::string out; |
| 544 | std::string error; |
| 545 | if (!UnescapeInternal(str, "", false, true, &out, &error)) { |
| 546 | return absl::InvalidArgumentError( |
| 547 | absl::StrCat("Invalid escaped bytes: ", error)); |
| 548 | } |
| 549 | return out; |
| 550 | } |
| 551 | |
| 552 | std::string EscapeString(absl::string_view str) { |
| 553 | return EscapeInternal(str, true, '\0'); |