> -----Original Message-----
> From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]
> On Behalf Of E. Gladyshev
> Sent: Friday, August 01, 2003 1:23 PM
> To: Boost mailing list
> Subject: Re: [boost] GUI/GDI template library
> 
> 
> --- Douglas Gregor <[EMAIL PROTECTED]> wrote:
> > > template < typename IT, typename PhysicalGuiLayer
> > >
> > > class ListControl
> 
> I came with a name for this idiom, ImplTraits idiom.
> 
> template <... typename ImplTraits >
> class someclass
> 
> 
> It is like the name of the pImpl idiom.

Even if the implementation is parameterized by a traits or other class,
we could still use a non template class in the implementation to reduce
compile times, which is what I though the original poster was trying to
say.

template <... typename ImplTraits> class some_edit_class :
edit_control_wrapper {};

Also, I wonder if we can delay specifying the traits.  It might be nice
to not have to mention it everywhere.  For instance, in Spirit you might
have a chuck of code like:

  r = real_p >> *(ch_p(',') >> real_p);

If you have to use a different type of scanner (which is sort of a
trait) you don't have to change the above code, just the type of the
rule, which is better than having to say:

  r = real_p<scanner_type>() >> *(ch_p<scanner_type>(',') >>
real_p<scanner_type>());

or to translate into the GUI library I've put up (have any of you looked
at the example code yet?):

  gui_application<my_traits> app = row("name: ", edit(&employee::name));

vs.

  gui_application<my_traits> app = row<my_traits>("name: ",
edit<my_traits>(&employee::name));

Does that make sense or am I off the mark?

Brock

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to