class PrettyPrint::SingleLine
PrettyPrint::SingleLine используется методом PrettyPrint.singleline_format
Он передаётся так, чтобы быть похожим на сам объект PrettyPrint, отвечая на вызовы:
но вывод при этом не содержит разрывов строк
Открытые методы класса
# File lib/prettyprint.rb, line 505 def initialize(output, maxwidth=nil, newline=nil) @output = output @first = [true] end
Создаёт объект PrettyPrint::SingleLine
Аргументы:
-
output—String(или аналогичный объект) для хранения отформатированного текста. Должен поддерживать метод ‘<<’ -
maxwidth— позиция аргумента сохранена для совместимости.This argument is a noop.
-
newline— позиция аргумента сохранена для совместимости.This argument is a noop.
Открытые методы экземпляра
# File lib/prettyprint.rb, line 520 def breakable(sep=' ', width=nil) @output << sep end
Добавляет sep к выводимому тексту. По умолчанию sep — ‘ ’
Аргумент width присутствует для совместимости. Он не используется.
# File lib/prettyprint.rb, line 552 def first? result = @first[-1] @first[-1] = false result end
Этот метод используется как предикат и должен вызываться первым.
# File lib/prettyprint.rb, line 539 def group(indent=nil, open_obj='', close_obj='', open_width=nil, close_width=nil) @first.push true @output << open_obj yield @output << close_obj @first.pop end
Открывает блок для группировки объектов, которые будут красиво отформатированы.
Аргументы:
-
indent— неиспользуемый аргумент. Присутствует для совместимости. -
open_obj— текст, добавляемый перед блоком. По умолчанию — ” -
close_obj— текст, добавляемый после блока. По умолчанию — ” -
open_width— неиспользуемый аргумент. Присутствует для совместимости. -
close_width— неиспользуемый аргумент. Присутствует для совместимости.
# File lib/prettyprint.rb, line 513 def text(obj, width=nil) @output << obj end
Добавляет obj к выводимому тексту.
Аргумент width присутствует для совместимости. Он не используется.
Ruby Core © 1993–2025 Yukihiro Matsumoto
Licensed under the Ruby License.
Ruby Standard Library © contributors
Licensed under their own licenses.