static LiveValue dm_transientCalculatedLiveValue(DynModule module default dm_current_mandatory(), Class type, IF0 calc) { lock module.lock; SimpleLiveValue value = new(type, calc!); module.onFieldChange(voidfunc(S field) { value.set(calc!) }); ret value; } static LiveValue dm_transientCalculatedLiveValue(Class type, IF0 calc) { ret dm_transientCalculatedLiveValue(type, calc); } static LiveValue dm_transientCalculatedLiveValue(IF0 calc) { ret dm_transientCalculatedLiveValue(O, calc); }