Problem with return super().__getattribute__(attr) blender 2.8
Knowing one's self

You have called the following 

emitter_update(self, context)


from the operator, where self is the operator instance passed as the self argument to the execute(self, context) method. Operators have no particle systems 8^). The update method expects self to be an Object type which has a particle settings attribute.

From within the operator use

emitter_update(context.object, context)