I'm already using null and an IF statement in that manner. There's a slight hit in performance and while it's not that big of a hit
Well...... call me stupid if you want, but.. for you to have thought that self would work, then you must be calling the method from/by some other method/object of that type, so why dont you just pass self as a parrameter?
But to be honest I wouldnt worry about the hit, less you are calling it millions of times. And in that case I would write two different ones.