class Despecable::Me
Attributes
params[R]
Public Class Methods
new(params)
click to toggle source
# File lib/despecable/me.rb, line 5 def initialize(params) @params = params @specd = [] end
Public Instance Methods
doit(*args, &blk)
click to toggle source
# File lib/despecable/me.rb, line 10 def doit(*args, &blk) spectator = Despecable::Spectator.new(@params) spectator.instance_exec(*args, &blk) unless blk.nil? @specd += spectator.specd return spectator.params end
strict(user_params)
click to toggle source
# File lib/despecable/me.rb, line 17 def strict(user_params) unspecd = user_params.map(&:to_s).uniq - @specd.map(&:to_s) if !unspecd.empty? list = unspecd.map{|x| "'#{x}'"}.join(", ") raise Despecable::UnrecognizedParameterError.new( "Unrecognized parameters supplied: #{list}", parameters: unspecd ) end end