Skip to content
clbustos edited this page Sep 14, 2010 · 2 revisions

Spec por Dirty-Memoize

DirtyMemoize extended object
- should initialize with dirty? to true
- should initialize with number of computation to 0
- read inmediatly the correct value

DirtyMemoize extended object reads ‘dirty’ attributes
- #compute is called
- compute_count set to 1
- dirty? set to false
- compute_count doesn’t change with multiple calls

DirtyMemoize extended object calls dirty writers before dirty getter
- set dirty? to true
- doesn’t call compute
- doesn’t change dirty getters

DirtyMemoize extended object calls dirty getter after call dirty writer
- set dirty? to false
- calls compute, only once
- set value or internal variable
- set getter method with a different value

DirtyMemoize extended object uses cache
- so changing internal variables doesn’t produce external changes
- so deleting it implies calculate all again

DirtyMemoize extended object could call other computation method
- using DIRTY_COMPUTER

Clone this wiki locally