Spec-Zone.ru › Ruby 2.7

класс PrettyPrint::SingleLine

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

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

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

  • text

  • breakable

  • вложенность

  • group

  • очистка

  • first?

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

Публичные методы класса

new(output, maxwidth=nil, newline=nil) Показать исходный код
# File lib/prettyprint.rb, line 503
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 518
def breakable(sep=' ', width=nil)
  @output << sep
end

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

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

first?() Показать исходный код
# File lib/prettyprint.rb, line 550
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 537
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 511
def text(obj, width=nil)
  @output << obj
end

Добавляет obj к выводимому тексту.

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

Ruby Core © 1993–2017 Yukihiro Matsumoto
Licensed under the Ruby License.
Ruby Standard Library © contributors
Licensed under their own licenses.

Spec-Zone.ru

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