Class: Array
- Defined in:
- lib/adsl/util/general.rb,
lib/adsl/parser/ast_nodes.rb
Instance Method Summary collapse
- #adsl_indent ⇒ Object
- #optimize ⇒ Object
- #select_reject ⇒ Object
- #set_to(array) ⇒ Object
- #worklist_each ⇒ Object
Instance Method Details
#adsl_indent ⇒ Object
50 51 52 |
# File 'lib/adsl/util/general.rb', line 50 def adsl_indent join("").adsl_indent end |
#optimize ⇒ Object
9 10 11 12 13 |
# File 'lib/adsl/parser/ast_nodes.rb', line 9 def optimize map do |e| e.respond_to?(:optimize) ? e.optimize : e end end |
#select_reject ⇒ Object
54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/adsl/util/general.rb', line 54 def select_reject arr1 = [] arr2 = [] self.each do |e| if yield e arr1 << e else arr2 << e end end return arr1, arr2 end |
#set_to(array) ⇒ Object
67 68 69 70 71 |
# File 'lib/adsl/util/general.rb', line 67 def set_to(array) self.clear array.each{ |e| self << e } self end |
#worklist_each ⇒ Object
37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/adsl/util/general.rb', line 37 def worklist_each changed = true until empty? or not changed changed = false length.times do task = self.shift new_value = yield task self << new_value if new_value changed = true if task != new_value end end end |