class Object
@private
Public Class Methods
raise_or_default(exc_type, msg, *args)
click to toggle source
# File lib/rubirai/utils.rb, line 57 def self.raise_or_default(exc_type, msg, *args) if exc_type.nil? raise(msg) else raise(exc_type, *args) end end
Public Instance Methods
must_be!(types, exc_type = nil, *args)
click to toggle source
# File lib/rubirai/utils.rb, line 37 def must_be!(types, exc_type = nil, *args) ok = case types when Array types.any? { |type| is_a? type } else is_a? types end self.class.raise_or_default exc_type, "assert failed: `#{self}' must be of type #{types}", *args unless ok end
must_be_one_of!(things, exc_type = nil, *args)
click to toggle source
# File lib/rubirai/utils.rb, line 47 def must_be_one_of!(things, exc_type = nil, *args) ok = case things when Array things.include? self else self == things end self.class.raise_or_default exc_type, "assert failed: `#{self}' must be one of: #{things}", *args unless ok end