class CompassConfigParser
Attributes
config_file[RW]
params[RW]
Public Class Methods
new(config_file = nil)
click to toggle source
# File lib/compass-configparser.rb, line 5 def initialize(config_file = nil) @config_file = config_file @params = {} self.parse_config end
Public Instance Methods
get_param(key, default)
click to toggle source
# File lib/compass-configparser.rb, line 46 def get_param(key, default) if self.params[key] != nil self.params[key] else default end end
parse_config()
click to toggle source
# File lib/compass-configparser.rb, line 17 def parse_config() if self.config_file != nil && File.readable?(self.config_file) IO.foreach(self.config_file) do |fLine| line = fLine.lstrip.rstrip # ignore comments, require, include, import and empty lines if !line.match(/^\#|require|include|import|load|discover/) && line.length > 0 if(/\s*=\s*/.match(line)) param, value = line.split(/\s*=\s*/, 2) var_name = "#{param}".chomp.strip value = value.chomp.strip new_value = '' if (value) if value =~ /^['"](.*)['"]$/ new_value = $1 else new_value = value end else new_value = '' end self.params[param] = new_value end end end end end
validate_config()
click to toggle source
# File lib/compass-configparser.rb, line 11 def validate_config() unless File.readable?(self.config_file) raise Errno::EACCES, "#{self.config_file} is not readable" end end