class Clerq::Settings

Constants

STORAGE

Public Class Methods

new() click to toggle source
# File lib/clerq/settings.rb, line 31
def initialize
  load
end

Public Instance Methods

folders() click to toggle source
# File lib/clerq/settings.rb, line 27
def folders
  [bin, src, knb, lib, tt, assets]
end
load() click to toggle source

TODO: load settings than can be changed by user

# File lib/clerq/settings.rb, line 36
def load
  return unless File.exist?(STORAGE)

  props = YAML.load(File.read(STORAGE))
  props.each{|k, v| instance_variable_set("@#{k}", v) }
end
save() click to toggle source

TODO: it saves only changed properties

properties with default values won't be saved
# File lib/clerq/settings.rb, line 45
def save
  props = {}
  instance_variables.each{|v|
    # props[v.to_s[1..-1]] = instance_variable_get("#{v}")
    p = v.to_s[1..-1]
    props[p] = self.send(p)
  }
  File.write(STORAGE, YAML.dump(props))
end