Boost logo

Boost :

From: Marco Costalba (mcostalba_at_[hidden])
Date: 2008-05-09 14:50:53

Hi all,

    this is the first official version of multi-signature
boost::function extension (MSF) pushed to Boost Vault under the name

A multi-signature boost:function 'f' allows something like this

int foo1(char) { return -1; }

char foo2(string) { return 'x'; }

f = foo1;
f = foo2;

assert( f('x') == -1 );

assert( f("hello") == 'x' );

New in this version:

- Feature complete: all boost::function API has been naturally extended

- Documented and added a tutorial according to boost standards, see

- Added a dynamic dispatcher and an object factory examples that use
MSF as a building block

- Rewritten part of the code to be even simpler and easy to understand

- Fixed case of functors with const and/or volatile operator()

- Compiler friendly: tested with gcc3.4, gcc4.2, MSVC

- No known issues

This library extension, although flexible and IMHO powerful is notably
very simple and small, so I would like to ask if someone is interested
to add this code in some way directly to boost.function


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