diff --git a/include/boost/function.hpp b/include/boost/function.hpp index 24c0942..cd63901 100644 --- a/include/boost/function.hpp +++ b/include/boost/function.hpp @@ -1,3 +1,5 @@ +// Boost.Function library + // Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) // // Permission to copy, use, sell and distribute this software is granted diff --git a/include/boost/function/function0.hpp b/include/boost/function/function0.hpp index 90b6212..c6538dc 100644 --- a/include/boost/function/function0.hpp +++ b/include/boost/function/function0.hpp @@ -1,3 +1,5 @@ +// Boost.Function library + // Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) // // Permission to copy, use, sell and distribute this software is granted diff --git a/include/boost/function/function1.hpp b/include/boost/function/function1.hpp index 1ac0cd6..c9ea1de 100644 --- a/include/boost/function/function1.hpp +++ b/include/boost/function/function1.hpp @@ -1,3 +1,5 @@ +// Boost.Function library + // Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) // // Permission to copy, use, sell and distribute this software is granted diff --git a/include/boost/function/function10.hpp b/include/boost/function/function10.hpp index 1850b94..63e89ca 100644 --- a/include/boost/function/function10.hpp +++ b/include/boost/function/function10.hpp @@ -1,3 +1,5 @@ +// Boost.Function library + // Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) // // Permission to copy, use, sell and distribute this software is granted diff --git a/include/boost/function/function2.hpp b/include/boost/function/function2.hpp index 1233f05..b65575e 100644 --- a/include/boost/function/function2.hpp +++ b/include/boost/function/function2.hpp @@ -1,3 +1,5 @@ +// Boost.Function library + // Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) // // Permission to copy, use, sell and distribute this software is granted diff --git a/include/boost/function/function3.hpp b/include/boost/function/function3.hpp index f1bf9b8..45e7c7d 100644 --- a/include/boost/function/function3.hpp +++ b/include/boost/function/function3.hpp @@ -1,3 +1,5 @@ +// Boost.Function library + // Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) // // Permission to copy, use, sell and distribute this software is granted diff --git a/include/boost/function/function4.hpp b/include/boost/function/function4.hpp index 525c9a3..d4d4851 100644 --- a/include/boost/function/function4.hpp +++ b/include/boost/function/function4.hpp @@ -1,3 +1,5 @@ +// Boost.Function library + // Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) // // Permission to copy, use, sell and distribute this software is granted diff --git a/include/boost/function/function5.hpp b/include/boost/function/function5.hpp index abde1fd..0af4cca 100644 --- a/include/boost/function/function5.hpp +++ b/include/boost/function/function5.hpp @@ -1,3 +1,5 @@ +// Boost.Function library + // Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) // // Permission to copy, use, sell and distribute this software is granted diff --git a/include/boost/function/function6.hpp b/include/boost/function/function6.hpp index 86cabbc..9b63300 100644 --- a/include/boost/function/function6.hpp +++ b/include/boost/function/function6.hpp @@ -1,3 +1,5 @@ +// Boost.Function library + // Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) // // Permission to copy, use, sell and distribute this software is granted diff --git a/include/boost/function/function7.hpp b/include/boost/function/function7.hpp index 3ff508f..7c91e72 100644 --- a/include/boost/function/function7.hpp +++ b/include/boost/function/function7.hpp @@ -1,3 +1,5 @@ +// Boost.Function library + // Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) // // Permission to copy, use, sell and distribute this software is granted diff --git a/include/boost/function/function8.hpp b/include/boost/function/function8.hpp index 4f536c4..abef7da 100644 --- a/include/boost/function/function8.hpp +++ b/include/boost/function/function8.hpp @@ -1,3 +1,5 @@ +// Boost.Function library + // Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) // // Permission to copy, use, sell and distribute this software is granted diff --git a/include/boost/function/function9.hpp b/include/boost/function/function9.hpp index 84864ec..186939c 100644 --- a/include/boost/function/function9.hpp +++ b/include/boost/function/function9.hpp @@ -1,3 +1,5 @@ +// Boost.Function library + // Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) // // Permission to copy, use, sell and distribute this software is granted diff --git a/include/boost/function/function_base.hpp b/include/boost/function/function_base.hpp index ee5ef5f..04713d3 100644 --- a/include/boost/function/function_base.hpp +++ b/include/boost/function/function_base.hpp @@ -1,3 +1,5 @@ +// Boost.Function library + // Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) // // Permission to copy, use, sell and distribute this software is granted @@ -135,7 +137,7 @@ namespace boost { typedef Functor functor_type; # ifndef BOOST_NO_STD_ALLOCATOR typedef typename Allocator::template rebind::other - allocator_type; + allocator_type; typedef typename allocator_type::pointer pointer_type; # else typedef functor_type* pointer_type; diff --git a/include/boost/function/function_template.hpp b/include/boost/function/function_template.hpp index 842761f..b8532de 100644 --- a/include/boost/function/function_template.hpp +++ b/include/boost/function/function_template.hpp @@ -1,3 +1,5 @@ +// Boost.Function library + // Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) // // Permission to copy, use, sell and distribute this software is granted diff --git a/index.html b/index.html index 18e23e6..05b7fcf 100644 --- a/index.html +++ b/index.html @@ -33,6 +33,7 @@
  • Performance
  • Portability
  • Design rationale
  • +
  • Acknowledgements
  • Frequently Asked Questions
  • @@ -324,6 +325,9 @@ And, of course, function pointers have several advantages over Boost.Function:

    A compiler with strong interprocedural analysis could significantly reduce the overhead associated with virtual function calls such that the alternative used by Boost.Function is less efficient. No compiler has yet been found where this is true, but when it does occur the BOOST_FUNCTION_USE_VIRTUAL_FUNCTIONS macro can be defined to revert to the simpler implementation based on virtual functions. +

    Acknowledgements

    + +

    Many people were involved in the construction of this library. William Kempf, Jesse Jones and Karl Nelson were all extremely helpful in isolating an interface and scope for the library. John Maddock managed the formal review, and many reviewers gave excellent comments on interface, implementation, and documentation.


    Doug Gregor
    diff --git a/test/allocator_test.cpp b/test/allocator_test.cpp index ae6d1c6..cab749f 100644 --- a/test/allocator_test.cpp +++ b/test/allocator_test.cpp @@ -1,3 +1,18 @@ +// Boost.Function library + +// Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) +// +// Permission to copy, use, sell and distribute this software is granted +// provided this copyright notice appears in all copies. +// Permission to modify the code and to distribute modified code is granted +// provided this copyright notice appears in all copies, and a notice +// that the code was modified is included with the copyright notice. +// +// This software is provided "as is" without express or implied warranty, +// and with no claim as to its suitability for any purpose. + +// For more information, see http://www.boost.org + #define BOOST_INCLUDE_MAIN #include #include diff --git a/test/defarg_test.cpp b/test/defarg_test.cpp index af1cd94..01137e3 100644 --- a/test/defarg_test.cpp +++ b/test/defarg_test.cpp @@ -1,3 +1,18 @@ +// Boost.Function library + +// Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) +// +// Permission to copy, use, sell and distribute this software is granted +// provided this copyright notice appears in all copies. +// Permission to modify the code and to distribute modified code is granted +// provided this copyright notice appears in all copies, and a notice +// that the code was modified is included with the copyright notice. +// +// This software is provided "as is" without express or implied warranty, +// and with no claim as to its suitability for any purpose. + +// For more information, see http://www.boost.org + #define BOOST_INCLUDE_MAIN #include #include diff --git a/test/function_n_test.cpp b/test/function_n_test.cpp index 75971cb..9cc13ed 100644 --- a/test/function_n_test.cpp +++ b/test/function_n_test.cpp @@ -1,3 +1,18 @@ +// Boost.Function library + +// Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) +// +// Permission to copy, use, sell and distribute this software is granted +// provided this copyright notice appears in all copies. +// Permission to modify the code and to distribute modified code is granted +// provided this copyright notice appears in all copies, and a notice +// that the code was modified is included with the copyright notice. +// +// This software is provided "as is" without express or implied warranty, +// and with no claim as to its suitability for any purpose. + +// For more information, see http://www.boost.org + #define BOOST_INCLUDE_MAIN #include #include diff --git a/test/function_test.cpp b/test/function_test.cpp index f8eb5d3..2f734ff 100644 --- a/test/function_test.cpp +++ b/test/function_test.cpp @@ -1,3 +1,18 @@ +// Boost.Function library + +// Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) +// +// Permission to copy, use, sell and distribute this software is granted +// provided this copyright notice appears in all copies. +// Permission to modify the code and to distribute modified code is granted +// provided this copyright notice appears in all copies, and a notice +// that the code was modified is included with the copyright notice. +// +// This software is provided "as is" without express or implied warranty, +// and with no claim as to its suitability for any purpose. + +// For more information, see http://www.boost.org + #define BOOST_INCLUDE_MAIN #include #include diff --git a/test/function_test_fail1.cpp b/test/function_test_fail1.cpp index 8b802d1..3f85e26 100644 --- a/test/function_test_fail1.cpp +++ b/test/function_test_fail1.cpp @@ -1,3 +1,18 @@ +// Boost.Function library + +// Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) +// +// Permission to copy, use, sell and distribute this software is granted +// provided this copyright notice appears in all copies. +// Permission to modify the code and to distribute modified code is granted +// provided this copyright notice appears in all copies, and a notice +// that the code was modified is included with the copyright notice. +// +// This software is provided "as is" without express or implied warranty, +// and with no claim as to its suitability for any purpose. + +// For more information, see http://www.boost.org + #define BOOST_INCLUDE_MAIN #include #include diff --git a/test/function_test_fail2.cpp b/test/function_test_fail2.cpp index 902f827..620ba38 100644 --- a/test/function_test_fail2.cpp +++ b/test/function_test_fail2.cpp @@ -1,3 +1,18 @@ +// Boost.Function library + +// Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) +// +// Permission to copy, use, sell and distribute this software is granted +// provided this copyright notice appears in all copies. +// Permission to modify the code and to distribute modified code is granted +// provided this copyright notice appears in all copies, and a notice +// that the code was modified is included with the copyright notice. +// +// This software is provided "as is" without express or implied warranty, +// and with no claim as to its suitability for any purpose. + +// For more information, see http://www.boost.org + #define BOOST_INCLUDE_MAIN #include #include diff --git a/test/mixin_test.cpp b/test/mixin_test.cpp index 7053660..4e559e3 100644 --- a/test/mixin_test.cpp +++ b/test/mixin_test.cpp @@ -1,3 +1,18 @@ +// Boost.Function library + +// Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) +// +// Permission to copy, use, sell and distribute this software is granted +// provided this copyright notice appears in all copies. +// Permission to modify the code and to distribute modified code is granted +// provided this copyright notice appears in all copies, and a notice +// that the code was modified is included with the copyright notice. +// +// This software is provided "as is" without express or implied warranty, +// and with no claim as to its suitability for any purpose. + +// For more information, see http://www.boost.org + #define BOOST_INCLUDE_MAIN #include #include diff --git a/test/policy_test.cpp b/test/policy_test.cpp index 6e72803..85ce7d8 100644 --- a/test/policy_test.cpp +++ b/test/policy_test.cpp @@ -1,3 +1,18 @@ +// Boost.Function library + +// Copyright (C) 2001 Doug Gregor (gregod@cs.rpi.edu) +// +// Permission to copy, use, sell and distribute this software is granted +// provided this copyright notice appears in all copies. +// Permission to modify the code and to distribute modified code is granted +// provided this copyright notice appears in all copies, and a notice +// that the code was modified is included with the copyright notice. +// +// This software is provided "as is" without express or implied warranty, +// and with no claim as to its suitability for any purpose. + +// For more information, see http://www.boost.org + #define BOOST_INCLUDE_MAIN #include #include