Boost logo

Boost :

From: Arkadiy Vertleyb (vertleyb_at_[hidden])
Date: 2005-06-29 08:41:34

"Peder Holt" <peder.holt_at_[hidden]> wrote

> It would also be possible to add a bit of syntactic sugar to allow:
> enum color {...};
> template<color> some_class {};
> template<template <typename,int> class T> struct tt_class {};
> template<typename A1,T A2> struct dependent_class {};
> BOOST_TYPEOF_REGISTER_TEMPLATE(some_class, (enum(color)) );
> BOOST_TYPEOF_REGISTER_TEMPLATE(tt_class, (template((typename)(int))) );
(typename)(dependent(0)) );

Unless I am missing something, there may be some problems with this.

The first thing that needs to be done is pasting prefix and suffix to allow
handling something like "unsigned int":

PREFIX_unsigned int_SUFFIX

However doing the same with, say, "enum(color)" would have to produce:


And I am pretty sure some preprocessors (for example GCC) would have a
problem with pasting anything to ')'.

But maybe you have something else in mind?


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