Module: Itamae::DefaultAttributes::Extension

Defined in:
lib/itamae/default_attributes/extension.rb

Instance Method Summary collapse

Instance Method Details

#attributes_pathObject



16
17
18
19
# File 'lib/itamae/default_attributes/extension.rb', line 16

def attributes_path
  @attributes_path ||=
    path.sub(%r{[^/]+\.rb$}, "attributes.rb")
end

#load(vars = {}) ⇒ Object



4
5
6
7
# File 'lib/itamae/default_attributes/extension.rb', line 4

def load(vars = {})
  load_default_attributes
  super
end

#load_default_attributesObject



9
10
11
12
13
14
# File 'lib/itamae/default_attributes/extension.rb', line 9

def load_default_attributes
  return if Itamae::DefaultAttributes.loaded_paths.include?(attributes_path)
  context = Itamae::DefaultAttributes::EvalContext.new
  context.instance_eval(File.read(attributes_path), attributes_path, 1)
  Itamae::DefaultAttributes.loaded_paths << attributes_path
end