Put the whole thing under test. If one of your tests specifies that the return type must be x, hopefully the test would fail when using the new implementation. Beyond the test failing, hopefully the developers would use the tests as developer documentation and see what the intended behavior is.
No, on the language level it's not possible to constrain a function's return value. Only the function arguments' type hints are allowed — php.net/manual/en/language.oop5.typehint... What you could do, is making sure that the wrong type of the returned value is caught early. Say, in the IOC container startup code.
You instantiate your DbInterface, and check the return type of run(). If it's wrong, throw an exception.
Sure object method returns is made (without quotes):. Make sure object method returns.
I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.