greole
bf9e8a121d
Dependent compilation of tests, examples ... etc ( #100 )
...
* add a project name
* opt out of test, example, perf and doc build
* compiler definitions for clang
* fix build order by setting target depencies
* fix streampos namespace
* bump benchmark version
* remove file since it is part of google benchmark
* deactivate tests for google benchmark
* add missing ;
* add constexpr and variadic templates to compile features
* FIX set compile on interface since yap is an interface lib
* set cxx 14 as compile feature to compile boost
* add missing $
* replace cxx_std_14 by concrete features
* add all features to interface_compile_properties
* fix interface_compile_properties
2020-04-08 18:30:26 -05:00
Zach Laine
f394796c58
Fix Clang compilation error in self_evaluation.cpp.
2019-05-31 02:40:07 -05:00
Zach Laine
a892bf00cf
Fix compilation error in self_evaluation.cpp.
2019-05-31 02:29:42 -05:00
Zach Laine
897b3561f2
Add a self-evaluating expression example.
2019-05-30 17:21:55 -05:00
Zach Laine
d109233074
Remove now-superfluous #include of Boost.Serialization header.
2018-10-19 21:54:14 -05:00
Zach Laine
923d61ae7a
Remove previous hack of defining BOOST_NO_AUTO_PTR explicitly in source, and
...
instead make sure that the Travis build uses Boost 1.68; also upgraded
Google.Benchmark dependency to v1.2.0.
2018-10-18 19:57:38 -05:00
Zach Laine
8c7a551ef2
Define BOOST_NO_AUTO_PTR in the autodiff example to fix C++17 Clang builds.
2018-10-17 22:44:38 -05:00
Zach Laine
4fffac23c0
Doc updates based on offline post-list-review doc review by Brook Milligan.
2018-03-21 21:50:53 -05:00
Zach Laine
8b4e2cc5ea
Doc copy editing.
2018-03-03 23:37:48 -06:00
Zach Laine
a5ce500ef6
Add BOOST_YAP_USER_CALL_OPERATOR_N.
...
Partially addresses #51 .
2018-03-03 20:27:13 -06:00
Zach Laine
143beb91de
Unify binary member and nonmember macros; add subscript operator member macro.
...
Fixes #22 .
Fixes #68 .
2018-03-03 18:06:34 -06:00
Zach Laine
4ce7fbafd8
BOOST_YAP_USER_UNARY_OPERATOR_MEMBER -> BOOST_YAP_USER_UNARY_OPERATOR
...
Partially implements #22 .
2018-03-03 16:20:39 -06:00
Zach Laine
9c67b71648
Fix dangling reference errors by reinstating the use of as_expr() in recursive
...
transforms.
2018-03-02 23:32:19 -06:00
Zach Laine
311ce35ec9
Revert "Remove the now-redundant uses of as_expr()."
...
This reverts commit 260dc0e82d .
2018-03-02 23:11:44 -06:00
Zach Laine
64aeedbc76
Add run_examples make target that does just what you'd expect.
2018-02-27 17:29:34 -06:00
Louis Dionne
b2322fbca3
Fix typos
2018-02-26 22:41:16 -06:00
Zach Laine
661b09d09d
BOOST_YAP_USER_FREE_BINARY_OPERATOR -> BOOST_YAP_USER_NONMEMBER_BINARY_OPERATOR;
...
add BOOST_YAP_USER_ASSIGN_OPERATOR_MEMBER to macros table in docs.
2018-02-25 22:44:19 -06:00
Zach Laine
74eab425e7
Substantially rewrite the description of transform() semantics.
...
Fixes #47 .
Fixes #50 .
2018-02-25 14:18:21 -06:00
Zach Laine
a562edb346
Flesh out commentary in let.cpp; add it to the docs as an example.
2018-02-24 23:58:41 -06:00
Zach Laine
d8b2181185
Copy editing.
2018-02-24 23:58:11 -06:00
Zach Laine
260dc0e82d
Remove the now-redundant uses of as_expr().
2018-02-23 21:50:06 -06:00
Zach Laine
bcbcd8fa26
Don't needlessly return the nth element of a vector as a copy in take_nth.
...
Fixes #39 .
2018-02-23 21:50:06 -06:00
Zach Laine
746adaabfe
Condition the 'let' example build on the availability of cosntexpr if.
2018-02-23 02:03:46 -06:00
Zach Laine
91e8c682b5
Remove customization point cruft from example/mixed.cpp.
2018-02-23 01:50:40 -06:00
Zach Laine
6bb94c1082
Remove redundant case from iota_terminal_transform.
2018-02-22 23:18:43 -06:00
Zach Laine
4b383f9343
Add example implementing a version of Boost.Phoenex's let() syntax.
2018-02-20 23:27:40 -06:00
Zach Laine
b80f06a4c6
Finish integrating the two new examples into the docs.
2018-02-18 15:53:12 -06:00
Zach Laine
25d4acf6d6
Add extensive comments to pipable_algorithms.cpp; use snippets from it in the
...
intro; add it as an example.
2018-02-18 13:33:53 -06:00
Zach Laine
98acc2b2e7
Add pipable_algorithms example.
2018-02-18 12:35:54 -06:00
Zach Laine
5d011d83a0
Tweak comment.
2018-02-16 23:45:15 -06:00
Zach Laine
22b8ab969f
Make the calc3 get_arity transform a little nicer based on review feedback.
...
Fixes #43 .
2018-02-16 23:23:48 -06:00
Zach Laine
07848d6236
Simplify the overload set used in the transformf in transform_terminals.
...
Fixes #38 .
2018-02-16 23:07:38 -06:00
Zach Laine
123ea1df6a
Fix malformed expr_kind::call overload in transform_terminals example.
2018-02-16 23:02:59 -06:00
Zach Laine
8712988c25
Add expr_tag template to handle expr_kind <-> tag mapping.
...
Fixes #49 .
2018-02-16 22:34:09 -06:00
Zach Laine
d1834c6c01
Add references to specific examples alluded to in a general reference to "Examples".
2018-02-16 21:56:53 -06:00
Zach Laine
0f4e144edc
Add terminal transform example; not working due to longstanding call_expr tag
...
transform matching bug.
2018-02-15 23:02:26 -06:00
Zach Laine
27380020d7
Revert "Transform terminals before they are unwrapped and given as arguments to"
...
This reverts commit 4e68505bab .
Fixes #40 .
2018-02-15 21:24:20 -06:00
Zach Laine
8282c4b10e
Add Boost license copyright headers to all C++ files.
...
Fixes #31 .
2018-02-15 18:07:48 -06:00
Zach Laine
2adaeb8813
Remove customization point-based and their implicit tranformations,
...
evaluate_as(), and BOOST_YAP_CONVERSION_OPERATOR_TEMPLATE.
Fixes #29
Fixes #30
2018-02-14 20:32:00 -06:00
Zach Laine
b6d53d153d
Changes based on Part 2 of Steven Watanabe's review.
2018-02-14 17:50:29 -06:00
Zach Laine
dee006df7d
Update docs and some example code based on part 1 of Steven Watanabe's review.
2018-02-11 14:20:30 -06:00
Zach Laine
ed985c0b21
Doc update to make the sections on transform() clearer.
2018-02-02 22:45:01 -06:00
Zach Laine
d0ba21f938
Add missing Boost.Serialization include to autodeff.h.
2017-06-24 17:26:34 -05:00
Zach Laine
55e9f33892
Remove this_type parameter from all member function macros.
2017-05-09 11:14:55 -05:00
Zach Laine
62bfb3d0b8
Amplify Transforming Expressions section. Fixes #14 .
2017-03-17 21:27:11 -05:00
Zach Laine
4e68505bab
Transform terminals before they are unwrapped and given as arguments to
...
TagTransforms.
2017-03-12 14:59:35 -05:00
Zach Laine
3230cf2955
#include yap/algorithm instead of yap/expression in appropriate examples.
2016-12-21 20:11:37 -06:00
Louis Dionne
c23c06e509
[CMake] Pull the setting up of dependencies into its own file
...
Also, properly define link/header dependencies between targets.
2016-12-18 17:49:23 -06:00
Zach Laine
24a0ef69de
Make examples C++14 friendly.
2016-12-17 23:17:04 -06:00
Zach Laine
858117ea71
Remove unnecessary genericity in autodiff example, and remove the
...
assert(false) in the negation transform (since the reason it was placed there
is fixed).
2016-12-17 19:27:49 -06:00