| Class | Mack::Utils::RegistryList |
| In: |
lib/mack-facets/utils/registry_list.rb
|
| Parent: | Object |
This is a general purpose Singleton Registry class. It takes the drudgery out of creating registry classes, that are, let‘s face it, all pretty much the same.
| registered_items | [R] | The list of registered items |
Adds an object to the list at a specified position. By default the position is last.
# File lib/mack-facets/utils/registry_list.rb, line 59
59: def add(klass, position = registered_items.size)
60: self.instance.add(klass, position)
61: end
Emptys out the list of registered_items.
# File lib/mack-facets/utils/registry_list.rb, line 49
49: def clear!
50: registered_items.clear
51: end
Moves an object to the bottom of the registered_items list.
# File lib/mack-facets/utils/registry_list.rb, line 74
74: def move_to_bottom(klass)
75: remove(klass)
76: self.instance.add(klass)
77: end
Moves an object to the top of the registered_items list.
# File lib/mack-facets/utils/registry_list.rb, line 69
69: def move_to_top(klass)
70: self.instance.add(klass, 0)
71: end
Returns the list of registered items.
# File lib/mack-facets/utils/registry_list.rb, line 44
44: def registered_items
45: self.instance.registered_items
46: end
Removes an object from the list.
# File lib/mack-facets/utils/registry_list.rb, line 64
64: def remove(klass)
65: self.instance.remove(klass)
66: end
Resets the registered_items list to the list specified by the initial_state method.
# File lib/mack-facets/utils/registry_list.rb, line 54
54: def reset!
55: self.instance.reset!
56: end
Adds an object to the list at a specified position. By default the position is last.
# File lib/mack-facets/utils/registry_list.rb, line 30
30: def add(klass, position = self.registered_items.size)
31: self.registered_items.insert(position, klass)
32: self.registered_items.uniq!
33: self.registered_items.compact!
34: end
Override this method to set the initial state of the registered_items Array. By default this list is empty.
# File lib/mack-facets/utils/registry_list.rb, line 20
20: def initial_state
21: []
22: end
Removes an object from the list.
# File lib/mack-facets/utils/registry_list.rb, line 37
37: def remove(klass)
38: self.registered_items.delete(klass)
39: end
Resets the registered_items list to the list specified by the initial_state method.
# File lib/mack-facets/utils/registry_list.rb, line 25
25: def reset!
26: @registered_items = self.initial_state.dup
27: end