Let’s investigate what "not_null" (from the Core Guidelines/Guideline Support Library) can do for us.
by Bartlomiej Filipek
From the article:
I believe "not_null" can help in many places. It won’t do the magic on its own, but at least it forces us to rethink the design. Functions might become smaller (as they won’t have to check for nulls), but on the other hand, the caller might require being updated.