Module: CasePredicates::IsA

Included in:
CasePredicates
Defined in:
lib/case_predicates/is_a.rb

Overview

IsA includes predicate methods for type checks

Examples:

v = "foo"
case v
when string?
  puts "it's a string"
else
  raise "on no!"
end

Constant Summary collapse

TYPES =
{
  array: Array,
  complex: Complex,
  dir: Dir,
  enumerable: Enumerable,
  false => FalseClass,
  fiber: Fiber,
  file: File,
  float: Float,
  hash: Hash,
  io: IO,
  integer: Integer,
  module: Module,
  mutex: Mutex,
  nil: NilClass,
  numeric: Numeric,
  object: Object,
  proc: Proc,
  queue: Queue,
  random: Random,
  range: Range,
  rational: Rational,
  regexp: Regexp,
  string: String,
  struct: Struct,
  symbol: Symbol,
  thread: Thread,
  time: Time,
  true => TrueClass
}.freeze