Class: Fiona7::WidgetGc::GarbageCollector
- Inherits:
-
Object
- Object
- Fiona7::WidgetGc::GarbageCollector
- Defined in:
- lib/fiona7/widget_gc/garbage_collector.rb
Instance Method Summary collapse
- #gc! ⇒ Object
-
#initialize(object_id, mode) ⇒ GarbageCollector
constructor
A new instance of GarbageCollector.
Constructor Details
#initialize(object_id, mode) ⇒ GarbageCollector
Returns a new instance of GarbageCollector.
10 11 12 13 14 |
# File 'lib/fiona7/widget_gc/garbage_collector.rb', line 10 def initialize(object_id, mode) self.object_id = object_id self.mode = mode self.klass = Fiona7::WriteObj end |
Instance Method Details
#gc! ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/fiona7/widget_gc/garbage_collector.rb', line 16 def gc! if (sweep_strategy = SweepStrategies::Factory.for(self.mode, Fiona7.)) object = Prefetch::ObjPrefetch.new(self.klass, [self.object_id]).find_one(self.object_id) = Prefetch::WidgetResolverPrefetch.new(self.klass, [object]).(object) marker = Marker.new(object, ) if marker.garbage? sweep_strategy.new(object, ).sweep!(marker.garbage) end end end |