From a95be81ea20816d933d5ef1efccdf9d1b71bfe03 Mon Sep 17 00:00:00 2001 From: naruse Date: Sun, 25 May 2014 03:33:22 +0000 Subject: Revert "* lib/yaml.rb: Remove Psych::EngineManager [Bug #8344]" zzak is not the maintainer of yaml. This reverts commit r46097. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46102 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/yaml.rb | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'lib/yaml.rb') diff --git a/lib/yaml.rb b/lib/yaml.rb index c0ffcf877b..3b4e4234f7 100644 --- a/lib/yaml.rb +++ b/lib/yaml.rb @@ -12,6 +12,40 @@ end YAML = Psych # :nodoc: +module Psych # :nodoc: + # For compatibility, deprecated + class EngineManager # :nodoc: + attr_reader :yamler # :nodoc: + + def initialize # :nodoc: + @yamler = 'psych' + end + + def syck? # :nodoc: + false + end + + # Psych is always used and this method has no effect. + # + # This method is still present for compatibility. + # + # You may still use the Syck engine by installing + # the 'syck' gem and using the Syck constant. + def yamler= engine # :nodoc: + case engine + when 'syck' then warn "syck has been removed, psych is used instead" + when 'psych' then @yamler = 'psych' + else + raise(ArgumentError, "bad engine") + end + + engine + end + end + + ENGINE = EngineManager.new # :nodoc: +end + # YAML Ain't Markup Language # # This module provides a Ruby interface for data serialization in YAML format. -- cgit v1.2.3