class Paquito::SafeYAML::RestrictedYAMLTree

Public Class Methods

new(*) click to toggle source
Calls superclass method
# File lib/paquito/safe_yaml.rb, line 56
def initialize(*)
  super
  @permitted_classes = Set.new(@options[:permitted_classes])
  @dispatch_cache = DispatchCache.new(self, @dispatch_cache)
  @permitted_cache = Hash.new do |h, klass|
    unless @permitted_classes.include?(klass.name)
      raise UnsupportedType, "Tried to dump unspecified class: #{klass.name.inspect}"
    end

    h[klass] = true
  end.compare_by_identity
end

Public Instance Methods

dump_coder(target) click to toggle source
Calls superclass method
# File lib/paquito/safe_yaml.rb, line 70
def dump_coder(target)
  return unless permitted_class?(target.class)

  super
end
permitted_class?(klass) click to toggle source
# File lib/paquito/safe_yaml.rb, line 76
def permitted_class?(klass)
  @permitted_cache[klass]
end