Boost logo

Boost :

From: Gennadiy Rozental (gennadiy.rozental_at_[hidden])
Date: 2004-04-02 14:50:07


> > I do undersand that. But I still believe that trait specification is
part of
> > definition.
>
> Not if you want to describe the properties of some 3rd-party class:
>
> #include <3rd_party/smart_ptr.hpp>
>
> template <class T>
> struct is_dereferenceable<third_party::smart_ptr<T> >
> : mpl::true
> {};

I imagine you wouldn't do it 10 times in your code and most definetlety you
wouln't define it differently in different headers. Most probable you
introduce 3rd_party_smart_ptr_wrap.hpp that contains above trait
specification and use everywhere instead of 3rd_party/smart_ptr.hpp. So in
this case from my POV you *updated* smart_ptr definition and use this
updated definition instead of original one.

Gennadiy.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk