class Holidays::Definition::Decorator::CustomMethodSource
Public Instance Methods
call(proc)
click to toggle source
# File lib/holidays/definition/decorator/custom_method_source.rb, line 5 def call(proc) validate!(proc) method_name = proc.name args = args_string(proc.arguments) source = proc.source "\"#{method_name.to_s}(#{args})\" => Proc.new { |#{args}|\n#{source}}" end
Private Instance Methods
args_string(args)
click to toggle source
# File lib/holidays/definition/decorator/custom_method_source.rb, line 23 def args_string(args) a = args.join(", ") a[0..-1] end
validate!(proc)
click to toggle source
# File lib/holidays/definition/decorator/custom_method_source.rb, line 17 def validate!(proc) raise ArgumentError if proc.name.nil? || proc.name == "" raise ArgumentError if proc.arguments.nil? || !proc.arguments.is_a?(Array) || proc.arguments.empty? raise ArgumentError if proc.source.nil? || proc.source == "" end