mirror of
https://github.com/boostorg/function.git
synced 2025-07-29 12:27:15 +02:00
Small buffer optimization for Boost.Function
[SVN r32282]
This commit is contained in:
@ -14,23 +14,21 @@
|
||||
struct stateless_integer_add {
|
||||
int operator()(int x, int y) const { return x+y; }
|
||||
|
||||
void* operator new(std::size_t, stateless_integer_add*)
|
||||
void* operator new(std::size_t)
|
||||
{
|
||||
throw std::runtime_error("Cannot allocate a stateless_integer_add");
|
||||
}
|
||||
|
||||
void operator delete(void*, stateless_integer_add*) throw()
|
||||
void* operator new(std::size_t, void* p)
|
||||
{
|
||||
return p;
|
||||
}
|
||||
|
||||
void operator delete(void*) throw()
|
||||
{
|
||||
}
|
||||
};
|
||||
|
||||
namespace boost {
|
||||
template<>
|
||||
struct is_stateless<stateless_integer_add> {
|
||||
BOOST_STATIC_CONSTANT(bool, value = true);
|
||||
};
|
||||
}
|
||||
|
||||
int test_main(int, char*[])
|
||||
{
|
||||
boost::function2<int, int, int> f;
|
||||
|
Reference in New Issue
Block a user