MCPcopy Create free account
hub / github.com/ashvardanian/StringZilla / try_erase

Method try_erase

include/stringzilla/stringzilla.hpp:3477–3483  ·  view source on GitHub ↗

* @brief Erases @b (in-place) a range of characters defined with signed offsets. * @return Number of characters removed. */

Source from the content-addressed store, hash-verified

3475 * @return Number of characters removed.
3476 */
3477 size_type try_erase(difference_type signed_start_offset = 0, difference_type signed_end_offset = npos) noexcept {
3478 sz_size_t normalized_offset, normalized_length;
3479 sz_ssize_clamp_interval(size(), signed_start_offset, signed_end_offset, &normalized_offset, &normalized_length);
3480 if (!normalized_length) return false;
3481 sz_string_erase(&string_, normalized_offset, normalized_length);
3482 return normalized_length;
3483 }
3484
3485 /**
3486 * @brief Inserts @b (in-place) a range of characters at a given signed offset.

Callers 1

Calls 2

sz_ssize_clamp_intervalFunction · 0.85
sz_string_eraseFunction · 0.85

Tested by

no test coverage detected