Boost logo

Boost :

Subject: Re: [boost] Boost policy for putting headers in boost/ Was: #3541 Support <boost/ptr_map.hpp>
From: Stewart, Robert (Robert.Stewart_at_[hidden])
Date: 2009-10-23 11:04:58

Christopher Jefferson wrote:
> On 23 Oct 2009, at 15:41, Stewart, Robert wrote:
> > troy d. straszheim wrote:
> >>
> >> % ls boost/fusion
> >> adapted/ container.hpp iterator.hpp support/ view.hpp
> >> adapted.hpp functional/ mpl/ support.hpp
> >> algorithm/ functional.hpp mpl.hpp tuple/
> >> algorithm.hpp include/ sequence/ tuple.hpp
> >> container/ iterator/ sequence.hpp view/
> >
> > I find navigating such directory structures needlessly annoying: I
> > can't use filename completion easily. With all.hpp, the directory
> > name completes, with a trailing "/", and then I can type "all" and
> > complete that. (Yes, I can get completion up to the "/" or "." and
> > then type whichever I want to complete the header name or navigate
> > into the subdirectory, but the partial completion can also mean that
> > there are other files that begin with what I typed. I can't
> > navigate as easily unless I already know the directory contents.)
> >
> I very rarely tab-complete header file names, and I suspect most users

Your usage patterns are limited to your coworkers and your environment. Mine suggests that there are a great many people who use tab completion constantly. Consequently, we can't favor one over the other if a neutral solution is possible.

> don't either. Using 'all.hpp' means that when listing header files
> (for example because I want to know what file a particular function
> came from), you need more text to distinguish the file you are
> refering to. Having many identically named headers in different
> directories sounds to me like a recipe for confusion.

My current emacs settings would make all.hpp less than ideal, too, *if* I had more than one open because I don't include the directory name in the buffer names. That means I could have multiple "all.hpp" buffers open at once, making switching among them more difficult than necessary.

However, I really can't imagine having all.hpp files open for more than a moment to determine the headers they include. Likewise, there aren't any symbols defined in such headers -- they only include other headers -- so you wouldn't find them in your symbol search results either.

Rob Stewart robert.stewart_at_[hidden]
Software Engineer, Core Software using std::disclaimer;
Susquehanna International Group, LLP

IMPORTANT: The information contained in this email and/or its attachments is confidential. If you are not the intended recipient, please notify the sender immediately by reply and immediately delete this message and all its attachments. Any review, use, reproduction, disclosure or dissemination of this message or any attachment by an unintended recipient is strictly prohibited. Neither this message nor any attachment is intended as or should be construed as an offer, solicitation or recommendation to buy or sell any security or other financial instrument. Neither the sender, his or her employer nor any of their respective affiliates makes any warranties as to the completeness or accuracy of any of the information contained herein or that this message or any of its attachments is free of viruses.

Boost list run by bdawes at, gregod at, cpdaniel at, john at