c008b0dc3a
Fixes the BOOST_FUSION_DEFINE_STRUCT* macros with an appropriate attributes FILLER macro.
...
As the BOOST_FUSION_ADAPT_STRUCT_FILLER* macros were changed to handle type
deduction, this breaks the usage that BOOST_FUSION_DEFINE_STRUCT makes from
them.
That is BOOST_FUSION_DEFINE_STRUCT_IMPL expects a simple tuple, while we
now provide a tuple containing the size of a nested tuple which either has
or not the type provided. But in the case of the DEFINE* macros it would be
a non-sense to support this kind of API as a field being defined cannot be
deduced. :)
2014-06-17 22:35:10 +02:00
ae0c976926
Fixes missing inclusion of BOOST_PP_LESS.
...
This was bringing the std::pair adapt test to fail, because it wasn't
including BOOST_PP_LESS like the other tests.
2014-06-14 12:11:44 +02:00
af812e6207
Fixed ADAPT_STRUCT_FILLER macro call for consistency.
2014-06-14 12:09:04 +02:00
9a501785e6
Removed the old auto_* headers.
2014-06-13 23:09:39 +02:00
04ce8a788b
Enabled new ADAPT_STRUCT_API for ADAPT_TPL_STRUCT.
2014-06-13 23:09:38 +02:00
ce3f2d6020
Added new ADAPT_STRUCT API support for the ADAPT_STRUCT_AS_VIEW macro.
2014-06-13 23:09:38 +02:00
687b2cf097
Factoring out of adapt_struct.hpp all the FILLER_* macros details.
...
As of BOOST_FUSION_ADAPT_STRUCT without type deduction, there were only
simple attributes filler. Now this need more complex logic to handle both
API: the backward compatible one with type specificiation, the one without
type specification and the non-variadic one which enables omitting the type
specification by providing BOOST_FUSION_ADAPT_AUTO instead of the type.
That's why I extracted the FILLER_* macros details in a separate source
file.
2014-06-13 23:09:38 +02:00
c851252f65
Renaming macros for ADAPT_STRUCT to deduce type or take provided attribute types.
2014-06-13 23:09:38 +02:00
557b3d2dc6
Fix detection of member_type parameter emptiness for BOOST_FUSION_ADAPT_STRUCT.
...
As BOOST_PP_IS_EMPTY is not a general purpose emptiness checker, we limit
the ways it can be used.
2014-06-13 23:09:38 +02:00
7ef202b794
Moved BOOST_FUSION_ADAPT_STRUCT implementation details to detail/adapt_base.hpp
2014-06-13 23:09:38 +02:00
02b776360a
FEATURE: BOOST_FUSION_ADAPT_STRUCT can now also be called completely with
...
variadics arguments.
The following signature is possible :
BOOST_FUSION_ADAPT_STRUCT(
struct_name,
member_name0,
(BOOST_FUSION_ADAPT_AUTO, member_name1)
(member_type2, member_name2)
member_name3,
...
)
2014-06-13 23:09:38 +02:00
37fc1443ad
Improve the BOOST_FUSION_ADAPT_STRUCT macro to work also when there is no variadic support.
...
This enable the following flexible macro signature when there is
no BOOST_PP_VARIADICS support:
BOOST_FUSION_ADAPT_STRUCT(
struct_name,
(member_type0, member_name0)
(BOOST_FUSION_ADAPT_AUTO, member_name1)
(,member_name2)
...
)
If BOOST_PP_VARIADICS is active then there is quite more flexibility as it
allows to avoid the type specification:
BOOST_FUSION_ADAPT_STRUCT(
struct_name,
(member_type0, member_name0)
(BOOST_FUSION_ADAPT_AUTO, member_name1)
(,member_name2)
(member_name3)
...
)
2014-06-13 23:09:29 +02:00
944c363787
Remove dependency to variadics macros for the old API not deducing types.
2014-06-13 23:07:49 +02:00
6f6bfb3a27
EDITORIAL: Cleaning the ADAPT_STRUCT which can deduce types.
2014-06-13 23:07:32 +02:00
04cbf0d4c6
BUGFIX: Presents the correct field name as a string even if type is deduced.
2014-06-13 23:07:32 +02:00
703bff4ff9
FEATURE: Types of a struct can freely pe provided or deduced, following the user preferences.
2014-06-13 23:07:32 +02:00
7e1c6cdf47
FEATURE: Type deduction for BOOST_FUSION_ADAPT_STRUCT_C_BASE, with preliminary support for providing or deducing the type.
2014-06-13 23:07:16 +02:00
3ca94f5762
DOC: Add some comments to help me understand the adapt macros.
2014-06-13 23:04:09 +02:00
c052b4b452
FEATURE: Making BOOST_FUSION_AUTO_ADAPT_STRUCT variadic.
2014-06-13 23:04:09 +02:00
435fb5c29f
EDITORIAL: Reorganize imports.
2014-06-13 23:04:09 +02:00
934463c7b4
FEATURE: BOOST_FUSION_AUTO_ADAPT_ASSOC_STRUCT_NAMED now allows defining a Random Access Sequence and an Associative sequence without providing the type.
2014-06-13 23:04:08 +02:00
a5f87696f2
EDITORIAL: Rename the macro for type deduction to a more expressive and correct name.
2014-06-13 23:04:08 +02:00
2d37b9c22c
EDITORIAL: Fixes typos.
2014-06-13 23:04:08 +02:00
f7b14aee35
FEATURE: BOOST_FUSION_AUTO_ADAPT_ASSOC_STRUCT now allows defining a Random Access Sequence and an Associative sequence without providing the type.
2014-06-13 23:04:08 +02:00
8a132ea44a
BUGFIX: Fix include path.
2014-06-13 23:04:08 +02:00
5ffab5001e
REFACTORING: reused the BOOST_FUSION_AUTO_ADAPT_STRUCT_NAMED_NS macro in BOOST_FUSION_AUTO_ADAPT_STRUCT_NAMED to mimic the non-AUTO versions.
2014-06-13 23:04:08 +02:00
e58bd91f27
EDITORIAL: fixed indentation.
2014-06-13 23:04:08 +02:00
5aa9a89fb8
FEATURE: BOOST_FUSION_AUTO_ADAPT_STRUCT_NAMED_NS which allows listing class attributes to adapt without specifying types.
2014-06-13 23:04:07 +02:00
0d7ad9f6e2
FEATURE: BOOST_FUSION_AUTO_ADAPT_STRUCT_NAMED that does not require specifying the types of the fields.
2014-06-13 23:04:07 +02:00
946957d3dc
EDITORIAL: Change parameter names for consistency.
2014-06-13 23:04:07 +02:00
3f965e00d3
#9516 BOOST_FUSION_AUTO_ADAPT_STRUCT that does not require specifying the types of the fields.
2014-06-13 23:04:07 +02:00
1fde7cc293
Merge branch 'origin/develop'
2014-05-01 13:46:22 +08:00
74a5d8804c
reverting support for ref pending review
2014-05-01 13:44:45 +08:00
d2633616dc
fix copyright
2014-04-23 16:50:58 -07:00
01ed85e0e5
put struct nil_ in its own header to fix incomplete type error with nvcc
2014-04-23 16:47:03 -07:00
fd3a18ce1a
flatten/flatten_view/ref
2014-04-04 14:38:38 +08:00
efad85a925
fixes Ticket #9455
2014-03-18 23:43:23 +08:00
e113b31fdd
final gpu-enabling tweaks
2014-01-28 14:32:03 -08:00
c04e912866
gpu-enable vector assign
2014-01-23 21:48:52 -08:00
125a8b5957
Merge remote-tracking branch 'upstream/develop' into gpu-enabled-2
2014-01-23 21:30:44 -08:00
e5b0f3c2e1
gpu-enable more functions, but not stream inserters and extractors
2014-01-23 21:30:18 -08:00
4b139914b1
Fixed issue with vectorN calling the wrong vector_dataN constructor
2014-01-23 08:31:50 -06:00
c4f9f0d1b6
gpu-enable functions
2014-01-22 23:55:53 -08:00
e1dc534877
build target for preprocessing Fusion with wave
2014-01-21 14:17:09 -08:00
266a7622ba
Fixes #9110
...
[SVN r86165]
2013-10-05 18:47:44 +00:00
de18e59c85
Fixes Ticket #7513
...
[SVN r86128]
2013-10-01 23:41:38 +00:00
94618528b6
Remove use of obsolete BOOST_NO_TEMPLATED_STREAMS macro.
...
It was only defined for no-longer-supported-gcc.
[SVN r86062]
2013-09-30 15:56:52 +00:00
3b24ed44f8
specialization of convert_impl for map_tag, refs #8759
...
[SVN r84937]
2013-07-02 02:10:04 +00:00
7922147716
update fusion Nil template parameters to Nil_ to make ObjC happy. trac #5010
...
[SVN r84441]
2013-05-23 01:02:52 +00:00
56d0d48eb9
added static assert when N is > size of vector
...
[SVN r84283]
2013-05-14 21:10:02 +00:00