Spec-Zone.ru › Homebrew

Класс: Parser::Source::Rewriter Устарел

Наследует:
Object
  • Object
  • Parser::Source::Rewriter
показать все
Расширен модулем:
Deprecation
Определён в:
sorbet/rbi/parser@3.3.8.0.rbi

Обзор

Устарело.

Используйте TreeRewriter

Rewriter устарел. Вместо него используйте TreeRewriter.

TreeRewriter обладает более простыми семантическими правилами и настраиваемыми политиками обработки конфликтов изменений. Ознакомьтесь с документацией.

Имейте в виду:

  • Rewriter отбрасывал end_pos заданного диапазона для insert_before, а begin_pos — для insert_after. В TreeRewriter эти значения имеют смысл.
  • Методы TreeRewriter wrap/insert_before/insert_after по умолчанию допускают множественные операции, тогда как Rewriter выдавал ошибки конфликтов, если вызывалась версия без суффикса «_multi».
  • Наиболее близкая к поведению Rewriter политика TreeRewriter: different_replacements: :raise, swallowed_insertions: :raise, crossing_deletions: :accept

source://parser//lib/parser/source/rewriter.rb#31

Определено в пространстве имён

Классы: Action

Сводка констант свернуть

DEPRECATION_WARNING =

source://parser//lib/parser/source/rewriter.rb#504

T.let(T.unsafe(nil), String)

Сводка методов экземпляра свернуть

  • #diagnostics ⇒ Diagnostic::Engine

    source://parser//lib/parser/source/rewriter.rb#33.

  • #initialize(source_buffer) ⇒ Rewriter конструктор устарел Устарело.

    Используйте TreeRewriter

  • #insert_after(range, content) ⇒ Rewriter устарел Устарело.

    Используйте TreeRewriter#insert_after

  • #insert_after_multi(range, content) ⇒ Rewriter устарел Устарело.

    Используйте TreeRewriter#insert_after

  • #insert_before(range, content) ⇒ Rewriter устарел Устарело.

    Используйте TreeRewriter#insert_before

  • #insert_before_multi(range, content) ⇒ Rewriter устарел Устарело.

    Используйте TreeRewriter#insert_before

  • #process ⇒ String устарел Устарело.

    Используйте TreeRewriter#process

  • #remove(range) ⇒ Rewriter устарел Устарело.

    Используйте TreeRewriter#remove

  • #replace(range, content) ⇒ Rewriter устарел Устарело.

    Используйте TreeRewriter#replace

  • #source_buffer ⇒ Source::Buffer

    source://parser//lib/parser/source/rewriter.rb#32.

  • #transaction ⇒ Object устарел Устарело.

    Используйте TreeRewriter#transaction

  • #wrap(range, before, after) ⇒ Rewriter устарел Устарело.

    Используйте TreeRewriter#wrap

Методы, включённые из Deprecation

warn_of_deprecation, warned_of_deprecation=

Подробное описание конструкторов

#initialize(source_buffer) ⇒ Rewriter

Устарело.

Используйте TreeRewriter

source://parser//lib/parser/source/rewriter.rb#39

Параметры:

  • source_buffer (Source::Buffer)


6285
# File 'sorbet/rbi/parser@3.3.8.0.rbi', line 6285

def initialize(source_buffer); end

Подробное описание методов экземпляра

#diagnostics ⇒ Diagnostic::Engine

source://parser//lib/parser/source/rewriter.rb#33

Возвращает:

  • (Diagnostic::Engine)


6291
# File 'sorbet/rbi/parser@3.3.8.0.rbi', line 6291

def diagnostics; end

#insert_after(range, content) ⇒ Rewriter

Устарело.

Используйте TreeRewriter#insert_after

Вставляет новый код после указанного диапазона исходного кода.

source://parser//lib/parser/source/rewriter.rb#131

Параметры:

  • range (Range)
  • content (String)

Возвращает:

  • (Rewriter) —

    self

Вызывает исключение:

  • (ClobberingError) —

    при обнаружении конфликта изменений



6303
# File 'sorbet/rbi/parser@3.3.8.0.rbi', line 6303

def insert_after(range, content); end

#insert_after_multi(range, content) ⇒ Rewriter

Устарело.

Используйте TreeRewriter#insert_after

Вставляет новый код после указанного диапазона исходного кода, позволяя выполнять другие вставки в той же позиции. Обратите внимание: вставка, выполняемая при последующем вызове, располагается после более ранней вставки в той же позиции в изменённом исходном коде.

source://parser//lib/parser/source/rewriter.rb#153

Примеры:

Вставка ')]'

rewriter.
insert_after_multi(range, ')').
insert_after_multi(range, ']').
process

Параметры:

  • range (Range)
  • content (String)

Возвращает:

  • (Rewriter) —

    self

Вызывает исключение:

  • (ClobberingError) —

    при обнаружении конфликта изменений



6323
# File 'sorbet/rbi/parser@3.3.8.0.rbi', line 6323

def insert_after_multi(range, content); end

#insert_before(range, content) ⇒ Rewriter

Устарело.

Используйте TreeRewriter#insert_before

Вставляет новый код перед указанным диапазоном исходного кода.

source://parser//lib/parser/source/rewriter.rb#80

Параметры:

  • range (Range)
  • content (String)

Возвращает:

  • (Rewriter) —

    self

Вызывает исключение:

  • (ClobberingError) —

    при обнаружении конфликта изменений



6335
# File 'sorbet/rbi/parser@3.3.8.0.rbi', line 6335

def insert_before(range, content); end

#insert_before_multi(range, content) ⇒ Rewriter

Устарело.

Используйте TreeRewriter#insert_before

Вставляет новый код перед указанным диапазоном исходного кода, позволяя выполнять другие вставки в той же позиции. Обратите внимание: вставка, выполняемая при последующем вызове, располагается перед более ранней вставкой в той же позиции в изменённом исходном коде.

source://parser//lib/parser/source/rewriter.rb#117

Примеры:

Вставка '[('

rewriter.
insert_before_multi(range, '(').
insert_before_multi(range, '[').
process

Параметры:

  • range (Range)
  • content (String)

Возвращает:

  • (Rewriter) —

    self

Вызывает исключение:

  • (ClobberingError) —

    при обнаружении конфликта изменений



6355
# File 'sorbet/rbi/parser@3.3.8.0.rbi', line 6355

def insert_before_multi(range, content); end

#process ⇒ String

Устарело.

Используйте TreeRewriter#process

Применяет все запланированные изменения к source_buffer и возвращает изменённый исходный код в виде новой строки.

source://parser//lib/parser/source/rewriter.rb#178

Возвращает:

  • (String)


6365
# File 'sorbet/rbi/parser@3.3.8.0.rbi', line 6365

def process; end

#remove(range) ⇒ Rewriter

Устарело.

Используйте TreeRewriter#remove

Удаляет диапазон исходного кода.

source://parser//lib/parser/source/rewriter.rb#67

Параметры:

  • range (Range)

Возвращает:

  • (Rewriter) —

    self

Вызывает исключение:

  • (ClobberingError) —

    при обнаружении конфликта изменений



6376
# File 'sorbet/rbi/parser@3.3.8.0.rbi', line 6376

def remove(range); end

#replace(range, content) ⇒ Rewriter

Устарело.

Используйте TreeRewriter#replace

Заменяет код диапазона исходного кода range на content.

source://parser//lib/parser/source/rewriter.rb#167

Параметры:

  • range (Range)
  • content (String)

Возвращает:

  • (Rewriter) —

    self

Вызывает исключение:

  • (ClobberingError) —

    при обнаружении конфликта изменений



6388
# File 'sorbet/rbi/parser@3.3.8.0.rbi', line 6388

def replace(range, content); end

#source_buffer ⇒ Source::Buffer

source://parser//lib/parser/source/rewriter.rb#32

Возвращает:

  • (Source::Buffer)


6394
# File 'sorbet/rbi/parser@3.3.8.0.rbi', line 6394

def source_buffer; end

#transaction ⇒ Object

Устарело.

Используйте TreeRewriter#transaction

Предоставляет защищённый блок, в котором последовательность нескольких операций перезаписи выполняется атомарно. Если какая-либо операция завершается неудачей из-за конфликта изменений, все операции отменяются.

source://parser//lib/parser/source/rewriter.rb#216

Примеры:

begin
rewriter.transaction do
rewriter.insert_before(range_of_something, '(')
rewriter.insert_after(range_of_something, ')')
end
rescue Parser::ClobberingError
end

Вызывает исключение:

  • (RuntimeError) —

    если блок не передан

  • (RuntimeError) —

    если транзакция уже выполняется



6414
# File 'sorbet/rbi/parser@3.3.8.0.rbi', line 6414

def transaction; end

#wrap(range, before, after) ⇒ Rewriter

Устарело.

Используйте TreeRewriter#wrap

Вставляет новый код перед и после заданного диапазона исходного кода.

source://parser//lib/parser/source/rewriter.rb#94

Параметры:

  • range (Range)
  • before (String)
  • after (String)

Возвращает:

  • (Rewriter) —

    self

Вызывает исключение:

  • (ClobberingError) —

    если обнаружено перекрытие



6427
# File 'sorbet/rbi/parser@3.3.8.0.rbi', line 6427

def wrap(range, before, after); end

© 2009–present Homebrew contributors
Licensed under the BSD 2-Clause License.
https://docs.brew.sh/rubydoc/Parser/Source/Rewriter.html

Spec-Zone.ru

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