Он добавляет элемент в коллекцию.
Как именно это происходит, скрыто от вас.Возможно, Prawn::Text::Box.extensions
просто возвращает обычный массив, в этом случае это поведение по умолчанию.Но может также случиться так, что это какой-то другой класс, и ребята из Prawn написали пользовательский оператор <<
для выполнения любой работы, необходимой для установки расширения.
К сожалению, нет простого способа сказать, если не считатькопаясь в источнике, выясняя, что такое класс Prawn::Text::Box.extensions
, а затем, если у него определена пользовательская функция <<
.К счастью, все это с открытым исходным кодом на github ...
Надеюсь, что это помогает (и удачи, если вы продолжаете копать)!