Module: Legion::Extensions::Builder::Base
- Defined in:
- lib/legion/extensions/builders/base.rb
Instance Method Summary collapse
- #const_defined_two?(item, root = Kernel) ⇒ Boolean
- #define_constant_two(item, root: Kernel, type: Module) ⇒ Object
- #define_get(item, root: Kernel, type: Module) ⇒ Object
- #find_files(name, path = extension_path) ⇒ Object
- #require_files(files) ⇒ Object
Instance Method Details
#const_defined_two?(item, root = Kernel) ⇒ Boolean
21 22 23 |
# File 'lib/legion/extensions/builders/base.rb', line 21 def const_defined_two?(item, root = Kernel) root.const_defined?(item.to_s) end |
#define_constant_two(item, root: Kernel, type: Module) ⇒ Object
25 26 27 28 29 |
# File 'lib/legion/extensions/builders/base.rb', line 25 def define_constant_two(item, root: Kernel, type: Module) return true if root.const_defined?(item) root.const_set(item.to_s, type.new) end |
#define_get(item, root: Kernel, type: Module) ⇒ Object
31 32 33 34 |
# File 'lib/legion/extensions/builders/base.rb', line 31 def define_get(item, root: Kernel, type: Module) define_constant_two(item, root: root, type: type) if const_defined_two?(item, root: root) root.const_get(item) end |
#find_files(name, path = extension_path) ⇒ Object
7 8 9 10 11 12 13 14 15 |
# File 'lib/legion/extensions/builders/base.rb', line 7 def find_files(name, path = extension_path) files = [] return files unless Dir.exist? "#{path}/#{name}" Dir["#{path}/#{name}/*.rb"].each do |file| files.push(file) end files end |
#require_files(files) ⇒ Object
17 18 19 |
# File 'lib/legion/extensions/builders/base.rb', line 17 def require_files(files) files.each { |file| require file } end |