Class: PatternProc

Inherits:
Object show all
Defined in:
lib/pattern_proc.rb

Instance Method Summary collapse

Constructor Details

#initialize(cases = []) ⇒ PatternProc

Returns a new instance of PatternProc.



3
4
5
6
7
# File 'lib/pattern_proc.rb', line 3

def initialize(cases = [])
  @arity = -1
  @cases = []
  cases.each do |c| add_case c end
end

Instance Method Details

#to_procObject



15
16
17
# File 'lib/pattern_proc.rb', line 15

def to_proc
  ->(*args) { call(args) }
end

#with(*args, &block) ⇒ Object



9
10
11
12
13
# File 'lib/pattern_proc.rb', line 9

def with(*args, &block)
  case_obj = PatternProcCase.new(args, &block)
  add_case case_obj
  case_obj
end