Class Proc
In: lib/backports/1.8.7/proc.rb
lib/backports/1.9.1/proc.rb
Parent: Object

Methods

curry   lambda?  

External Aliases

yield -> self
call -> ===

Public Instance methods

Standard in Ruby 1.9. See official documentation

[Source]

    # File lib/backports/1.9.1/proc.rb, line 34
34:   def curry(argc = nil)
35:     min_argc = arity < 0 ? -arity - 1 : arity
36:     argc ||= min_argc
37:     if lambda? and arity < 0 ? argc < min_argc : argc != arity
38:       raise ArgumentError, "wrong number of arguments (#{argc} for #{min_argc})"
39:     end
40:     creator = lambda? ? :lambda : :proc
41:     block = send(creator) do |*args|
42:       if args.count >= argc
43:         call(*args)
44:       else
45:         send(creator) do |*more_args|
46:           args += more_args
47:           block.call(*args)
48:         end
49:       end
50:     end
51:   end

Standard in Ruby 1.9. See official documentation

[Source]

   # File lib/backports/1.9.1/proc.rb, line 4
4:     def lambda?
5:       !!@is_lambda
6:     end

[Validate]