Boost logo

Boost :

From: Daniel Wallin (dalwan01_at_[hidden])
Date: 2004-02-10 01:33:14


David Abrahams wrote:

> "Brock Peabody" <brock.peabody_at_[hidden]> writes:
>
>
>>>-----Original Message-----
>>>From: boost-bounces_at_[hidden] [mailto:boost-bounces_at_[hidden]]
>>>On Behalf Of Victor A. Wagner, Jr.
>>
>>>We can either do nothing (until the standard changes so we can handle ALL
>>>types) or we can do something (handle the built-in types and the standard
>>>exceptions).
>>>
>>>I suggest "something" as a useful approach.
>>
>>I'd suggest allowing the user to specify a typelist rather than hard coding
>>the standard types. You could supply as a default the list of standard
>>types.
>
>
> There are better ways. Boost.Python uses a dynamic registration
> technique. Compile-time enumeration of the exceptions is overkill
> and not sufficiently flexible.

Isn't there a problem with ordering in hierarchies when using dynamic
registration?

    register_exception<std::exception>();
    register_exception<my_exception>();

vs

    register_exception<my_exception>();
    register_exception<std::exception>();

AFAICT there is no way to determine the most derived type. Maybe this
isn't a problem in practice..

-- 
Daniel Wallin

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