in reply to Re^3: return if defined
in thread return if defined
Wow, I have a split personality today.
I agree that error handling is the real bugbear of single-return. Special additional logic and/or an extra state variable are often required to make it work. It makes code less clear and sometimes even more error-prone. "Break out now" makes the most logical sense in a failure case.
But I see this example as different: there is one kind of result that could be created in one of two different ways. The if statement doesn't add any complexity to the code--you have to check for definedness somehow. Nor does it hurt clarity. Why is indenting so bad?
This is not to say that I object to your preferred solution. I think that's fine, too.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^5: return if defined
by Anonymous Monk on Dec 20, 2012 at 13:55 UTC | |
by tobyink (Canon) on Dec 20, 2012 at 14:14 UTC |