Commit Graph

540 Commits

Author SHA1 Message Date
08d727df21 Added ability to handle member function pointers natively, e.g.,
boost::function<int, X*, int> f(&X::foo);


[SVN r11393]
2001-10-16 19:23:37 +00:00
07390a35e3 Check the const function_cast function
[SVN r11364]
2001-10-08 13:55:55 +00:00
e00d8f0afb Fixes for MSVC
[SVN r11363]
2001-10-08 13:49:02 +00:00
a81c30d130 regression.cfg: Removed defarg_test.cpp entry
[SVN r11362]
2001-10-08 13:34:00 +00:00
4147c42599 defarg_test.cpp: removed (it is incorrect)
function_n_test.cpp:
function_test.cpp:
  Updated with tests of target_type() and casting


[SVN r11361]
2001-10-08 13:33:14 +00:00
1d4282c706 Added support for target_type() member function (returns an std::type_info of
the underlying function object) and casting to retrieve the underyling target.


[SVN r11360]
2001-10-08 13:32:24 +00:00
62d3c6d426 Fix for BOOST_NO_STD_ALLOCATOR when std::allocator doesn't even exist
[SVN r11349]
2001-10-06 20:28:27 +00:00
a30aa907d2 Add a missing space.
[SVN r11152]
2001-09-19 15:07:56 +00:00
b240e7efca Split default and mixin constructor into separate constructors (instead of using default value) because of MSVC 7.0b2 (Peter Dimov)
[SVN r11139]
2001-09-18 14:48:51 +00:00
50fb80c253 Fix broken hyperlink
[SVN r10896]
2001-08-19 15:08:33 +00:00
f79765cce1 reference.html:
- Remove declaration/documentation of non-const operator().
	- Update documentation of operator() const to state that the called
	  object is not cv-qualified.


[SVN r10687]
2001-07-22 05:30:15 +00:00
e34716babd function_n_test.cpp:
function_test.cpp:
	- Updated testcases to reflect semantic change in const calling

policy_test.cpp:
	- precall/postcall in policy should take pointers to const function_base


[SVN r10686]
2001-07-22 05:27:20 +00:00
657a63fce4 function_template.hpp:
- const function calling semantics changed. Now 'function' has
	  pointer/reference semantics (constness of 'function' object does not
	  affect constness of targetted function object)


[SVN r10685]
2001-07-22 05:26:17 +00:00
a9aa465826 function_n_test.cpp:
function_test.cpp:
	- Removed 'static' storage specifier from 'global_int' declaration.
	  Perhaps Sun Workshop 6 will compile Boost.Function now?


[SVN r10684]
2001-07-22 05:03:43 +00:00
aa026cd1d8 defarg_test.cpp:
- Test zero and one arguments


[SVN r10640]
2001-07-17 01:27:42 +00:00
931737f72b reference.html:
- Boldified C++ keywords to make summary more readable.


[SVN r10634]
2001-07-16 18:17:00 +00:00
ce08e55a63 referemce.html:
- Document swapping of mixins in swap()


[SVN r10622]
2001-07-14 20:02:39 +00:00
8121f4ebb6 reference.html:
- Assignment operator and set() function both meet the strong exception
	  guarantee.


[SVN r10621]
2001-07-14 19:58:43 +00:00
d37903b2e7 index.html:
- Removed reference and tutorial: now just link to them

faq.html:
	- Moved to doc/faq.html

doc/faq.html:
	- Relative directory fixups

doc/reference.html:
	- Reference manual for Boost.Function

doc/tutorial.html:
	- Tutorial for Boost.Function (the old "Usage" sections)
	- Additional example showing the use of references and arrays

example/bind1st.cpp:
example/int_div.cpp:
example/sum_avg.cpp:
	- Examples from tutorial


[SVN r10620]
2001-07-14 19:57:09 +00:00
3ba640809b function.hpp:
- Use "self_type" instead of "function" for constructing swapping temporary (Borland C++ needs it)

function_base.hpp:
  - Give empty copy constructor, default constructor, and assignment operator to empty_function_mixin (MSVC generates incorrect ones)

function_template.hpp:
  - Make Borland C++ and MSVC agree on the code (involves an extra constructor definition and careful use of self_type vs. BOOST_FUNCTION_FUNCTION)


[SVN r10619]
2001-07-14 19:34:14 +00:00
131ed15e59 mixin_test.cpp:
- Check assignment from function pointer


[SVN r10618]
2001-07-14 18:58:16 +00:00
aad9b5f5e0 function_template.cpp:
- Correctly copy mixin when assigning from any function/function object


[SVN r10617]
2001-07-14 18:51:00 +00:00
40b70509cc mixin_test.cpp:
- Test persistence of mixins when assigning to a function object


[SVN r10616]
2001-07-14 18:46:42 +00:00
b5f3694938 mixin_test.cpp:
- Test copying of mixins


[SVN r10615]
2001-07-14 18:41:47 +00:00
5754d88110 function.hpp:
- Use swap() for exception safe assignment operators

function_template.hpp:
	- Use swap() for exception safe assignment operators
	- Remove BOOST_FUNCTION_BASE class.
	- Support copying of mixins. (Richard Crossley)


[SVN r10614]
2001-07-14 18:41:19 +00:00
b51aa315da index.html:
- Use relative pathnames for links to generic programming techniques
	  page (Gustavo Guerra).
	- Terminology in Basic Usage intro (Jeremy Siek).


[SVN r10592]
2001-07-11 19:49:26 +00:00
deabdc22c6 faq.html:
- Fixed HTML typo near the end

index.html:
	- Added declarations of all members for all classes.
	- Added detailed description of interface according to Boost
	  guidelines.


[SVN r10591]
2001-07-11 18:55:44 +00:00
e28a833db5 Ron Garcia suggested removal of the duplicate explanation of (bool)f/f.empty()
[SVN r10586]
2001-07-10 21:56:02 +00:00
93ad5963c9 function_base.hpp:
- Changed "RET" to "type" in the IF template metafunction because
	  the GCC source headers define RET as a macro.


[SVN r10509]
2001-07-02 15:25:04 +00:00
48948088fd function_template.hpp:
- One argument functions model AdaptableUnaryFunction
	- Two argument functions model AdaptableBinaryFunction


[SVN r10502]
2001-07-01 19:17:38 +00:00
1f24873577 The void partial specialization of the function classes has been removed in
favor of a common interface. Regardless of the compiler's capabilities, the
result type of a Boost.Function function object that was declared void will
be "unused". This allows the result of a Boost.Function function object to
be passed as a parameter regardless of whether the function is declared as
returning void. It greatly simplifies the use of Boost.Function objects with
wrapper objects (i.e., when the side effects are important, but the result
isn't: consider binding and composition when calling a std::for_each loop)


[SVN r10491]
2001-07-01 02:17:36 +00:00
53f9f4484f Removed consts and associated const_casts from Borland workaround code.
[SVN r10486]
2001-06-29 20:34:32 +00:00
db362782ac function_n_test.cpp:
function_test.cpp:
	- Removed silly ';;' constructs: MSVC seems to handle the updated
	  code much better.

regression.cfg:
	- Fixed typos


[SVN r10482]
2001-06-29 19:35:40 +00:00
73f380d5ac Boost.Function:
- Redesigned decision procedure for "is it a function pointer" vs.
	  "is it an object".
	- No longer requires copy constructions of function objects during
	  assignment or construction.
	- Added operator! to boost::function_base instead of relying on
	  safe_bool conversion.
	- BOOST_NO_DEPENDENT_BASE_LOOKUP is now unnecessary
	- BOOST_WEAK_CONVERSION_OPERATORS is now unnecessary
	- BOOST_WEAK_FUNCTION_TEMPLATE_ORDERING is now unnecessary


[SVN r10481]
2001-06-29 19:33:29 +00:00
1678e1fde6 function_n_test.cpp:
function_test.cpp:
	- Add tests for self-assignment


[SVN r10433]
2001-06-26 13:41:10 +00:00
07c66d01fa function.hpp:
- Added self-assignment check in operator= and set()

function_template.hpp:
	- Added self-assignment check in operator= and set()


[SVN r10431]
2001-06-26 13:38:58 +00:00
0270911a43 regression.cfg:
- Run all regression tests for Boost.Function


[SVN r10397]
2001-06-22 14:36:30 +00:00
42aedefe2f * Added initial comments and copyright notices to any files missing them.
* "Acknowledgements" section added to documentation


[SVN r10396]
2001-06-22 14:13:03 +00:00
322df8287e Initial Boost.Function commit
[SVN r10372]
2001-06-21 17:01:43 +00:00
62db26b94d Initial comit
[SVN r10368]
2001-06-21 16:19:33 +00:00