| Server IP : 217.160.0.216 / Your IP : 216.73.217.104 Web Server : Apache System : Linux info 3.0 #1337 SMP Tue Jan 01 00:00:00 CEST 2000 all GNU/Linux User : u116689255 ( 10217649) PHP Version : 8.3.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /lib/ruby/vendor_ruby/rubygems/ |
Upload File : |
# frozen_string_literal: true
module Gem
###
# This module is used for safely loading YAML specs from a gem. The
# `safe_load` method defined on this module is specifically designed for
# loading Gem specifications. For loading other YAML safely, please see
# Psych.safe_load
module SafeYAML
PERMITTED_CLASSES = %w[
Symbol
Time
Date
Gem::Dependency
Gem::Platform
Gem::Requirement
Gem::Specification
Gem::Version
Gem::Version::Requirement
].freeze
PERMITTED_SYMBOLS = %w[
development
runtime
].freeze
@aliases_enabled = true
def self.aliases_enabled=(value) # :nodoc:
@aliases_enabled = !!value
end
def self.aliases_enabled? # :nodoc:
@aliases_enabled
end
def self.safe_load(input)
::Psych.safe_load(input, permitted_classes: PERMITTED_CLASSES, permitted_symbols: PERMITTED_SYMBOLS, aliases: @aliases_enabled)
end
def self.load(input)
::Psych.safe_load(input, permitted_classes: [::Symbol])
end
end
end