Spec-Zone.ru › Ruby 3.4
  1. PrettyPrint::
  2. SingleLine

class PrettyPrint::SingleLine

Родительский класс:
Object

PrettyPrint::SingleLine используется методом PrettyPrint.singleline_format

Он передаётся так, чтобы быть похожим на сам объект PrettyPrint, отвечая на вызовы:

  • text

  • breakable

  • nest

  • group

  • flush

  • first?

но вывод при этом не содержит разрывов строк

Открытые методы класса

new (output, maxwidth=nil, newline=nil) Показать исходный код
# 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.

Открытые методы экземпляра

breakable (sep=' ', width=nil) Показать исходный код
# File lib/prettyprint.rb, line 520
def breakable(sep=' ', width=nil)
  @output << sep
end

Добавляет sep к выводимому тексту. По умолчанию sep — ‘ ’

Аргумент width присутствует для совместимости. Он не используется.

first? () Показать исходный код
# File lib/prettyprint.rb, line 552
def first?
  result = @first[-1]
  @first[-1] = false
  result
end

Этот метод используется как предикат и должен вызываться первым.

group (indent=nil, open_obj='', close_obj='', open_width=nil, close_width=nil) { || ... } Показать исходный код
# 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 — неиспользуемый аргумент. Присутствует для совместимости.

text (obj, width=nil) Показать исходный код
# 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API