summaryrefslogtreecommitdiff
path: root/string.c
AgeCommit message (Collapse)Author
2025-10-23use `SET_SHAREABLE`Koichi Sasada
to adopt strict shareable rule. * (basically) shareable objects only refer shareable objects * (exception) shareable objects can refere unshareable objects but should not leak reference to unshareable objects to Ruby world
2025-10-22[DOC] Tweaks for String#splitBurdetteLamar
2025-10-22[DOC] Tweaks for String#squeezeBurdetteLamar
2025-10-21[DOC] ”Tweaks for String#setbyteBurdetteLamar
2025-10-21[DOC] Tweaks for String#scrub (#14892)Burdette Lamar
2025-10-21[DOC] Tweaks for String#scrub! (#14893)Burdette Lamar
2025-10-21[DOC] Tweaks for String#scan (#14884)Burdette Lamar
2025-10-21[DOC] Tweaks for String#rstrip (#14881)Burdette Lamar
2025-10-20[DOC] Tweaks for String#rpartitionBurdetteLamar
2025-10-20[DOC] Tweaks for String#rstrip!BurdetteLamar
2025-10-17[DOC] Tweaks for String#rindexBurdette Lamar
2025-10-13[DOC] Tweaks for String#rjustBurdetteLamar
2025-10-13[DOC] Tweaks for String#rjustBurdetteLamar
2025-10-10[DOC] String slices doc (#14740)Burdette Lamar
2025-10-10Add ASSERT_vm_locking_with_barrierJohn Hawthorn
Previously we just had a comment stating that the code required a barrier. Turns out it's not too difficult to properly assert that. Co-authored-by: Luke Gruber <luke.gru@gmail.com>
2025-10-08[Bug #21629] Initialize `struct RString`Nobuyoshi Nakada
2025-10-01Tweaks for String#replaceBurdette Lamar
2025-10-01[DOC] Tweaks for String#reverse!Burdette Lamar
2025-09-30[DOC] Tweaks for String#reverseBurdetteLamar
2025-09-30[DOC] Tweaks for String#partitionBurdette Lamar
2025-09-28[DOC] Tweaks for String#prependBurdetteLamar
2025-09-26[DOC] More tweaks for String#hexBurdette Lamar
2025-09-17Null terminate newly created embedded stringsPeter Zhu
2025-09-17Clear out memory for newly alloated stringPeter Zhu
2025-09-15[DOC] Tweaks for String#octBurdette Lamar
2025-09-12[DOC] Tweaks for String#match (#14476)Burdette Lamar
2025-09-12[DOC] Tweaks for String#match? (#14477)Burdette Lamar
2025-09-12[DOC] Tweaks for String#lstripBurdette Lamar
2025-09-12Fix use of uninitialized memory in stringsPeter Zhu
Strings created from the C API with a len but no ptr have a buffer allocated and the length set, but the buffer is not zero'd. This causes use of uninitialized memory and allows reading memory that previously existed there. For example, the rb_str_tmp_new spec fails when we create a string with a large length greater than 24 bytes (since we zero the first 24 bytes of the slot).
2025-09-09[DOC] Tweaks for String#lstrip!BurdetteLamar
2025-08-26[DOC] Tweaks for String#inspectBurdette Lamar
2025-08-26[DOC] Tweaks for String#ljustBurdette Lamar
2025-08-25[DOC] Tweaks for String#linesBurdetteLamar
2025-08-21[DOC] Tweaks for String#insertBurdetteLamar
2025-08-21[DOC] Tweaks for String#hash (#14253)Burdette Lamar
2025-08-16[DOC] Tweaks for String#indexBurdetteLamar
2025-08-16[DOC] Tweaks for String#include?BurdetteLamar
2025-08-16[DOC] Tweaks for String#hexBurdetteLamar
2025-08-11Optimize `str_casecmp` length check using pointer endErim Icel
2025-08-05[DOC] Tweaks for String#gsub!BurdetteLamar
2025-08-05[DOC] Tweaks for String#gsubBurdette Lamar
2025-07-31[DOC] Tweaks for String#getbyteBurdetteLamar
2025-07-31[DOC] Tweaks for String#eql?BurdetteLamar
2025-07-23[DOC] Tweaks for String#each_grapheme_cluster (#13981)Burdette Lamar
2025-07-23[DOC] Tweaks for String#empty?Burdette Lamar
2025-07-23[DOC] Tweaks for String#each_lineBurdetteLamar
2025-07-23[DOC] Tweaks for String#each_codepointBurdetteLamar
2025-07-23[DOC] Tweaks for String#each_charBurdetteLamar
2025-07-21[DOC] Docs for String#dumpPeter Zhu
2025-07-21Introduce free function to rb_concurrent_set_funcsPeter Zhu
If we create a key but don't insert it (due to other Ractor winning the race), then it would leak memory if we don't free it. This introduces a new function to free that memory for this case.