Sha256: f52a98ff12270cfa56cb74bf2016e1dd3d21ecd832d63099a389688cc46fff00
Contents?: true
Size: 814 Bytes
Versions: 7
Compression:
Stored size: 814 Bytes
Contents
# frozen_string_literal: true module Codebreakergem class FileWorker PERMITTED_CLASSES = [Symbol].freeze class << self def read_from_file(filename) return unless File.file?(Game::FILE) YAML.safe_load(File.read(filename), PERMITTED_CLASSES, [], true) end def add_to_file(filename, data) if File.file?(filename) data_in_file = YAML.safe_load(File.read(filename), PERMITTED_CLASSES, [], true) data_in_file.is_a?(Array) ? data_in_file << data : data_in_file = [data_in_file, data] write_to_file(filename, data_in_file) else write_to_file(filename, data) end end def write_to_file(filename, data) File.open(filename, 'w') { |file| file.write(data.to_yaml) } end end end end
Version data entries
7 entries across 7 versions & 1 rubygems