Spec-Zone.ru › Ruby 3.4

класс SyntaxSuggest::RipperErrors

Родитель:
Ripper

Capture ошибки разбора из Ripper

Prism возвращает ошибки с их сообщениями, но Ripper нет. Чтобы получить их, нужно создать собственный подкласс.

Пример:

puts RipperErrors.new(" def foo").call.errors
# => ["syntax error, unexpected end-of-input, expecting ';' or '\\n'"]

Атрибуты

errors [R]

Публичные методы экземпляров

call ()
Исходный код
# File lib/syntax_suggest/ripper_errors.rb, line 30
def call
  @run_once ||= begin
    @errors = []
    parse
    true
  end
  self
end
compile_error (msg)
Псевдоним для: on_parse_error
on_alias_error (msg)
Псевдоним для: on_parse_error
on_assign_error (msg)
Псевдоним для: on_parse_error
on_class_name_error (msg)
Псевдоним для: on_parse_error
on_param_error (msg)
Псевдоним для: on_parse_error
on_parse_error (msg)
Исходный код
# File lib/syntax_suggest/ripper_errors.rb, line 19
def on_parse_error(msg)
  @errors ||= []
  @errors << msg
end

Происходит от ripper, вызывается при каждой ошибке разбора, msg — строка

Также используемый псевдоним: on_alias_error, on_assign_error, on_class_name_error, on_param_error, compile_error

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