class SafeYAML::Transform
def self.to_guessed_type(value, quoted=false, options=nil)
def self.to_guessed_type(value, quoted=false, options=nil) return value if quoted if value.is_a?(String) TRANSFORMERS.each do |transformer| success, transformed_value = transformer.method(:transform?).arity == 1 ? transformer.transform?(value) : transformer.transform?(value, options) return transformed_value if success end end value end
def self.to_proper_type(value, quoted=false, tag=nil, options=nil)
def self.to_proper_type(value, quoted=false, tag=nil, options=nil) case tag when "tag:yaml.org,2002:binary", "x-private:binary", "!binary" decoded = Base64.decode64(value) decoded = decoded.force_encoding(value.encoding) if decoded.respond_to?(:force_encoding) decoded else self.to_guessed_type(value, quoted, options) end end