Я готовлю строку, которая будет eval
'ред. Строка будет содержать предложение, построенное из существующего Array
. У меня есть следующее:
def stringify(arg)
return "[ '" + arg.join("', '") + "' ]" if arg.class == Array
"'#{arg}'"
end
a = [ 'a', 'b', 'c' ]
eval_str = 'p ' + stringify(a)
eval(eval_str)
, которая печатает строку ["a", "b", "c"]
.
Есть ли более идиоматический способ сделать это? Array#to_s
не сокращает это. Есть ли способ присвоить выходные данные метода p
переменной?
Спасибо!