class Hygroscope::ParamSet
Attributes
name[RW]
parameters[R]
path[RW]
Public Class Methods
new(name = nil)
click to toggle source
# File lib/hygroscope/paramset.rb, line 11 def initialize(name = nil) @parameters = {} @path = File.join(Dir.pwd, 'paramsets') return unless name @name = name load! end
Public Instance Methods
get(key)
click to toggle source
# File lib/hygroscope/paramset.rb, line 38 def get(key) @parameters[key] end
load!()
click to toggle source
# File lib/hygroscope/paramset.rb, line 21 def load! files = Dir.glob(File.join(@path, @name + '.{yml,yaml}')) raise Hygroscope::ParamSetNotFoundError if files.empty? @file = files.first @parameters = YAML.load_file(@file) end
save!()
click to toggle source
# File lib/hygroscope/paramset.rb, line 30 def save! # If this is a new paramset, construct a filename savefile = @file || File.join(@path, @name + '.yaml') File.open(savefile, 'w') do |f| YAML.dump(@parameters, f) end end
set(key, value, use_previous_value: false)
click to toggle source
# File lib/hygroscope/paramset.rb, line 42 def set(key, value, use_previous_value: false) @parameters[key] = if use_previous_value 'HYGROSCOPE_USE_PREVIOUS_VALUE' else value end end