class Nanoc::RuleDSL::RulesLoader
Public Class Methods
new(config, rules_collection)
click to toggle source
# File lib/nanoc/rule_dsl/rules_loader.rb, line 5 def initialize(config, rules_collection) @dsl = Nanoc::RuleDSL::CompilerDSL.new(rules_collection, config) end
Public Instance Methods
load()
click to toggle source
# File lib/nanoc/rule_dsl/rules_loader.rb, line 9 def load # Find rules file rules_filenames = ['Rules', 'rules', 'Rules.rb', 'rules.rb'] rules_filename = rules_filenames.find { |f| File.file?(f) } raise Nanoc::RuleDSL::Errors::NoRulesFileFound.new if rules_filename.nil? parse(rules_filename) end
parse(rules_filename)
click to toggle source
# File lib/nanoc/rule_dsl/rules_loader.rb, line 18 def parse(rules_filename) rules_filename = File.absolute_path(rules_filename) # Get rule data data = File.read(rules_filename) old_rules_filename = @dsl.rules_filename @dsl.rules_filename = rules_filename @dsl.instance_eval(data, rules_filename) @dsl.rules_filename = old_rules_filename end