
On Wed, 26 Jul 2006 02:28:18 -0300, "Fernando Cacciola" <fernando_cacciola@hotmail.com> wrote:
FWIW, it can't go under the detail folder and/or namespace. That's how I initially did it but someone noticed that "none" and "none_t" are part of the public interface for optional<>, so these must be at some "user level" space.
I see. Guess I should look at the optional<> docs. I participated to its initial discussion but I don't remember the existence of none, just of a default constructor. Unexcusably I thought it was an implementation detail.
IOW, the implementation of "none_t" and "none" are a detail, but _they_ are not.
Understood. This slightly changes my perspective.
They can be considered general or specific, which is different, so if they don't go into the root folder they must go into /optional (if they are considered specific), or /utility if not.
But then I don't see much of a difference between the root folder and /utility for this.
Well, perhaps it being documented independently from optional<> in the latter case. I also find that something like boost::none doesn't suggest enough, whereas optional::none mostly does. -- [ Gennaro Prota, C++ developer for hire ]