|
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