Current Path: > > opt > alt > > ruby32 > share > ruby > syntax_suggest
Operation : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 Software : Apache Server IP : 162.0.232.56 | Your IP: 216.73.216.111 Domains : 1034 Domain(s) Permission : [ 0755 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
capture | Directory | - | - | |
api.rb | File | 5281 bytes | April 24 2025 07:53:46. | |
around_block_scan.rb | File | 7067 bytes | April 24 2025 07:53:46. | |
block_expand.rb | File | 4991 bytes | April 24 2025 07:53:46. | |
capture_code_context.rb | File | 6826 bytes | April 24 2025 07:53:46. | |
clean_document.rb | File | 8947 bytes | April 24 2025 07:53:46. | |
cli.rb | File | 3190 bytes | April 24 2025 07:53:46. | |
code_block.rb | File | 2179 bytes | April 24 2025 07:53:46. | |
code_frontier.rb | File | 5752 bytes | April 24 2025 07:53:46. | |
code_line.rb | File | 6615 bytes | April 24 2025 07:53:46. | |
code_search.rb | File | 3908 bytes | April 24 2025 07:53:46. | |
core_ext.rb | File | 3076 bytes | April 24 2025 07:53:46. | |
display_code_with_line_numbers.rb | File | 1812 bytes | April 24 2025 07:53:46. | |
display_invalid_blocks.rb | File | 1795 bytes | April 24 2025 07:53:46. | |
explain_syntax.rb | File | 2465 bytes | April 24 2025 07:53:46. | |
left_right_lex_count.rb | File | 4156 bytes | April 24 2025 07:53:46. | |
lex_all.rb | File | 1145 bytes | April 24 2025 07:53:46. | |
lex_value.rb | File | 1540 bytes | April 24 2025 07:53:46. | |
parse_blocks_from_indent_line.rb | File | 1536 bytes | April 24 2025 07:53:46. | |
pathname_from_message.rb | File | 1454 bytes | April 24 2025 07:53:46. | |
priority_engulf_queue.rb | File | 1295 bytes | April 24 2025 07:53:46. | |
priority_queue.rb | File | 2046 bytes | April 24 2025 07:53:46. | |
ripper_errors.rb | File | 837 bytes | April 24 2025 07:53:46. | |
scan_history.rb | File | 2991 bytes | April 24 2025 07:53:46. | |
unvisited_lines.rb | File | 705 bytes | April 24 2025 07:53:46. | |
version.rb | File | 76 bytes | April 24 2025 07:53:46. |
# frozen_string_literal: true module SyntaxSuggest # Holds elements in a priority heap on insert # # Instead of constantly calling `sort!`, put # the element where it belongs the first time # around # # Example: # # queue = PriorityQueue.new # queue << 33 # queue << 44 # queue << 1 # # puts queue.peek # => 44 # class PriorityQueue attr_reader :elements def initialize @elements = [] end def <<(element) @elements << element bubble_up(last_index, element) end def pop exchange(0, last_index) max = @elements.pop bubble_down(0) max end def length @elements.length end def empty? @elements.empty? end def peek @elements.first end def to_a @elements end # Used for testing, extremely not performant def sorted out = [] elements = @elements.dup while (element = pop) out << element end @elements = elements out.reverse end private def last_index @elements.size - 1 end private def bubble_up(index, element) return if index <= 0 parent_index = (index - 1) / 2 parent = @elements[parent_index] return if (parent <=> element) >= 0 exchange(index, parent_index) bubble_up(parent_index, element) end private def bubble_down(index) child_index = (index * 2) + 1 return if child_index > last_index not_the_last_element = child_index < last_index left_element = @elements[child_index] right_element = @elements[child_index + 1] child_index += 1 if not_the_last_element && (right_element <=> left_element) == 1 return if (@elements[index] <=> @elements[child_index]) >= 0 exchange(index, child_index) bubble_down(child_index) end def exchange(source, target) a = @elements[source] b = @elements[target] @elements[source] = b @elements[target] = a end end end
SILENT KILLER Tool