ͨͷ͍͠StringϓϩάϥϛϯάݴޠRuby30पه೦Πϕϯτ2023-02-25 ima1zumi
View Slide
Introduction- @ima1zumi (Mari Imaizumi)- ӬγεςϜϚωδϝϯτॴଐ- IRB and Reline committer- จࣈͱจࣈίʔυ͕͖
Powered by
Ruby30प͓ΊͰͱ͏͍͟͝·͢🎉
Rubyͷָ͍͠ͱ͜Ζ
String &Encoding
ࠓ͔Β͑Δจࣈͱจࣈίʔυૢ࡞3બ
ᶃ ɺόΠτྻ͔Βจࣈʹ͢
ɺόΠτྻ͔Βจࣈʹ͢• Integer#chr• Array#pack• String#force_encoding
Integer#chr(encoding)• ίʔυϙΠϯτΛจࣈͱͯ͠ղऍ• Ҿͳ͠ͷ߹US-ASCIIɺASCII-8BITɺEncoding.default_internalͷॱͰղऍ
Array#pack• ྻͷ༰ΛҾʹैͬͯύοΫ• "U*" Unicode codepointΛUTF-8ͱͯ͠ղऍͯ͠ฦ͢
String#force_encoding• จࣈίʔυͷΈΛมߋ͠ɺόΠτྻมߋ͠ͳ͍• ͜͜ͰόΠφϦ(ASCII_8BIT)ͷจࣈίʔυΛUTF-8ʹมߋ
ᶄจࣈԽ͚Λ࡞Δ
จࣈԽ͚Λ࡞Δ• String#force_encoding• String#encode
จࣈԽ͚Λ࡞Δ
https://github.com/integrations/slack/issues/1416
ããã«ã¡ã¯ä¸ç͜Μʹͪੈք
ᶅจࣈίʔυΛRubyͰRubyʹՃ
จࣈίʔυΛՃ͢Δ• Encoding#replicate• ҙޙड़
Δ͜ͱ• 1. ࡞Γ͍ͨEncodingͷܗʹͳΔEncodingΛܾΊΔ• 2. Encoding#replicate͢Δ• 3. มϩδοΫΛॻ͘
จࣈίʔυΛఆٛ͢Δ
มϩδοΫΛॻ͘
https://github.com/ima1zumi/ruby_encoding_iroha
Remove Encoding#replicateRuby 3.3
Welcome to faster Encodings