Spec-Zone.ru › Ruby 3

класс 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