PHP 8.2.31
Preview: ripper_errors.rb Size: 960 B
/proc/thread-self/root/opt/alt/ruby33/share/ruby/syntax_suggest/ripper_errors.rb

# frozen_string_literal: true

module SyntaxSuggest
  # Capture parse errors from Ripper
  #
  # Prism returns the errors with their messages, but Ripper
  # does not. To get them we must make a custom subclass.
  #
  # Example:
  #
  #   puts RipperErrors.new(" def foo").call.errors
  #   # => ["syntax error, unexpected end-of-input, expecting ';' or '\\n'"]
  class RipperErrors < Ripper
    attr_reader :errors

    # Comes from ripper, called
    # on every parse error, msg
    # is a string
    def on_parse_error(msg)
      @errors ||= []
      @errors << msg
    end

    alias_method :on_alias_error, :on_parse_error
    alias_method :on_assign_error, :on_parse_error
    alias_method :on_class_name_error, :on_parse_error
    alias_method :on_param_error, :on_parse_error
    alias_method :compile_error, :on_parse_error

    def call
      @run_once ||= begin
        @errors = []
        parse
        true
      end
      self
    end
  end
end

Directory Contents

Dirs: 1 × Files: 26

Name Size Perms Modified Actions
capture DIR
- drwxr-xr-x 2026-04-30 07:09:17
Edit Download
6.07 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
6.90 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
4.88 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
6.67 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
8.73 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
3.12 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
2.13 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
5.61 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
6.58 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
3.81 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
2.65 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
1.77 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
1.75 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
2.69 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
4.06 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
1.66 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
1.50 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
774 B lrw-r--r-- 2026-04-07 13:52:15
Edit Download
1.50 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
1.42 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
1.26 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
2.00 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
960 B lrw-r--r-- 2026-04-07 13:52:15
Edit Download
2.92 KB lrw-r--r-- 2026-04-07 13:52:15
Edit Download
705 B lrw-r--r-- 2026-04-07 13:52:15
Edit Download
76 B lrw-r--r-- 2026-04-07 13:52:15
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).