Class: Erector::Dependencies
- Inherits:
-
Array
- Object
- Array
- Erector::Dependencies
- Defined in:
- lib/erector/dependencies.rb
Instance Method Summary collapse
- #push(*new_dependencies_args) ⇒ Object (also: #<<)
- #uniq ⇒ Object
Instance Method Details
#push(*new_dependencies_args) ⇒ Object Also known as: <<
3 4 5 6 7 8 9 10 11 12 13 |
# File 'lib/erector/dependencies.rb', line 3 def push(*new_dependencies_args) new_dependencies = new_dependencies_args.select do |new_dependency| !include?(new_dependency) end new_dependencies.each do |dep| unless dep.is_a? Erector::Dependency raise "expected Dependency, got #{dep.class}: #{dep.inspect}" end end super(*new_dependencies) end |
#uniq ⇒ Object
17 18 19 20 21 22 |
# File 'lib/erector/dependencies.rb', line 17 def uniq inject(self.class.new) do |memo, item| memo << item unless memo.any? {|memo_item| memo_item == item} memo end end |