SILENT KILLERPanel

Current Path: > > opt > alt > ruby34 > > share > rubygems > rubygems


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 ]

Files and Folders in: //opt/alt/ruby34//share/rubygems/rubygems

NameTypeSizeLast ModifiedActions
commands Directory - -
core_ext Directory - -
defaults Directory - -
ext Directory - -
gemcutter_utilities Directory - -
package Directory - -
request Directory - -
request_set Directory - -
resolver Directory - -
safe_marshal Directory - -
security Directory - -
source Directory - -
ssl_certs Directory - -
util Directory - -
vendor Directory - -
available_set.rb File 3075 bytes May 29 2025 13:39:48.
basic_specification.rb File 8329 bytes May 29 2025 13:39:49.
bundler_version_finder.rb File 2009 bytes May 29 2025 13:39:49.
ci_detector.rb File 3801 bytes May 29 2025 13:39:48.
command.rb File 16179 bytes May 29 2025 13:39:49.
command_manager.rb File 5778 bytes May 29 2025 13:39:49.
compatibility.rb File 1022 bytes May 29 2025 13:39:48.
config_file.rb File 16700 bytes May 29 2025 13:39:49.
defaults.rb File 7558 bytes May 29 2025 13:39:49.
dependency.rb File 8652 bytes May 29 2025 13:39:49.
dependency_installer.rb File 10144 bytes May 29 2025 13:39:49.
dependency_list.rb File 5684 bytes May 29 2025 13:39:49.
deprecate.rb File 5159 bytes May 29 2025 13:39:49.
doctor.rb File 3204 bytes May 29 2025 13:39:48.
errors.rb File 4635 bytes May 29 2025 13:39:48.
exceptions.rb File 7298 bytes May 29 2025 13:39:49.
ext.rb File 498 bytes May 29 2025 13:39:49.
gem_runner.rb File 2187 bytes May 29 2025 13:39:49.
gemcutter_utilities.rb File 11515 bytes May 29 2025 13:39:48.
gemspec_helpers.rb File 394 bytes May 29 2025 13:39:49.
install_default_message.rb File 349 bytes May 29 2025 13:39:49.
install_message.rb File 323 bytes May 29 2025 13:39:49.
install_update_options.rb File 6722 bytes May 29 2025 13:39:48.
installer.rb File 28403 bytes May 29 2025 13:39:49.
installer_uninstaller_utils.rb File 771 bytes May 29 2025 13:39:48.
local_remote_options.rb File 3675 bytes May 29 2025 13:39:48.
name_tuple.rb File 2442 bytes May 29 2025 13:39:49.
openssl.rb File 125 bytes May 29 2025 13:39:49.
package.rb File 19281 bytes May 29 2025 13:39:48.
package_task.rb File 3879 bytes May 29 2025 13:39:48.
path_support.rb File 1816 bytes May 29 2025 13:39:49.
platform.rb File 8608 bytes May 29 2025 13:39:49.
psych_tree.rb File 855 bytes May 29 2025 13:39:49.
query_utils.rb File 8703 bytes May 29 2025 13:39:48.
rdoc.rb File 660 bytes May 29 2025 13:39:49.
remote_fetcher.rb File 9604 bytes May 29 2025 13:39:48.
request.rb File 8910 bytes May 29 2025 13:39:49.
request_set.rb File 11558 bytes May 29 2025 13:39:49.
requirement.rb File 7298 bytes May 29 2025 13:39:48.
resolver.rb File 9659 bytes May 29 2025 13:39:49.
s3_uri_signer.rb File 6106 bytes May 29 2025 13:39:49.
safe_marshal.rb File 1969 bytes May 29 2025 13:39:49.
safe_yaml.rb File 1067 bytes May 29 2025 13:39:49.
security.rb File 22214 bytes May 29 2025 13:39:49.
security_option.rb File 1084 bytes May 29 2025 13:39:49.
shellwords.rb File 66 bytes May 29 2025 13:39:49.
source.rb File 5922 bytes May 29 2025 13:39:49.
source_list.rb File 2482 bytes May 29 2025 13:39:49.
spec_fetcher.rb File 7868 bytes May 29 2025 13:39:49.
specification.rb File 70688 bytes May 29 2025 13:39:49.
specification_policy.rb File 15964 bytes May 29 2025 13:39:48.
specification_record.rb File 5332 bytes May 29 2025 13:39:48.
stub_specification.rb File 5078 bytes May 29 2025 13:39:48.
target_rbconfig.rb File 1273 bytes May 29 2025 13:39:49.
text.rb File 2114 bytes May 29 2025 13:39:49.
uninstaller.rb File 11179 bytes May 29 2025 13:39:49.
unknown_command_spell_checker.rb File 411 bytes May 29 2025 13:39:49.
update_suggestion.rb File 1899 bytes May 29 2025 13:39:49.
uri.rb File 2436 bytes May 29 2025 13:39:48.
uri_formatter.rb File 784 bytes May 29 2025 13:39:48.
user_interaction.rb File 13417 bytes May 29 2025 13:39:48.
util.rb File 2519 bytes May 29 2025 13:39:48.
validator.rb File 3717 bytes May 29 2025 13:39:48.
vendored_molinillo.rb File 81 bytes May 29 2025 13:39:49.
vendored_net_http.rb File 233 bytes May 29 2025 13:39:48.
vendored_optparse.rb File 79 bytes May 29 2025 13:39:49.
vendored_securerandom.rb File 87 bytes May 29 2025 13:39:48.
vendored_timeout.rb File 228 bytes May 29 2025 13:39:48.
vendored_tsort.rb File 73 bytes May 29 2025 13:39:49.
version.rb File 13668 bytes May 29 2025 13:39:49.
version_option.rb File 2227 bytes May 29 2025 13:39:48.
yaml_serializer.rb File 2474 bytes May 29 2025 13:39:48.

Reading File: //opt/alt/ruby34//share/rubygems/rubygems/yaml_serializer.rb

# frozen_string_literal: true

module Gem
  # A stub yaml serializer that can handle only hashes and strings (as of now).
  module YAMLSerializer
    module_function

    def dump(hash)
      yaml = String.new("---")
      yaml << dump_hash(hash)
    end

    def dump_hash(hash)
      yaml = String.new("\n")
      hash.each do |k, v|
        yaml << k << ":"
        if v.is_a?(Hash)
          yaml << dump_hash(v).gsub(/^(?!$)/, "  ") # indent all non-empty lines
        elsif v.is_a?(Array) # Expected to be array of strings
          if v.empty?
            yaml << " []\n"
          else
            yaml << "\n- " << v.map {|s| s.to_s.gsub(/\s+/, " ").inspect }.join("\n- ") << "\n"
          end
        else
          yaml << " " << v.to_s.gsub(/\s+/, " ").inspect << "\n"
        end
      end
      yaml
    end

    ARRAY_REGEX = /
      ^
      (?:[ ]*-[ ]) # '- ' before array items
      (['"]?) # optional opening quote
      (.*) # value
      \1 # matching closing quote
      $
    /xo

    HASH_REGEX = /
      ^
      ([ ]*) # indentations
      ([^#]+) # key excludes comment char '#'
      (?::(?=(?:\s|$))) # :  (without the lookahead the #key includes this when : is present in value)
      [ ]?
      (['"]?) # optional opening quote
      (.*) # value
      \3 # matching closing quote
      $
    /xo

    def load(str)
      res = {}
      stack = [res]
      last_hash = nil
      last_empty_key = nil
      str.split(/\r?\n/) do |line|
        if match = HASH_REGEX.match(line)
          indent, key, quote, val = match.captures
          val = strip_comment(val)

          depth = indent.size / 2
          if quote.empty? && val.empty?
            new_hash = {}
            stack[depth][key] = new_hash
            stack[depth + 1] = new_hash
            last_empty_key = key
            last_hash = stack[depth]
          else
            val = [] if val == "[]" # empty array
            stack[depth][key] = val
          end
        elsif match = ARRAY_REGEX.match(line)
          _, val = match.captures
          val = strip_comment(val)

          last_hash[last_empty_key] = [] unless last_hash[last_empty_key].is_a?(Array)

          last_hash[last_empty_key].push(val)
        end
      end
      res
    end

    def strip_comment(val)
      if val.include?("#") && !val.start_with?("#")
        val.split("#", 2).first.strip
      else
        val
      end
    end

    class << self
      private :dump_hash
    end
  end
end

SILENT KILLER Tool