Я собирался через блог и нашел следующий фрагмент кода:Рубин Как можно разморозить строку, используя указатель
require 'fiddle'
str = 'water'.freeze
str.frozen? # true
memory_address = str.object_id * 2
Fiddle::Pointer.new(memory_address)[1] &= ~8
str.frozen? # false
Может кто-нибудь объяснить, что я не мог понять, как следующая строка фактически разморозить строку.
Fiddle::Pointer.new(memory_address)[1] &= ~8