this pattern seems a little weird to me but I don't have any context into the original implementation...

I would just directly assign functions to the object.