Module: Test::TypeCheck
- Included in:
- Span, SpanContext, Tracer
- Defined in:
- lib/test/type_check.rb
Defined Under Namespace
Classes: NullError
Instance Method Summary collapse
- #Argument!(expression, message = "Illegal argument") ⇒ Object
- #NotNull!(value) ⇒ Object
- #Type!(value, *types) ⇒ Object
- #Type?(value, *types) ⇒ Boolean
Instance Method Details
#Argument!(expression, message = "Illegal argument") ⇒ Object
19 20 21 |
# File 'lib/test/type_check.rb', line 19 def Argument!(expression, = "Illegal argument") raise ArgumentError, unless expression end |
#NotNull!(value) ⇒ Object
15 16 17 |
# File 'lib/test/type_check.rb', line 15 def NotNull!(value) raise NullError, "Value must not be nil" unless value end |
#Type!(value, *types) ⇒ Object
9 10 11 12 13 |
# File 'lib/test/type_check.rb', line 9 def Type!(value, *types) Type?(value, *types) or raise TypeError, "Value (#{value.class}) '#{value}' is not any of: #{types.join('; ')}." value end |
#Type?(value, *types) ⇒ Boolean
5 6 7 |
# File 'lib/test/type_check.rb', line 5 def Type?(value, *types) types.any? { |t| value.is_a? t } end |