summaryrefslogtreecommitdiffstats
path: root/util/string
Commit message (Collapse)AuthorAgeFilesLines
* Fix and enhance documentation comments in utilakhropov2026-06-052-13/+32
| | | | commit_hash:e121f7c48f58baff0e3690d60194525c2bfca083
* Add Concat for arbitrary string typesvadim-xd2026-05-192-1/+31
| | | | commit_hash:b9f1c87173a18fb59f8cf684191efd4436dd6012
* add support for std::string_view in the generic TryFromString functionswarmer2026-01-302-2/+13
| | | | commit_hash:063cf15ddb263d176b0e4a179c1c77aa16bbf9f0
* Avoid constructing ill-formed `std::basic_string_view<const char>`borman2025-10-271-5/+5
| | | | | | | | Since libc++19, only `std::char_traits<char>` is defined: https://github.com/llvm/llvm-project/commit/e30a148b098d462d0267c479cd9e4783363c2761 This makes usage of `std::char_traits<const char>`, `std::char_traits<unsigned char>`, etc invalid. C++20 deduction guides are now used to infer proper `Char` type; while also avoiding being overly specific with `type_traits`. commit_hash:c5ffaef9ef1c8b462d2fdf0e080a43d5cd4c4ca7
* StringSplitter: splitting an empty string should always produce exactly one ↵swarmer2025-10-223-4/+52
| | | | | | | | token Previously, the split operation would produce incorrect results if the bound of the user-provided string overlaps with the address of a default-constructed string. Introduce a sentinel value to ensure that such overlap are no longer possible. Use additional boolean flag to check for the similar problem in the iterator-based version of algorithm. commit_hash:6590787dc4c0319375efa3630a7146e31eed5e89
* Use 'size' instead of 'ysize'.akhropov2025-10-071-1/+1
| | | | commit_hash:2992608384ed9b84c3f523bd2225a7ece2eeb9fc
* Remove a useless commentakhropov2025-09-211-2/+0
| | | | commit_hash:678d75c67121dce4b0007e25b24c4e6ef173f8a8
* [util] track the lifetime of strings passed through the StripString function ↵swarmer2025-03-082-0/+82
| | | | | | | | | | | | | family Specialize StripString functions for the std::string_view and TStringBuf types. An example of erroneous code in which the compiler will be able to detect a problem with the lifetime of temporary string: ``` TStringBuf sb = StripString(TStringBuf{" abc "s}); Use(sb); // segfault ``` commit_hash:ad47648de30fd1a7e59d39a8ec3918fd1484a0ba
* Part of PR. Stylenae2022024-11-204-15/+30
| | | | | Часть большого ПР REVIEW:7264088 commit_hash:0f5b03fbbed0ac30f734943309e3ef5cd4d7a30e
* Add a clarifying comment about exceptions in TryFromString* functionsakhropov2024-11-191-0/+1
| | | | commit_hash:60b664d99f74a0d1ec00e0ab843e87583a5360a4
* StringSplitter: recreate State after copyswarmer2024-10-162-0/+58
| | | | commit_hash:75f3a4a20b797f07c51c63b96f0f1e1374707f33
* check lifetime bound of output streamsswarmer2024-09-261-1/+1
| | | | commit_hash:17de7afe0f415c511e587b2f2607cbbc2348742e
* FixNamespaceComments in /utildmasloff2024-09-0521-28/+28
| | | | | FixNamespaceComments in /util bb9152570d7c258798644ead5a59f604de05ef3b
* Set SpacesInLineCommentPrefix to 1 in /utildmasloff2024-08-175-12/+12
| | | | | Set SpacesInLineCommentPrefix to 1 in /util 3853f9ec5143722c1bebd8dc0ffc9b61a6c17657
* Intermediate changesrobot-piglet2024-08-011-7/+14
|
* Fixed Strip function usage with system std::stringbrgayazov2024-07-291-2/+2
| | | | db0a00cc7d5e1391deed4254e71b5ac9ce01919b
* Use ::strnicmp instead of strnicmp (fix build errors in files that use ↵vadim-xd2024-06-092-7/+7
| | | | | | namespace NUri) 3a7cf9869f888e3d09fc6c4c00c38db97f3a62ed
* Intermediate changesrobot-piglet2024-04-023-6/+0
|
* WebAssembly in utildtorilov2024-03-281-1/+1
| | | | b46c1e446c9d0f9393bf688b26db810f60add0f6
* Library import 6 (#888)AlexSm2024-01-092-0/+74
|
* Intermediate changesrobot-piglet2023-12-171-2/+2
|
* detect dangling references to temporary TStringBuilder objectswarmer2023-12-151-2/+2
|
* fix codestyle: remove semicolonswarmer2023-12-141-1/+1
|
* add attribute to detect lifetime bound errorsswarmer2023-12-112-7/+18
| | | | | | | Add wrapper for [[clang::lifetimebound]] attribute. Mark `ToString(TString)` functions with a new attibute. Preserve rvalue reference type when ToString applied to a temporary string.
* Add string_utils libvadim-xd2023-12-051-6/+6
|
* Unconditionally provide `FromString<std::fs::path>()`thegeorg2023-11-291-3/+0
| | | | This is a follow-up for rXXXXXX.
* Don't zero out unused bytes in TIntStringBuf at runtimevadim-xd2023-11-201-3/+9
|
* TSplitRange::Count fixprout2023-11-022-2/+5
|
* Y_VERIFY->Y_ABORT_UNLESS at ^uilnurkh2023-10-101-3/+3
| | | | https://clubs.at.yandex-team.ru/arcadia/29404
* [util] Turn all Collapse / CollapseInPlace overloads into template functions ↵ppavel962023-06-222-5/+25
| | | | to support arbitrary string types
* add ymake export to ydbalexv-smirnov2023-06-133-0/+50
|
* Remove extra semicolon (util)bulatman2023-06-121-3/+3
|
* Revert ymake build from ydb oss exportalexv-smirnov2023-03-283-50/+0
|
* (no commit message)pg2023-03-283-17/+17
|
* More precise buffer allocation based on base and type, more testsosidorkin2023-03-252-12/+37
|
* Follow up to rXXXXXX: Fix builds on MACs that are not in autоbuildosidorkin2023-03-231-2/+1
| | | | | | https://paste.yandex-team.ru/804bf63f-d433-481e-945b-b555fb15be21 не светилось на CI'ных сборках. Разбираться с автосборкой будут в
* util: Add constexpr int to string conversion class. This will allow us not ↵osidorkin2023-03-233-70/+80
| | | | to have heap allocations when joining ints to string
* add library/cpp/actors, ymake build to ydb oss exportalexv-smirnov2023-03-153-0/+50
|
* Introduce TryFromString returning TMaybeevelkin2022-08-092-2/+59
| | | | | | | | | | | Позволяем писать без неиницилизированных переменных по месту использования. Вот такую красоту например: ``` if (auto a = TryFromString<T>(str)) { что-то делаем с \*a } ```
* add [[nodiscard]] attribute to Strip functionstobo2022-08-041-12/+10
|
* fix ya.makemonster2022-07-0713-879/+0
|
* util: Flatten cython tests layoutthegeorg2022-06-031-0/+13
| | | | ref:7427208d08ebeb9e88247fb7dac6445bc814d756
* [util] StripInPlace should modify string in-placeswarmer2022-05-243-22/+107
| | | | ref:2aec19528c2378a0994534ec032550413a095389
* piglet: Extract metadata from commit messagethegeorg2022-05-121-0/+5
| | | | | | | * Introduce `CommitMetadata` struct with structured metadata (all the fields are optional) * Drop `class Author` and use `NLibgit2::TSignature` directly instead ref:3aae28cb614b3c611f8abb2b1c12ff114aaed46f
* Add Collapse variant for utf-32 stringsOleg Sidorkin2022-04-163-5/+32
| | | | ref:5897581c4d2be8d8775525221d2d910c04d788b8
* remove unused includestobo2022-04-071-1/+0
| | | | ref:f8c119cf3a796a59ab5be4424e5364ba6a201d40
* intermediate changesarcadia-devtools2022-03-1515-214/+0
| | | | ref:ca7a95e8c9a9d780f96497136a152091d54e61b5
* Support std::filesystem::path in Arcadia streamsthegeorg2022-03-031-1/+10
| | | | ref:11bbdd83544b9579747dd12d51395840bda86faf
* clang-tidy - move-constructor and move-assignment operators should be marked ↵tobo2022-02-281-1/+1
| | | | | | noexcept + pass some args by reference ref:5da43163e6b3c2499597234dc80ad47042259013
* DTCC-822 Put double-conversion under yamakershadchin2022-02-251-1/+1
| | | | ref:50f8b947dedd3183d21db08bf8ab226bb09535d1