Class: Typerb::Exceptional

Inherits:
Object
  • Object
show all
Defined in:
lib/typerb/exceptional.rb

Overview

NOTE: don’t want to collide with ‘Exception’ class name

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.elements_text(elements) ⇒ Object



14
15
16
# File 'lib/typerb/exceptional.rb', line 14

def elements_text(elements)
  '[' + elements.join(', ') + ']'
end

.klasses_text(klasses) ⇒ Object



6
7
8
# File 'lib/typerb/exceptional.rb', line 6

def klasses_text(klasses)
  klasses.size > 1 ? klasses.map(&:name).join(' or ') : klasses.first.name
end

.methods_text(methods) ⇒ Object



10
11
12
# File 'lib/typerb/exceptional.rb', line 10

def methods_text(methods)
  methods.join(', ')
end

.superset_text(enumerable) ⇒ Object



18
19
20
# File 'lib/typerb/exceptional.rb', line 18

def superset_text(enumerable)
  enumerable.to_s
end

Instance Method Details

#raise_with(backtrace, exception_text) ⇒ Object



23
24
25
26
27
# File 'lib/typerb/exceptional.rb', line 23

def raise_with(backtrace, exception_text)
  exception = TypeError.new(exception_text)
  exception.set_backtrace(backtrace)
  raise exception
end