amount_generator: speed up property initialization of generated amounts
By default, Base._edit first tests each property with getProperty, not to modify the object when values don't change. Here, getProperty costs a lot (in particular for categories) and rarely/never avoids the use of setters. So here, the main gain is to do something like _edit(force_update=1). As an additional small optimization, we directly use _setProperty instead of _edit. We also stop copying int_index from the Amount Generator Line because it's not useful enough: - float_index may be used instead - or dependency-based sorting is enough - as a last resort, properties can be fetched directly from the causality value, or dynamically with asPredicate and mapped_value_property_list
Showing
Please register or sign in to comment