В Ruby %Q
предоставляет строку с двойными кавычками, поэтому:
%Q(mixed block of javascript and ruby) #=> "mixed block of javascript and ruby"
<<-CODE
- это то, что Руби называет Здесь документом , или просто heredoc . Это механизм создания строк произвольного формата с сохранением специальных символов, таких как новые строки и табуляции.
Heredoc создается, предшествуя тексту <<
, за которым следует строка разделителя, которую вы хотите использовать, чтобы отметить конец текста.
text = <<-DOC
To be, or not to be: that is the question
William Shakespeare
DOC
Когда эта строка печатается, она выглядит точно так же, как она была введена вместе со всеми новыми строками и вкладками:
To be, or not to be: that is the question
William Shakespeare