From: John P. F. <jf...@ov...> - 2009-11-17 20:38:16
|
Glyn Matthews wrote: > 1. boost::network::uri::uri and boost::network::uri::http::uri have a > redundant namespace. I understand that the directives maybe shouldn't be in > boost::network, but a different named namespace might be better so that we > could have boost::network::uri and boost::network::http::uri. > I think that directives which perform requirements of the uri API should be within a boost::network::uri namespace. If it handles something specific to http uri -though not necessarily at exactly boost::network::uri::http- either the associated tag should be within ::http, or the function or class which handles http specific things should be. So in short there is no easy answer, it depends on things like cross cutting concerns, and what boost::network::uri means ( I'll put what I've discussed here in the design spec for revision). > 2. I had to do some workarounds with the wrappers and directives to add > support for std::wstring. > Thanks! > 3. I need clarification as to why there should be tags to identify different > protocols. I understand the need to specialize templates for strings and > header_containers but I can't see why we have, e.g. > boost::network::http::message_tags to specialize > boost::network::http::basic_message as we do now. this means we have to > provide traits for struct string<http::message_tags> as well as > string<tags::default_> which are in fact going to be identical. > > 4. I don't like the name, tags::default_. I added tags::default_string and > tags::default_wstring, and, while they're more descriptive, I think they can > be improved. > 5. Internally, we sometimes use namespace impl and sometimes namespace > detail. We should be more consistent and choose one. > 6. The implementation of http::message and http::message uses std::string > No comment in regards to the rest, as I think Dean is currently in a better position to answer. John |