From 7e8ed986153bd5505ff5a5ae49758547408b7f2d Mon Sep 17 00:00:00 2001 From: jzmaddock Date: Sun, 31 Aug 2014 18:51:58 +0100 Subject: [PATCH] Include is_copy_assignable in doc build. --- doc/html/boost_typetraits/reference.html | 1 + .../reference/is_copy_assignable.html | 106 ++++++++++++++++++ .../reference/is_copy_constructible.html | 6 +- .../boost_typetraits/reference/is_empty.html | 6 +- doc/html/index.html | 1 + doc/html/index/s11.html | 3 +- doc/html/index/s12.html | 2 +- doc/html/index/s13.html | 2 +- doc/html/index/s14.html | 3 +- doc/type_traits.qbk | 1 + 10 files changed, 121 insertions(+), 10 deletions(-) create mode 100644 doc/html/boost_typetraits/reference/is_copy_assignable.html diff --git a/doc/html/boost_typetraits/reference.html b/doc/html/boost_typetraits/reference.html index f47511e..c6686d2 100644 --- a/doc/html/boost_typetraits/reference.html +++ b/doc/html/boost_typetraits/reference.html @@ -107,6 +107,7 @@
is_const
is_convertible
is_copy_constructible
+
is_copy_assignable
is_empty
is_enum
is_final
diff --git a/doc/html/boost_typetraits/reference/is_copy_assignable.html b/doc/html/boost_typetraits/reference/is_copy_assignable.html new file mode 100644 index 0000000..4294d78 --- /dev/null +++ b/doc/html/boost_typetraits/reference/is_copy_assignable.html @@ -0,0 +1,106 @@ + + + +is_copy_assignable + + + + + + + + + + + + + + + +
Boost C++ LibrariesHomeLibrariesPeopleFAQMore
+
+
+PrevUpHomeNext +
+
+ +
template <class T>
+struct is_copy_assignable : public true_type-or-false_type {};
+
+

+ Inherits: If T + is CopyAssignable (i.e. has + an accessible explicit or implicit copy assignment operator), then inherits + from true_type, + otherwise inherits from false_type. + Type T must be a complete + type. +

+

+ In other words, inherits from true_type + only if copy assignment of T + from const T + & is not marked with = delete, + T does not derives from + boost::noncopyable and is not marked with BOOST_MOVABLE_BUT_NOT_COPYABLE(T). +

+

+ Compiler Compatibility: If the compiler + does not support partial-specialization of class templates, then this template + can not be used. +

+

+ If your compiler does not support C++11 deleted functions (= delete) + or does not support SFINAE for the deleted assignments, then derive your + classes from boost::noncopyable or mark them with BOOST_MOVABLE_BUT_NOT_COPYABLE(T) to show + that class is non-assignable. +

+

+ Trait does not care about access modifiers, so if you see errors like this: +

+
'T::operator=(const T&)' is private
+boost/type_traits/is_copy_assignable.hpp:68:5: error: within this context
+
+

+ then you are trying to call that macro for a structure with private assignment: +

+
struct T {
+    // ...
+private:
+    T &operator=(const T &);
+    // ...
+};
+
+

+ To fix that you must modify your structure, explicitly marking it as noncopyable + (= delete, + boost::noncopyable or BOOST_MOVABLE_BUT_NOT_COPYABLE(T)) + or explicitly specializing + the trait. +

+

+ Header: #include + <boost/type_traits/is_copy_assignable.hpp> + or #include <boost/type_traits.hpp> +

+
+ + + +
+
+
+PrevUpHomeNext +
+ + diff --git a/doc/html/boost_typetraits/reference/is_copy_constructible.html b/doc/html/boost_typetraits/reference/is_copy_constructible.html index 55d32db..4acb9bf 100644 --- a/doc/html/boost_typetraits/reference/is_copy_constructible.html +++ b/doc/html/boost_typetraits/reference/is_copy_constructible.html @@ -7,7 +7,7 @@ - + @@ -20,7 +20,7 @@

-PrevUpHomeNext +PrevUpHomeNext

@@ -97,7 +97,7 @@
-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/boost_typetraits/reference/is_empty.html b/doc/html/boost_typetraits/reference/is_empty.html index dfe876e..aa8fb86 100644 --- a/doc/html/boost_typetraits/reference/is_empty.html +++ b/doc/html/boost_typetraits/reference/is_empty.html @@ -6,7 +6,7 @@ - + @@ -20,7 +20,7 @@
-PrevUpHomeNext +PrevUpHomeNext

@@ -103,7 +103,7 @@
-PrevUpHomeNext +PrevUpHomeNext
diff --git a/doc/html/index.html b/doc/html/index.html index 0dab041..106f026 100644 --- a/doc/html/index.html +++ b/doc/html/index.html @@ -163,6 +163,7 @@
is_const
is_convertible
is_copy_constructible
+
is_copy_assignable
is_empty
is_enum
is_final
diff --git a/doc/html/index/s11.html b/doc/html/index/s11.html index e38fc68..6157287 100644 --- a/doc/html/index/s11.html +++ b/doc/html/index/s11.html @@ -24,7 +24,7 @@

-Class Index

+Class Index

A C D E F H I M N O P R T

@@ -232,6 +232,7 @@
  • is_compound

  • is_const

  • is_convertible

  • +
  • is_copy_assignable

  • is_copy_constructible

  • is_empty

  • is_enum

  • diff --git a/doc/html/index/s12.html b/doc/html/index/s12.html index cc0c5e4..ed1a99f 100644 --- a/doc/html/index/s12.html +++ b/doc/html/index/s12.html @@ -24,7 +24,7 @@

    -Typedef Index

    +Typedef Index

    A F R T

    diff --git a/doc/html/index/s13.html b/doc/html/index/s13.html index 3e615b2..d419ec7 100644 --- a/doc/html/index/s13.html +++ b/doc/html/index/s13.html @@ -24,7 +24,7 @@

    -Macro Index

    +Macro Index

    B

    diff --git a/doc/html/index/s14.html b/doc/html/index/s14.html index 0d15a16..ea4e467 100644 --- a/doc/html/index/s14.html +++ b/doc/html/index/s14.html @@ -23,7 +23,7 @@

    -Index

    +Index

    A B C D E F H I M N O P R T U

    @@ -744,6 +744,7 @@

    is_convertible_to_Ret

    +
  • is_copy_assignable

  • is_copy_constructible

  • is_empty

    diff --git a/doc/type_traits.qbk b/doc/type_traits.qbk index 816f7af..3965809 100644 --- a/doc/type_traits.qbk +++ b/doc/type_traits.qbk @@ -263,6 +263,7 @@ See __has_trivial_constructor. [include is_const.qbk] [include is_convertible.qbk] [include is_copy_constructible.qbk] +[include is_copy_assignable.qbk] [include is_empty.qbk] [include is_enum.qbk] [include is_final.qbk]