Module: CodeBrkrGameTraining::FileOperations

Included in:
Game
Defined in:
lib/code_brkr_game_training/modules/file_operations.rb

Overview

Module for file operations

Instance Method Summary collapse

Instance Method Details

#load_from_file(directory, file) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
# File 'lib/code_brkr_game_training/modules/file_operations.rb', line 14

def load_from_file(directory, file)
  begin
    yml_data = File.open(File.join(directory, file), &:read)
  rescue Errno::ENOENT
    yml_data = ''
  end

  YAML.load_stream(
    yml_data
  )
end

#save_to_file(**args) ⇒ Object



7
8
9
10
11
12
# File 'lib/code_brkr_game_training/modules/file_operations.rb', line 7

def save_to_file(**args)
  ensuring_directory_availability args[:directory]

  yml = YAML.dump(args[:data])
  File.open(File.join(args[:directory], args[:file]), 'a') { |yml_file| yml_file.write(yml) }
end