Spec-Zone.ru › Ruby 3.4

класс PrettyPrint::SingleLine

Родитель:
Объект

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–2024 Yukihiro Matsumoto
Licensed under the Ruby License.
Ruby Standard Library © contributors
Licensed under their own licenses.

Spec-Zone.ru

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