Class: Richat::Utils

Inherits:
Object
  • Object
show all
Defined in:
lib/richat/utils.rb

Class Method Summary collapse

Class Method Details

.absolute_path?(fp) ⇒ Boolean

Returns:

  • (Boolean)


18
19
20
# File 'lib/richat/utils.rb', line 18

def absolute_path?(fp)
  File.expand_path(fp) == fp
end

.deep_merge_hash(hs1, hs2) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/richat/utils.rb', line 4

def deep_merge_hash(hs1, hs2)
  result = hs1.dup

  hs2.each do |key, value|
    if value.is_a?(Hash) && hs1[key].is_a?(Hash)
      result[key] = deep_merge_hash(result[key], value)
    else
      result[key] = value
    end
  end

  result
end

.ensure_dir_exist(*dirs) ⇒ Object



22
23
24
25
26
27
28
29
30
# File 'lib/richat/utils.rb', line 22

def ensure_dir_exist(*dirs)
  dirs.each do |dir_name|
    if dir_name.nil? || dir_name.empty?
      puts "invalid directory"
      exit
    end
    FileUtils.mkdir_p(dir_name) unless File.directory?(dir_name)
  end
end