Sha256: 47666972a7344b284dc295a12863f29370740d5f8f94484a9be71d599809944f

Contents?: true

Size: 433 Bytes

Versions: 3

Compression:

Stored size: 433 Bytes

Contents

module Console
  class ConfigFile < HashWithIndifferentAccess
    def initialize(file)
      IO.read(File.expand_path(file)).lines.
        map{ |s| s.gsub(/((^|[^\\])(\\\\)*)#.*/,'\1') }. # eliminate unescaped comments
        each do |s|
          if pair = /^\s*(.*?[^\\]+?(?:\\\\)*)=(.*)$/.match(s)
            self[pair[1].strip.gsub(/\\(.)/,'\1')] = pair[2].strip.gsub(/\\(.)/,'\1')
          end
        end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
openshift-origin-console-1.3.4 lib/console/config_file.rb
openshift-origin-console-1.3.3 lib/console/config_file.rb
openshift-origin-console-1.3.2 lib/console/config_file.rb