Module: Gem::SafeYAML
| Relationships & Source Files | |
| Defined in: | lib/rubygems/safe_yaml.rb | 
Overview
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
Constant Summary
- 
    PERMITTED_CLASSES =
    
 # File 'lib/rubygems/safe_yaml.rb', line 11%w[ Symbol Time Date Gem::Dependency Gem::Platform Gem::Requirement Gem::Specification Gem::Version Gem::Version::Requirement ].freeze 
- 
    PERMITTED_SYMBOLS =
    
 # File 'lib/rubygems/safe_yaml.rb', line 23%w[ development runtime ].freeze 
Class Attribute Summary
- .aliases_enabled=(value) rw Internal use only
- .aliases_enabled? ⇒ Boolean rw Internal use only
Class Method Summary
Class Attribute Details
.aliases_enabled=(value) (rw)
    This method is for internal use only.
  
  [ GitHub ]
# File 'lib/rubygems/safe_yaml.rb', line 29
def self.aliases_enabled=(value) # :nodoc: @aliases_enabled = !!value end
    .aliases_enabled?  ⇒ Boolean  (rw)
  
  
    This method is for internal use only.
  
  [ GitHub ]
# File 'lib/rubygems/safe_yaml.rb', line 33
def self.aliases_enabled? # :nodoc: @aliases_enabled end
Class Method Details
.load(input)
[ GitHub ]# File 'lib/rubygems/safe_yaml.rb', line 41
def self.load(input) ::Psych.safe_load(input, permitted_classes: [::Symbol]) end
.safe_load(input)
[ GitHub ]# File 'lib/rubygems/safe_yaml.rb', line 37
def self.safe_load(input) ::Psych.safe_load(input, permitted_classes: PERMITTED_CLASSES, permitted_symbols: PERMITTED_SYMBOLS, aliases: @aliases_enabled) end