Boost logo

Boost :

From: Peter Dimov (pdimov_at_[hidden])
Date: 2004-04-02 12:55:02


David Bergman wrote:
>
> On the meta level, a trait places a Concept in relation to other
> Concepts, i.e., a trait is STRUCTURAL. On the object-level, a Model
> is related to other Models or Features.
>
> trait<Type>::neighbor_type - relates two Concepts
> trait<Type>::child_type - adds a Feature
>
> A policy is BEHAVIORAL. And one often uses policies in a dynamic
> setting, adding them in runtime. We, of course, often implicitly
> refer to the compile-time policies...

So...

In A<X>::frobnicate(), 'A' is a policy, because it's behavioral, and in

template<class B> struct X
{
    template typename B::value_type value_type;
};

'B' is a trait, because it's structural?


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