X7ROOT File Manager
Current Path:
/opt/alt/ruby33/share/ruby/syntax_suggest
opt
/
alt
/
ruby33
/
share
/
ruby
/
syntax_suggest
/
ðŸ“
..
📄
api.rb
(6.07 KB)
📄
around_block_scan.rb
(6.9 KB)
📄
block_expand.rb
(4.88 KB)
ðŸ“
capture
📄
capture_code_context.rb
(6.67 KB)
📄
clean_document.rb
(8.73 KB)
📄
cli.rb
(3.12 KB)
📄
code_block.rb
(2.13 KB)
📄
code_frontier.rb
(5.61 KB)
📄
code_line.rb
(6.62 KB)
📄
code_search.rb
(3.81 KB)
📄
core_ext.rb
(3.02 KB)
📄
display_code_with_line_numbers.rb
(1.77 KB)
📄
display_invalid_blocks.rb
(1.75 KB)
📄
explain_syntax.rb
(2.69 KB)
📄
left_right_lex_count.rb
(4.06 KB)
📄
lex_all.rb
(1.66 KB)
📄
lex_value.rb
(1.5 KB)
📄
parse_blocks_from_indent_line.rb
(1.5 KB)
📄
pathname_from_message.rb
(1.42 KB)
📄
priority_engulf_queue.rb
(1.26 KB)
📄
priority_queue.rb
(2 KB)
📄
ripper_errors.rb
(960 B)
📄
scan_history.rb
(2.92 KB)
📄
unvisited_lines.rb
(705 B)
📄
version.rb
(76 B)
Editing: core_ext.rb
# frozen_string_literal: true # Ruby 3.2+ has a cleaner way to hook into Ruby that doesn't use `require` if SyntaxError.method_defined?(:detailed_message) module SyntaxSuggest # Mini String IO [Private] # # Acts like a StringIO with reduced API, but without having to require that # class. class MiniStringIO def initialize(isatty: $stderr.isatty) @string = +"" @isatty = isatty end attr_reader :isatty def puts(value = $/, **) @string << value end attr_reader :string end # SyntaxSuggest.module_for_detailed_message [Private] # # Used to monkeypatch SyntaxError via Module.prepend def self.module_for_detailed_message Module.new { def detailed_message(highlight: true, syntax_suggest: true, **kwargs) return super unless syntax_suggest require "syntax_suggest/api" unless defined?(SyntaxSuggest::DEFAULT_VALUE) message = super if path file = Pathname.new(path) io = SyntaxSuggest::MiniStringIO.new SyntaxSuggest.call( io: io, source: file.read, filename: file, terminal: highlight ) annotation = io.string annotation += "\n" unless annotation.end_with?("\n") annotation + message else message end rescue => e if ENV["SYNTAX_SUGGEST_DEBUG"] $stderr.warn(e.message) $stderr.warn(e.backtrace) end # Ignore internal errors message end } end end SyntaxError.prepend(SyntaxSuggest.module_for_detailed_message) else autoload :Pathname, "pathname" #-- # Monkey patch kernel to ensure that all `require` calls call the same # method #++ module Kernel # :stopdoc: module_function alias_method :syntax_suggest_original_require, :require alias_method :syntax_suggest_original_require_relative, :require_relative alias_method :syntax_suggest_original_load, :load def load(file, wrap = false) syntax_suggest_original_load(file) rescue SyntaxError => e require "syntax_suggest/api" unless defined?(SyntaxSuggest::DEFAULT_VALUE) SyntaxSuggest.handle_error(e) end def require(file) syntax_suggest_original_require(file) rescue SyntaxError => e require "syntax_suggest/api" unless defined?(SyntaxSuggest::DEFAULT_VALUE) SyntaxSuggest.handle_error(e) end def require_relative(file) if Pathname.new(file).absolute? syntax_suggest_original_require file else relative_from = caller_locations(1..1).first relative_from_path = relative_from.absolute_path || relative_from.path syntax_suggest_original_require File.expand_path("../#{file}", relative_from_path) end rescue SyntaxError => e require "syntax_suggest/api" unless defined?(SyntaxSuggest::DEFAULT_VALUE) SyntaxSuggest.handle_error(e) end end end
Upload File
Create Folder