Я думаю, что он пришел из Perl и хотел бы получить все переменные, определенные в скрипте, и сериализовать их. Таким образом, когда он загрузит файл, он вернет их обратно.
Я все еще ищу, как получить список переменных, но сериализация будет выполнена с использованием Marshal.dump, а их чтение будет выполнено с помощью Marshal.load. Я отредактирую пост, как только узнаю, как получить список всех определенных переменных.
РЕДАКТИРОВАТЬ: нашел!
Вы можете получить список всех переменных, вызвав эти методы:
local_variables</code>
<code>global_variables
И если вы еще не получили свой код сериализации, я бы предложил что-то вроде этого:
- создайте класс или экземпляр Struct, который содержит имя переменной и значение переменной, и добавьте их в массив:
local_variables.each {|var| my_array << MyVarObject.new(var,eval(var)) } # eval is used to get the value of the variable
и затем сериализовать массив:
data = Marshal.dump(my_array)
File.open("myfile.ser","w") do |file|
file.puts data
end