Class: EacTemplates::Abstract::Directory
Instance Method Summary
collapse
Methods inherited from FsObject
#applier, #applier_class, assert, by_subpath, #category_module, #path_for_search, #path_for_search_prefix, #raise_not_found, #source_set, #type, #type_list
Instance Method Details
16
17
18
19
20
21
|
# File 'lib/eac_templates/abstract/directory.rb', line 16
def build_child(child_basename, child_type)
child_basename = child_basename.to_pathname
child_type = type_list.value_validate!(child_type)
category_module.const_get(child_type.to_s.camelize)
.new(owner, self, child_basename, options)
end
|
25
26
27
28
29
|
# File 'lib/eac_templates/abstract/directory.rb', line 25
def child(basename)
basename = basename.to_pathname
children.find { |c| c.basename == basename } ||
raise_not_found("No child found with basename \"#{basename}\"")
end
|
32
33
34
|
# File 'lib/eac_templates/abstract/directory.rb', line 32
def children
children_basenames.map { |c_basename, c_type| build_child(c_basename, c_type) }
end
|
#children_basenames ⇒ Hash<Pathname, Symbol>
37
38
39
|
# File 'lib/eac_templates/abstract/directory.rb', line 37
def children_basenames
raise_abstract_method __method__
end
|