Modified HandlerHash#addIf to accept blocks

This commit is contained in:
jonisavo
2020-09-06 07:01:27 +03:00
parent 069b209851
commit 4eb705b801

View File

@@ -95,11 +95,14 @@ class HandlerHash
return ret
end
def addIf(condProc,handler)
@addIfs.push([condProc,handler])
def addIf(conditionProc,handler=nil,&handlerBlock)
if ![Proc,Hash].include?(handler.class) && !block_given?
raise ArgumentError, "addIf call for #{self.class.name} has no valid handler (#{handler.inspect} was given)"
end
@addIfs.push([conditionProc,handler || handlerBlock])
end
def add(sym,handler=nil,&handlerBlock) # 'sym' can be an ID or symbol
def add(sym,handler=nil,&handlerBlock) # 'sym' can be an ID or symbol
if ![Proc,Hash].include?(handler.class) && !block_given?
raise ArgumentError, "#{self.class.name} for #{sym.inspect} has no valid handler (#{handler.inspect} was given)"
end