yap.qbk 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. [/
  2. / Distributed under the Boost Software License, Version 1.0. (See accompanying
  3. / file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  4. /]
  5. [library Boost.YAP
  6. [quickbook 1.5]
  7. [authors [Laine, Zach]]
  8. [copyright 2018 T. Zachary Laine]
  9. [category template]
  10. [id yap]
  11. [dirname yap]
  12. [purpose
  13. An expression template library for newer standards of C++.
  14. ]
  15. [license
  16. Distributed under the Boost Software License, Version 1.0.
  17. (See accompanying file LICENSE_1_0.txt or copy at
  18. [@http://www.boost.org/LICENSE_1_0.txt])
  19. ]
  20. ]
  21. [/ Imports ]
  22. [import other_snippets.cpp]
  23. [import ../example/hello_world.cpp]
  24. [import ../example/hello_world_redux.cpp]
  25. [import ../example/minimal.cpp]
  26. [import ../example/calc1.cpp]
  27. [import ../example/calc2a.cpp]
  28. [import ../example/calc2b.cpp]
  29. [import ../example/calc3.cpp]
  30. [import ../example/lazy_vector.cpp]
  31. [import ../example/self_evaluation.cpp]
  32. [import ../example/tarray.cpp]
  33. [import ../example/vec3.cpp]
  34. [import ../example/vector.cpp]
  35. [import ../example/mixed.cpp]
  36. [import ../example/map_assign.cpp]
  37. [import ../example/future_group.cpp]
  38. [import ../example/autodiff_example.cpp]
  39. [import ../example/transform_terminals.cpp]
  40. [import ../example/pipable_algorithms.cpp]
  41. [import ../example/let.cpp]
  42. [import ../test/user_expression_transform_2.cpp]
  43. [import ../perf/arithmetic_perf.cpp]
  44. [import ../include/boost/yap/detail/transform.hpp]
  45. [/ Images ]
  46. [def __note__ [$images/note.png]]
  47. [def __tip__ [$images/tip.png]]
  48. [def __important__ [$images/important.png]]
  49. [def __caution__ [$images/caution.png]]
  50. [def __warning__ [$images/warning.png]]
  51. [/ Links ]
  52. [def _yap_ Boost.YAP]
  53. [def _operators_ [link boost_yap.manual.operators Operators]]
  54. [def _operator_macros_ [link boost_yap.manual.operator_macros Operator Macros]]
  55. [def _Expr_ [link boost_yap.concepts.expression Expression]]
  56. [def _Exprs_ [link boost_yap.concepts.expression Expressions]]
  57. [def _ExprTmpl_ [link boost_yap.concepts.expressiontemplate ExpressionTemplate]]
  58. [def _ExprTmpls_ [link boost_yap.concepts.expressiontemplate ExpressionTemplates]]
  59. [def _XForm_ [link boost_yap.concepts.transform Transform]]
  60. [def _XForms_ [link boost_yap.concepts.transform Transforms]]
  61. [def _ExprXForm_ [link boost_yap.concepts.expressiontransform ExpressionTransform]]
  62. [def _ExprXForms_ [link boost_yap.concepts.expressiontransform ExpressionTransforms]]
  63. [def _TagXForm_ [link boost_yap.concepts.tagtransform TagTransform]]
  64. [def _TagXForms_ [link boost_yap.concepts.tagtransform TagTransforms]]
  65. [def _Callable_ [@http://en.cppreference.com/w/cpp/concept/Callable Callable]]
  66. [def _Callables_ [@http://en.cppreference.com/w/cpp/concept/Callable Callables]]
  67. [def _range_v3_ [@https://github.com/ericniebler/range-v3 Range-v3]]
  68. [def _ast_ [@https://en.wikipedia.org/wiki/Abstract_syntax_tree abstract syntax tree]]
  69. [def _let_ [@http://www.boost.org/doc/libs/1_66_0/libs/phoenix/doc/html/phoenix/modules/scope/let.html `let()`]]
  70. [def _expr_ [classref boost::yap::expression `expression<>`]]
  71. [def _exprs_ [classref boost::yap::expression `expression<>`s]]
  72. [def _kind_ [enumref boost::yap::expr_kind `expr_kind`]]
  73. [def _terminal_ [link boost.yap.expr_kind.terminal `expr_kind::terminal`]]
  74. [def _placeholder_ [classref boost::yap::placeholder `placeholder<>`]]
  75. [def _if_else_ [link boost.yap.expr_kind.if_else `expr_kind::if_else`]]
  76. [def _expr_ref_ [link boost.yap.expr_kind.expr_ref `expr_kind::expr_ref`]]
  77. [def _xform_ [funcref boost::yap::transform `transform()`]]
  78. [def _xform_strict_ [funcref boost::yap::transform_strict `transform_strict()`]]
  79. [def _evaluation_ [funcref boost::yap::evaluation `evaluation()`]]
  80. [def _eval_ [funcref boost::yap::evaluate `evaluate()`]]
  81. [def _replacements_ [funcref boost::yap::replacements `replacements()`]]
  82. [def _replace_placeholders_ [funcref boost::yap::replace_placeholders `replace_placeholders()`]]
  83. [def _tuple_ `boost::hana::tuple<>`]
  84. [def _eval_xform_ `evaluate(transform())`]
  85. [def _xform_as_eval_ `transform()`-as-evaluate]
  86. [def _alg_header_ `<boost/yap/algorithm.hpp>` header]
  87. [def _yap_header_ `<boost/yap/yap.hpp>` header]
  88. [def _expr_header_ `<boost/yap/expression.hpp>` header]
  89. [def _print_header_ `<boost/yap/print.hpp>` header]
  90. [def _make_term_ [funcref boost::yap::make_terminal `make_terminal()`]]
  91. [def _make_expr_ [funcref boost::yap::make_expression `make_expression()`]]
  92. [def _make_expr_fn_ [funcref boost::yap::make_expression_function `make_expression_function()`]]
  93. [def _as_expr_ [funcref boost::yap::as_expr `as_expr()`]]
  94. [def _left_ [funcref boost::yap::left `left()`]]
  95. [def _right_ [funcref boost::yap::right `right()`]]
  96. [def _value_ [funcref boost::yap::value `value()`]]
  97. [def _print_ [funcref boost::yap::print `print()`]]
  98. [def _unary_m_ [macroref BOOST_YAP_USER_UNARY_OPERATOR]]
  99. [def _binary_m_ [macroref BOOST_YAP_USER_BINARY_OPERATOR]]
  100. [def _member_call_m_ [macroref BOOST_YAP_USER_CALL_OPERATOR]]
  101. [def _member_call_n_m_ [macroref BOOST_YAP_USER_CALL_OPERATOR_N]]
  102. [def _member_assign_m_ [macroref BOOST_YAP_USER_ASSIGN_OPERATOR]]
  103. [def _member_subscript_m_ [macroref BOOST_YAP_USER_SUBSCRIPT_OPERATOR]]
  104. [def _expr_if_else_m_ [macroref BOOST_YAP_USER_EXPR_IF_ELSE]]
  105. [def _udt_any_if_else_m_ [macroref BOOST_YAP_USER_UDT_ANY_IF_ELSE]]
  106. [def _udt_unary_m_ [macroref BOOST_YAP_USER_UDT_UNARY_OPERATOR]]
  107. [def _udt_udt_binary_m_ [macroref BOOST_YAP_USER_UDT_UDT_BINARY_OPERATOR]]
  108. [def _udt_any_binary_m_ [macroref BOOST_YAP_USER_UDT_ANY_BINARY_OPERATOR]]
  109. [def _no_constexpr_if_m_ [macroref BOOST_NO_CONSTEXPR_IF]]
  110. [def _literal_op_m_ [macroref BOOST_YAP_USER_LITERAL_PLACEHOLDER_OPERATOR]]
  111. [def _spirit_ [@http://boost-spirit.com Boost.Spirit]]
  112. [def _eigen_ [@http://eigen.tuxfamily.org Eigen]]
  113. [def _nt2_ [@https://www.lri.fr/~falcou/nt2 NT2]]
  114. [def _range_v3_ [@https://github.com/ericniebler/range-v3 Range-v3]]
  115. [def _Ets_ Expression templates]
  116. [def _et_ expression template]
  117. [def _ets_ expression templates]
  118. [def _emdash_ \u2014]
  119. [def _how_treated_ [link boost_yap.manual.how_expression_operands_are_treated How Expression Operands Are Treated]]
  120. [def _examples_ [link boost_yap.manual.examples Examples]]
  121. [def _calc3_ [link boost_yap.manual.examples.calc3 Calc3]]
  122. [def _mixed_ [link boost_yap.manual.examples.mixed Mixed]]
  123. [def _vector_ [link boost_yap.manual.examples.vector Vector]]
  124. [def _lazy_vector_ [link boost_yap.manual.examples.lazy_vector Lazy Vector]]
  125. [def _self_eval_ [link boost_yap.manual.examples.self_evaluation Self-Evaluating Expressions]]
  126. [def _tarray_ [link boost_yap.manual.examples.tarray TArray]]
  127. [def _future_group_ [link boost_yap.manual.examples.future_group Future Group]]
  128. [def _pipable_algorithms_ [link boost_yap.manual.examples.pipable_algorithms Pipable Algorithms]]
  129. [include intro.qbk]
  130. [include manual.qbk]
  131. [include concepts.qbk]
  132. [include compiler_support.qbk]
  133. [include dependencies.qbk]
  134. [section Reference]
  135. [xinclude yap_reference.xml]
  136. [endsect]
  137. [/ [template named_index[type title]
  138. / '''<index type="'''[type]'''"><title>'''[title]'''</title></index>'''
  139. / ]
  140. / [named_index class_name Class Index]
  141. / [named_index function_name Function Index]
  142. / [named_index macro_name Macro Index]
  143. /]
  144. [include rationale.qbk]