Module: Sms77::Util

Defined in:
lib/sms77/util.rb

Class Method Summary collapse

Class Method Details

.boolean?(val) ⇒ Boolean

Returns:



39
40
41
# File 'lib/sms77/util.rb', line 39

def self.boolean?(val)
  [true, false].include? val
end

.get_module_constant_values(mod) ⇒ Object



4
5
6
# File 'lib/sms77/util.rb', line 4

def self.get_module_constant_values(mod)
  mod.constants(false).map &mod.method(:const_get)
end

.in_module_constants?(needle, mod) ⇒ Boolean

Returns:



25
26
27
# File 'lib/sms77/util.rb', line 25

def self.in_module_constants?(needle, mod)
  get_module_constant_values(mod).include?(needle)
end

.is_positive_integer?(val) ⇒ Boolean

Returns:



21
22
23
# File 'lib/sms77/util.rb', line 21

def self.is_positive_integer?(val)
  /\A\d+\z/.match?(val.to_s)
end

.is_valid_datetime?(str) ⇒ Boolean

Returns:



12
13
14
15
16
17
18
19
# File 'lib/sms77/util.rb', line 12

def self.is_valid_datetime?(str)
  begin
    DateTime.parse(str)
    true
  rescue ArgumentError
    false
  end
end

.is_valid_url?(str) ⇒ Boolean

Returns:



8
9
10
# File 'lib/sms77/util.rb', line 8

def self.is_valid_url?(str)
  str =~ URI::regexp
end

.lengthy_string?(val) ⇒ Boolean

Returns:



47
48
49
# File 'lib/sms77/util.rb', line 47

def self.lengthy_string?(val)
  return val.is_a?(String) && !val.empty?
end

.nil_or_lengthy_string?(val) ⇒ Boolean

Returns:



43
44
45
# File 'lib/sms77/util.rb', line 43

def self.nil_or_lengthy_string?(val)
  val.nil? || (val.is_a?(String) && val.length)
end

.numeric?(val) ⇒ Boolean

Returns:



33
34
35
36
37
# File 'lib/sms77/util.rb', line 33

def self.numeric?(val)
  return true if val.is_a?(Integer)

  val.scan(/\D/).empty?
end

.valid_float?(str) ⇒ Boolean

Returns:



29
30
31
# File 'lib/sms77/util.rb', line 29

def self.valid_float?(str)
  !!Float(str) rescue false
end