module Tchae::PI
Public Instance Methods
create_result_or_error_method(methodname, wrapper= Tchae::NilWrapper, &proc)
click to toggle source
# File lib/tchae/core.rb, line 361 def create_result_or_error_method(methodname, wrapper= Tchae::NilWrapper, &proc) if block_given? tea_methodsymb = "__tea_#{methodname}".to_sym define_method "__tea_#{methodname}", proc define_method(methodname) do |*params, **kwparms| Tchae.do_validation_result_or_error(self, wrapper, tea_methodsymb, proc, params, kwparms) end else define_method(methodname) {} end end
create_return_wrapper_method(methodname, wrapper = Tchae::NilWrapper, &proc)
click to toggle source
# File lib/tchae/core.rb, line 377 def create_return_wrapper_method(methodname, wrapper = Tchae::NilWrapper, &proc) if block_given? tea_methodsymb = "__tea_#{methodname}".to_sym define_method "__tea_#{methodname}", proc define_method(methodname) do |*params, **kwparms| Tchae.do_validation_return_wrapper(self, wrapper, tea_methodsymb, proc, params, kwparms) end else define_method(methodname) {} end end
create_valid_or_raise_method(methodname, wrapper = Tchae::NilWrapper, &proc)
click to toggle source
# File lib/tchae/core.rb, line 346 def create_valid_or_raise_method(methodname, wrapper = Tchae::NilWrapper, &proc) if block_given? tea_methodsymb = "__tea_#{methodname}".to_sym define_method "__tea_#{methodname}", proc define_method(methodname) do |*params, **kwparms| Tchae.do_validation_raise(self, wrapper, tea_methodsymb, proc, params, kwparms) end else define_method(methodname) {} end end
create_validated_method(methodname, wrapper = Tchae::NilWrapper, lambda: nil, &proc)
click to toggle source
# File lib/tchae/core.rb, line 324 def create_validated_method(methodname, wrapper = Tchae::NilWrapper, lambda: nil, &proc) proclmbda = if lambda.nil? proc else raise ArgumentError, 'Please provide a block or the :lambda parameter but not both' if block_given? lambda end case wrapper.handling when ::Tchae::Handling::RETURN_WRAPPER create_return_wrapper_method(methodname, wrapper, &proclmbda) when ::Tchae::Handling::RETURN_RESULT_OR_ERROR create_result_or_error_method(methodname, wrapper, &proclmbda) else # RAISE create_valid_or_raise_method(methodname, wrapper, &proclmbda) end end