Using an attribute setter is not appropriate here, because it leads to a confusing expectation that the attribute is set *externally* to the current class.  Since that isn't the case, any preserved behaviour here should be internal to the class -- ideally, in private functions -- rather than exposed as at attribute setter.