├── built-docs ├── alpha.gif ├── beta.gif ├── background.gif ├── chaos │ └── preprocessor │ │ ├── seq │ │ └── complexity │ │ │ ├── duplex.gif │ │ │ ├── size_alt.gif │ │ │ └── reverse_duplex.gif │ │ ├── tuple │ │ ├── complexity │ │ │ ├── drop.gif │ │ │ ├── range.gif │ │ │ ├── size.gif │ │ │ ├── take.gif │ │ │ ├── concat.gif │ │ │ ├── filter.gif │ │ │ ├── insert.gif │ │ │ ├── remove.gif │ │ │ ├── replace.gif │ │ │ ├── elem_alt.gif │ │ │ ├── fold_left.gif │ │ │ ├── fold_right.gif │ │ │ ├── for_each.gif │ │ │ ├── for_each_i.gif │ │ │ ├── pop_back.gif │ │ │ ├── to_seq_alt.gif │ │ │ ├── transform.gif │ │ │ ├── reverse_alt.gif │ │ │ ├── to_list_alt.gif │ │ │ ├── fold_left_aux.gif │ │ │ ├── fold_right_aux.gif │ │ │ └── to_string_alt.gif │ │ └── efficiency │ │ │ ├── range.gif │ │ │ ├── fold_left.gif │ │ │ └── fold_left_aux.gif │ │ ├── repetition │ │ └── x │ │ │ └── complexity │ │ │ ├── for.gif │ │ │ ├── delineate.gif │ │ │ ├── delineate_from_to.gif │ │ │ └── delineate_shifted.gif │ │ ├── algorithm │ │ ├── x │ │ │ └── complexity │ │ │ │ ├── fold_left.gif │ │ │ │ ├── for_each.gif │ │ │ │ ├── transform.gif │ │ │ │ ├── filter-best.gif │ │ │ │ ├── fold_right.gif │ │ │ │ ├── for_each_i.gif │ │ │ │ └── filter-worst.gif │ │ ├── complexity │ │ │ ├── for_each_product.gif │ │ │ └── for_each_product-functional.gif │ │ └── efficiency │ │ │ └── for_each_product.gif │ │ └── list.html ├── rails.html ├── lambda.html ├── closures.html ├── deferral.html ├── il.html ├── overview.html ├── recursion.html ├── tutorial.html ├── cpp-intro.html ├── equalization.html ├── exponentials.html ├── conventions.html ├── evaluated-slots.html ├── intermediates.html ├── local-iteration.html ├── macro-expansion.html ├── argument-remap.html ├── bypass-semantics.html ├── generics.html ├── higher-order.html ├── parametrics.html ├── second-tier.html ├── continuation-machine.html ├── doc-conventions.html ├── evaluated-parameters.html ├── named-externals.html ├── sequential-iteration.html ├── true-optionals.html └── unknown.html ├── documentation ├── alpha.gif ├── beta.gif ├── chaos │ ├── preprocessor │ │ ├── seq │ │ │ ├── complexity │ │ │ │ ├── duplex.gif │ │ │ │ ├── size_alt.gif │ │ │ │ └── reverse_duplex.gif │ │ │ ├── auto.xml │ │ │ ├── variadic.xml │ │ │ └── variadic │ │ │ │ └── auto.xml │ │ ├── tuple │ │ │ ├── complexity │ │ │ │ ├── drop.gif │ │ │ │ ├── size.gif │ │ │ │ ├── take.gif │ │ │ │ ├── concat.gif │ │ │ │ ├── filter.gif │ │ │ │ ├── insert.gif │ │ │ │ ├── range.gif │ │ │ │ ├── remove.gif │ │ │ │ ├── replace.gif │ │ │ │ ├── elem_alt.gif │ │ │ │ ├── fold_left.gif │ │ │ │ ├── for_each.gif │ │ │ │ ├── pop_back.gif │ │ │ │ ├── transform.gif │ │ │ │ ├── fold_right.gif │ │ │ │ ├── for_each_i.gif │ │ │ │ ├── reverse_alt.gif │ │ │ │ ├── to_list_alt.gif │ │ │ │ ├── to_seq_alt.gif │ │ │ │ ├── fold_left_aux.gif │ │ │ │ ├── fold_right_aux.gif │ │ │ │ └── to_string_alt.gif │ │ │ ├── efficiency │ │ │ │ ├── range.gif │ │ │ │ ├── fold_left.gif │ │ │ │ └── fold_left_aux.gif │ │ │ └── auto.xml │ │ ├── repetition │ │ │ ├── x │ │ │ │ └── complexity │ │ │ │ │ ├── for.gif │ │ │ │ │ ├── delineate.gif │ │ │ │ │ ├── delineate_from_to.gif │ │ │ │ │ └── delineate_shifted.gif │ │ │ ├── x.xml │ │ │ ├── auto.xml │ │ │ └── parametric.xml │ │ ├── algorithm │ │ │ ├── x │ │ │ │ └── complexity │ │ │ │ │ ├── for_each.gif │ │ │ │ │ ├── filter-best.gif │ │ │ │ │ ├── fold_left.gif │ │ │ │ │ ├── fold_right.gif │ │ │ │ │ ├── for_each_i.gif │ │ │ │ │ ├── transform.gif │ │ │ │ │ └── filter-worst.gif │ │ │ ├── complexity │ │ │ │ ├── for_each_product.gif │ │ │ │ └── for_each_product-functional.gif │ │ │ ├── efficiency │ │ │ │ └── for_each_product.gif │ │ │ ├── x.xml │ │ │ ├── auto.xml │ │ │ └── parametric.xml │ │ ├── seq.xml │ │ ├── array.xml │ │ ├── debug.xml │ │ ├── list.xml │ │ ├── slot.xml │ │ ├── tuple.xml │ │ ├── lambda.xml │ │ ├── string.xml │ │ ├── control.xml │ │ ├── logical.xml │ │ ├── extended.xml │ │ ├── generics.xml │ │ ├── algorithm.xml │ │ ├── arbitrary.xml │ │ ├── arithmetic.xml │ │ ├── comparison.xml │ │ ├── control │ │ │ ├── x.xml │ │ │ └── auto.xml │ │ ├── detection.xml │ │ ├── facilities.xml │ │ ├── iteration.xml │ │ ├── recursion.xml │ │ ├── repetition.xml │ │ ├── punctuation.xml │ │ └── arithmetic │ │ │ └── machine.xml │ └── preprocessor.xml ├── rails.xml ├── closures.xml ├── deferral.xml ├── il.xml ├── lambda.xml ├── overview.xml ├── tutorial.xml ├── recursion.xml ├── cpp-intro.xml ├── equalization.xml ├── exponentials.xml ├── intermediates.xml ├── conventions.xml ├── evaluated-slots.xml ├── generics.xml ├── local-iteration.xml ├── macro-expansion.xml ├── argument-remap.xml ├── bypass-semantics.xml ├── higher-order.xml ├── parametrics.xml ├── second-tier.xml ├── continuation-machine.xml ├── doc-conventions.xml ├── evaluated-parameters.xml ├── named-externals.xml ├── sequential-iteration.xml └── true-optionals.xml ├── pp-book ├── background.gif ├── unknown.xml └── string.xsl ├── README ├── chaos └── preprocessor │ ├── control │ ├── detail │ │ └── null.h │ ├── x.h │ ├── auto.h │ ├── null.h │ ├── when.h │ ├── unless.h │ ├── expr_if.h │ ├── if.h │ └── include_if.h │ ├── iteration │ └── detail │ │ └── i6.h │ ├── list.h │ ├── slot.h │ ├── iteration.h │ ├── debug.h │ ├── lambda │ └── detail │ │ ├── with_placeholders.h │ │ └── placeholders_0.h │ ├── extended.h │ ├── punctuation.h │ ├── algorithm │ └── parametric.h │ ├── generics.h │ ├── arithmetic │ └── machine.h │ ├── facilities │ ├── empty.h │ ├── abbr.h │ ├── expand.h │ └── identity.h │ ├── punctuation │ ├── comma.h │ └── comma_if.h │ ├── array.h │ ├── generics │ ├── strip.h │ └── typeof.h │ ├── string.h │ ├── debug │ └── failure.h │ ├── recursion │ └── revive.h │ ├── comparison │ ├── greater.h │ ├── max.h │ ├── min.h │ ├── equal.h │ └── less_equal.h │ ├── comparison.h │ ├── lambda.h │ ├── seq │ ├── auto.h │ ├── to_tuple.h │ ├── elem.h │ ├── range.h │ ├── to_array.h │ └── detail │ │ └── close.h │ ├── array │ ├── to_seq.h │ ├── to_list.h │ ├── to_string.h │ └── size.h │ ├── logical │ ├── bool.h │ ├── bitor.h │ ├── compl.h │ ├── bitand.h │ ├── not.h │ └── or.h │ ├── arbitrary │ ├── detail │ │ └── swap.h │ └── sign.h │ ├── tuple │ └── auto.h │ └── arithmetic.h └── LICENSE /built-docs/alpha.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/alpha.gif -------------------------------------------------------------------------------- /built-docs/beta.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/beta.gif -------------------------------------------------------------------------------- /documentation/alpha.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/alpha.gif -------------------------------------------------------------------------------- /documentation/beta.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/beta.gif -------------------------------------------------------------------------------- /pp-book/background.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/pp-book/background.gif -------------------------------------------------------------------------------- /built-docs/background.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/background.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/seq/complexity/duplex.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/seq/complexity/duplex.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/drop.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/drop.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/range.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/range.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/size.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/size.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/take.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/take.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/efficiency/range.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/efficiency/range.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/seq/complexity/size_alt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/seq/complexity/size_alt.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/concat.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/concat.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/filter.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/filter.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/insert.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/insert.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/remove.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/remove.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/replace.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/replace.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/seq/complexity/duplex.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/seq/complexity/duplex.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/drop.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/drop.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/size.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/size.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/take.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/take.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/repetition/x/complexity/for.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/repetition/x/complexity/for.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/elem_alt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/elem_alt.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/fold_left.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/fold_left.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/fold_right.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/fold_right.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/for_each.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/for_each.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/for_each_i.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/for_each_i.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/pop_back.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/pop_back.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/to_seq_alt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/to_seq_alt.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/transform.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/transform.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/efficiency/fold_left.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/efficiency/fold_left.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/seq/complexity/size_alt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/seq/complexity/size_alt.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/concat.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/concat.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/filter.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/filter.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/insert.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/insert.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/range.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/range.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/remove.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/remove.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/replace.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/replace.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/efficiency/range.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/efficiency/range.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/seq/complexity/reverse_duplex.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/seq/complexity/reverse_duplex.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/reverse_alt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/reverse_alt.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/to_list_alt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/to_list_alt.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/elem_alt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/elem_alt.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/fold_left.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/fold_left.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/for_each.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/for_each.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/pop_back.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/pop_back.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/transform.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/transform.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/efficiency/fold_left.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/efficiency/fold_left.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/algorithm/x/complexity/fold_left.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/algorithm/x/complexity/fold_left.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/algorithm/x/complexity/for_each.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/algorithm/x/complexity/for_each.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/algorithm/x/complexity/transform.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/algorithm/x/complexity/transform.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/fold_left_aux.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/fold_left_aux.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/fold_right_aux.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/fold_right_aux.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/complexity/to_string_alt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/complexity/to_string_alt.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/tuple/efficiency/fold_left_aux.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/tuple/efficiency/fold_left_aux.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/repetition/x/complexity/for.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/repetition/x/complexity/for.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/seq/complexity/reverse_duplex.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/seq/complexity/reverse_duplex.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/fold_right.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/fold_right.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/for_each_i.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/for_each_i.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/reverse_alt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/reverse_alt.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/to_list_alt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/to_list_alt.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/to_seq_alt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/to_seq_alt.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/algorithm/x/complexity/filter-best.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/algorithm/x/complexity/filter-best.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/algorithm/x/complexity/fold_right.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/algorithm/x/complexity/fold_right.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/algorithm/x/complexity/for_each_i.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/algorithm/x/complexity/for_each_i.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/repetition/x/complexity/delineate.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/repetition/x/complexity/delineate.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/algorithm/x/complexity/for_each.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/algorithm/x/complexity/for_each.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/fold_left_aux.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/fold_left_aux.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/fold_right_aux.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/fold_right_aux.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/complexity/to_string_alt.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/complexity/to_string_alt.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/efficiency/fold_left_aux.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/tuple/efficiency/fold_left_aux.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/algorithm/complexity/for_each_product.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/algorithm/complexity/for_each_product.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/algorithm/efficiency/for_each_product.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/algorithm/efficiency/for_each_product.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/algorithm/x/complexity/filter-worst.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/algorithm/x/complexity/filter-worst.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/algorithm/x/complexity/filter-best.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/algorithm/x/complexity/filter-best.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/algorithm/x/complexity/fold_left.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/algorithm/x/complexity/fold_left.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/algorithm/x/complexity/fold_right.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/algorithm/x/complexity/fold_right.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/algorithm/x/complexity/for_each_i.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/algorithm/x/complexity/for_each_i.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/algorithm/x/complexity/transform.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/algorithm/x/complexity/transform.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/repetition/x/complexity/delineate.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/repetition/x/complexity/delineate.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/algorithm/x/complexity/filter-worst.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/algorithm/x/complexity/filter-worst.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/repetition/x/complexity/delineate_from_to.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/repetition/x/complexity/delineate_from_to.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/repetition/x/complexity/delineate_shifted.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/repetition/x/complexity/delineate_shifted.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/algorithm/complexity/for_each_product.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/algorithm/complexity/for_each_product.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/algorithm/efficiency/for_each_product.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/algorithm/efficiency/for_each_product.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/repetition/x/complexity/delineate_from_to.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/repetition/x/complexity/delineate_from_to.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/repetition/x/complexity/delineate_shifted.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/repetition/x/complexity/delineate_shifted.gif -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/algorithm/complexity/for_each_product-functional.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/built-docs/chaos/preprocessor/algorithm/complexity/for_each_product-functional.gif -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/algorithm/complexity/for_each_product-functional.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rofl0r/chaos-pp/HEAD/documentation/chaos/preprocessor/algorithm/complexity/for_each_product-functional.gif -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | Unless otherwise specified, terms and conditions of use of 2 | Chaos Preprocessor software and documentation are described 3 | in the accompanying license. See the file named LICENSE in 4 | the top-level directory. 5 | -------------------------------------------------------------------------------- /chaos/preprocessor/control/detail/null.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | -------------------------------------------------------------------------------- /chaos/preprocessor/iteration/detail/i6.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # error chaos-pp: iteration overflow 13 | -------------------------------------------------------------------------------- /built-docs/rails.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Rails - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/lambda.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Lambda - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/closures.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Closures - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/deferral.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Deferral - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/il.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IL Expressions - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/overview.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Overview - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/recursion.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Recursion - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/tutorial.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Tutorial - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/cpp-intro.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Cpp Introduction - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/equalization.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Equalization - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/exponentials.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Exponentials - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/conventions.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Library Conventions - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/evaluated-slots.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Evaluated Slots - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/intermediates.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Intermediates - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/local-iteration.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Local-Iteration - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/macro-expansion.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Macro Expansion - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/argument-remap.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Argument Remapping - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/bypass-semantics.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Bypass Semantics - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/generics.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Generic Data Structures - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/higher-order.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Higher-Order Constructs - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/parametrics.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Parametric Resumption - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/second-tier.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Second-Tier Algorithms - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/continuation-machine.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Continuation Machine - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/doc-conventions.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Documentation Conventions - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/evaluated-parameters.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Evaluated Parameters - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/named-externals.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Named External Arguments - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/sequential-iteration.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Sequential Iteration - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /built-docs/true-optionals.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | True-Optional Arguments - Chaos Preprocessor Library 6 | 7 | 8 |

...

9 |
10 |
© Copyright Paul Mensonides 2003-2005
11 |
12 | Distributed under the Boost Software License, Version 1.0. 13 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 14 |
15 | 16 | -------------------------------------------------------------------------------- /chaos/preprocessor/list.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_LIST_H 13 | # define CHAOS_PREPROCESSOR_LIST_H 14 | # 15 | # include 16 | # 17 | # endif 18 | -------------------------------------------------------------------------------- /built-docs/unknown.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Unknown Entity - Chaos Preprocessor Library 6 | 7 | 8 | 9 |

Unknown Entity

10 |

11 | You have followed a link to an unknown entity. 12 |

13 | 14 |
15 |
© Copyright Paul Mensonides 2003-2005
16 |
17 | Distributed under the Boost Software License, Version 1.0. 18 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 19 |
20 | 21 | -------------------------------------------------------------------------------- /chaos/preprocessor/slot.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_SLOT_H 13 | # define CHAOS_PREPROCESSOR_SLOT_H 14 | # 15 | # include 16 | # include 17 | # 18 | # endif 19 | -------------------------------------------------------------------------------- /chaos/preprocessor/iteration.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_ITERATION_H 13 | # define CHAOS_PREPROCESSOR_ITERATION_H 14 | # 15 | # include 16 | # include 17 | # 18 | # endif 19 | -------------------------------------------------------------------------------- /chaos/preprocessor/control/x.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_CONTROL_X_H 13 | # define CHAOS_PREPROCESSOR_CONTROL_X_H 14 | # 15 | # include 16 | # include 17 | # 18 | # endif 19 | -------------------------------------------------------------------------------- /chaos/preprocessor/control/auto.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_CONTROL_AUTO_H 13 | # define CHAOS_PREPROCESSOR_CONTROL_AUTO_H 14 | # 15 | # include 16 | # include 17 | # 18 | # endif 19 | -------------------------------------------------------------------------------- /documentation/rails.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/closures.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/deferral.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/il.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/lambda.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/overview.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/tutorial.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /chaos/preprocessor/debug.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_DEBUG_H 13 | # define CHAOS_PREPROCESSOR_DEBUG_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # 19 | # endif 20 | -------------------------------------------------------------------------------- /documentation/recursion.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/cpp-intro.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/equalization.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/exponentials.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/intermediates.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/conventions.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/evaluated-slots.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/generics.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/local-iteration.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/macro-expansion.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/argument-remap.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/bypass-semantics.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/higher-order.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/parametrics.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/second-tier.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/continuation-machine.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/doc-conventions.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/evaluated-parameters.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/named-externals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/sequential-iteration.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /documentation/true-optionals.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | ... 17 |
18 |
19 | -------------------------------------------------------------------------------- /chaos/preprocessor/lambda/detail/with_placeholders.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PP_INCLUDE 13 | # line 1 CHAOS_PP_NULL() 14 | # endif 15 | # 16 | # line 1 CHAOS_PP_INCLUDE 17 | # undef CHAOS_PP_INCLUDE 18 | # 19 | # include CHAOS_PP_PLACEHOLDERS(1) 20 | # include __FILE__ 21 | # include CHAOS_PP_PLACEHOLDERS(0) 22 | # 23 | # endif 24 | -------------------------------------------------------------------------------- /pp-book/unknown.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 |
16 | 17 | You have followed a link to an unknown entity. 18 | 19 |
20 |
21 | -------------------------------------------------------------------------------- /chaos/preprocessor/extended.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_EXTENDED_H 13 | # define CHAOS_PREPROCESSOR_EXTENDED_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # endif 21 | -------------------------------------------------------------------------------- /chaos/preprocessor/punctuation.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_PUNCTUATION_H 13 | # define CHAOS_PREPROCESSOR_PUNCTUATION_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # endif 21 | -------------------------------------------------------------------------------- /chaos/preprocessor/algorithm/parametric.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_ALGORITHM_PARAMETRIC_H 13 | # define CHAOS_PREPROCESSOR_ALGORITHM_PARAMETRIC_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # 19 | # endif 20 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes the entire library. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /chaos/preprocessor/generics.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_GENERICS_H 13 | # define CHAOS_PREPROCESSOR_GENERICS_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # include 20 | # 21 | # endif 22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/seq.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/seq subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/array.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/array subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/debug.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/debug subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/list.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/list subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/slot.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/slot subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/tuple subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /chaos/preprocessor/arithmetic/machine.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_ARITHMETIC_MACHINE_H 13 | # define CHAOS_PREPROCESSOR_ARITHMETIC_MACHINE_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # include 20 | # 21 | # endif 22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/lambda.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/lambda subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/string.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/string subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/control.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/control subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/logical.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/logical subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/extended.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/extended subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/generics.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/generics subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/seq/auto.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/seq/auto subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/algorithm.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/algorithm subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/arbitrary.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/arbitrary subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/arithmetic.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/arithmetic subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/comparison.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/comparison subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/control/x.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/control/x subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/detection.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/detection subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/facilities.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/facilities subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/iteration.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/iteration subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/recursion.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/recursion subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/repetition.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/repetition subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/tuple/auto.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/tuple/auto subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /chaos/preprocessor/facilities/empty.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_FACILITIES_EMPTY_H 13 | # define CHAOS_PREPROCESSOR_FACILITIES_EMPTY_H 14 | # 15 | # include 16 | # include 17 | # 18 | # /* CHAOS_PP_EMPTY */ 19 | # 20 | # define CHAOS_PP_EMPTY() 21 | # define CHAOS_PP_EMPTY_ID() CHAOS_PP_EMPTY 22 | # 23 | # if CHAOS_PP_VARIADICS 24 | # define CHAOS_PP_EMPTY_ CHAOS_PP_LAMBDA(CHAOS_PP_EMPTY) 25 | # endif 26 | # 27 | # endif 28 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/algorithm/x.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/algorithm/x subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/punctuation.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/punctuation subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /chaos/preprocessor/punctuation/comma.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_PUNCTUATION_COMMA_H 13 | # define CHAOS_PREPROCESSOR_PUNCTUATION_COMMA_H 14 | # 15 | # include 16 | # include 17 | # 18 | # /* CHAOS_PP_COMMA */ 19 | # 20 | # define CHAOS_PP_COMMA() , 21 | # define CHAOS_PP_COMMA_ID() CHAOS_PP_COMMA 22 | # 23 | # if CHAOS_PP_VARIADICS 24 | # define CHAOS_PP_COMMA_ CHAOS_PP_LAMBDA(CHAOS_PP_COMMA) 25 | # endif 26 | # 27 | # endif 28 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/control/auto.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/control/auto subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/repetition/x.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/repetition/x subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/seq/variadic.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/seq/variadic subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /chaos/preprocessor/facilities/abbr.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_FACILITIES_ABBR_H 13 | # define CHAOS_PREPROCESSOR_FACILITIES_ABBR_H 14 | # 15 | # include 16 | # include 17 | # 18 | # /* CHAOS_PP_ABBR */ 19 | # 20 | # define CHAOS_PP_ABBR(id) CHAOS_PP_ ## id 21 | # define CHAOS_PP_ABBR_ID() CHAOS_PP_ABBR 22 | # 23 | # if CHAOS_PP_VARIADICS 24 | # define CHAOS_PP_ABBR_ CHAOS_PP_LAMBDA(CHAOS_PP_ABBR) 25 | # endif 26 | # 27 | # endif 28 | -------------------------------------------------------------------------------- /chaos/preprocessor/lambda/detail/placeholders_0.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # undef CHAOS_PP_IS_WITH_PLACEHOLDERS 13 | # 14 | # undef _0 15 | # undef _1 16 | # undef _2 17 | # undef _3 18 | # undef _4 19 | # undef _5 20 | # undef _6 21 | # undef _7 22 | # undef _8 23 | # undef _9 24 | # undef _10 25 | # undef _11 26 | # undef _12 27 | # undef _13 28 | # undef _14 29 | # undef _15 30 | # undef _16 31 | # undef _17 32 | # undef _18 33 | # undef _19 34 | # undef _20 35 | # undef _21 36 | # undef _22 37 | # undef _23 38 | # undef _24 39 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/algorithm/auto.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/algorithm/auto subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/repetition/auto.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/repetition/auto subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /chaos/preprocessor/control/null.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_CONTROL_NULL_H 13 | # define CHAOS_PREPROCESSOR_CONTROL_NULL_H 14 | # 15 | # include 16 | # include 17 | # 18 | # /* CHAOS_PP_NULL */ 19 | # 20 | # define CHAOS_PP_NULL() "chaos/preprocessor/control/detail/null.h" 21 | # define CHAOS_PP_NULL_ID() CHAOS_PP_NULL 22 | # 23 | # if CHAOS_PP_VARIADICS 24 | # define CHAOS_PP_NULL_ CHAOS_PP_LAMBDA(CHAOS_PP_NULL) 25 | # endif 26 | # 27 | # endif 28 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/seq/variadic/auto.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/seq/variadic/auto subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/arithmetic/machine.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/arithmetic/machine subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/algorithm/parametric.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/algorithm/parametric subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /documentation/chaos/preprocessor/repetition/parametric.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 |
15 | 16 | The header includes all of the headers in the chaos/preprocessor/repetition/parametric subdirectory. 17 | 18 | 19 | 20 | 21 |
22 | -------------------------------------------------------------------------------- /chaos/preprocessor/array.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_ARRAY_H 13 | # define CHAOS_PREPROCESSOR_ARRAY_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # include 20 | # include 21 | # include 22 | # include 23 | # 24 | # endif 25 | -------------------------------------------------------------------------------- /pp-book/string.xsl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /chaos/preprocessor/generics/strip.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_GENERICS_STRIP_H 13 | # define CHAOS_PREPROCESSOR_GENERICS_STRIP_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # 19 | # /* CHAOS_PP_STRIP */ 20 | # 21 | # define CHAOS_PP_STRIP(g) CHAOS_PP_EAT g 22 | # define CHAOS_PP_STRIP_ID() CHAOS_PP_STRIP 23 | # 24 | # if CHAOS_PP_VARIADICS 25 | # define CHAOS_PP_STRIP_ CHAOS_PP_LAMBDA(CHAOS_PP_STRIP_ID)() 26 | # endif 27 | # 28 | # endif 29 | -------------------------------------------------------------------------------- /built-docs/chaos/preprocessor/list.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | list.h - Chaos Preprocessor Library 6 | 7 | 8 | 9 |

10 | The list.h header includes all of the headers in the chaos/preprocessor/list subdirectory. 11 |

12 |

Usage

13 |
#include <chaos/preprocessor/list.h>
14 |

Headers

15 | 16 |
17 |
© Copyright Paul Mensonides 2003-2005
18 |
19 | Distributed under the Boost Software License, Version 1.0. 20 | See http://chaos-pp.sourceforge.net for the most recent version of this document. 21 |
22 | 23 | 24 | -------------------------------------------------------------------------------- /chaos/preprocessor/string.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_STRING_H 13 | # define CHAOS_PREPROCESSOR_STRING_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # include 20 | # include 21 | # include 22 | # include 23 | # 24 | # endif 25 | -------------------------------------------------------------------------------- /chaos/preprocessor/debug/failure.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_DEBUG_FAILURE_H 13 | # define CHAOS_PREPROCESSOR_DEBUG_FAILURE_H 14 | # 15 | # include 16 | # include 17 | # 18 | # /* CHAOS_PP_FAILURE */ 19 | # 20 | # define CHAOS_PP_FAILURE() CHAOS_IP_FAILURE_I(!) 21 | # define CHAOS_PP_FAILURE_ID() CHAOS_PP_FAILURE 22 | # 23 | # if CHAOS_PP_VARIADICS 24 | # define CHAOS_PP_FAILURE_ CHAOS_PP_LAMBDA(CHAOS_PP_FAILURE) 25 | # endif 26 | # 27 | # define CHAOS_IP_FAILURE_I() CHAOS_IP_FAILURE_I 28 | # 29 | # endif 30 | -------------------------------------------------------------------------------- /chaos/preprocessor/facilities/expand.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_FACILITIES_EXPAND_H 13 | # define CHAOS_PREPROCESSOR_FACILITIES_EXPAND_H 14 | # 15 | # include 16 | # include 17 | # 18 | # /* CHAOS_PP_EXPAND */ 19 | # 20 | # if CHAOS_PP_VARIADICS 21 | # define CHAOS_PP_EXPAND(...) __VA_ARGS__ 22 | # define CHAOS_PP_EXPAND_ CHAOS_PP_LAMBDA(CHAOS_PP_EXPAND_ID)() 23 | # else 24 | # define CHAOS_PP_EXPAND(x) x 25 | # endif 26 | # 27 | # define CHAOS_PP_EXPAND_ID() CHAOS_PP_EXPAND 28 | # 29 | # endif 30 | -------------------------------------------------------------------------------- /chaos/preprocessor/recursion/revive.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_RECURSION_REVIVE_H 13 | # define CHAOS_PREPROCESSOR_RECURSION_REVIVE_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # 19 | # /* CHAOS_PP_REVIVE */ 20 | # 21 | # define CHAOS_PP_REVIVE(macro) CHAOS_PP_PRIMITIVE_CAT(macro, _ID)() 22 | # define CHAOS_PP_REVIVE_ID() CHAOS_PP_REVIVE 23 | # 24 | # if CHAOS_PP_VARIADICS 25 | # define CHAOS_PP_REVIVE_ CHAOS_PP_LAMBDA(CHAOS_PP_REVIVE) 26 | # endif 27 | # 28 | # endif 29 | -------------------------------------------------------------------------------- /chaos/preprocessor/comparison/greater.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_COMPARISON_GREATER_H 13 | # define CHAOS_PREPROCESSOR_COMPARISON_GREATER_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # 19 | # /* CHAOS_PP_GREATER */ 20 | # 21 | # define CHAOS_PP_GREATER(x, y) CHAOS_PP_LESS(y, x) 22 | # define CHAOS_PP_GREATER_ID() CHAOS_PP_GREATER 23 | # 24 | # if CHAOS_PP_VARIADICS 25 | # define CHAOS_PP_GREATER_ CHAOS_PP_LAMBDA(CHAOS_PP_GREATER) 26 | # endif 27 | # 28 | # endif 29 | -------------------------------------------------------------------------------- /chaos/preprocessor/comparison.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_COMPARISON_H 13 | # define CHAOS_PREPROCESSOR_COMPARISON_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # include 20 | # include 21 | # include 22 | # include 23 | # 24 | # endif 25 | -------------------------------------------------------------------------------- /chaos/preprocessor/lambda.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_LAMBDA_H 13 | # define CHAOS_PREPROCESSOR_LAMBDA_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # include 20 | # include 21 | # include 22 | # include 23 | # include 24 | # 25 | # endif 26 | -------------------------------------------------------------------------------- /chaos/preprocessor/seq/auto.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_SEQ_AUTO_H 13 | # define CHAOS_PREPROCESSOR_SEQ_AUTO_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # include 20 | # include 21 | # include 22 | # include 23 | # 24 | # endif 25 | -------------------------------------------------------------------------------- /chaos/preprocessor/array/to_seq.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_ARRAY_TO_SEQ_H 13 | # define CHAOS_PREPROCESSOR_ARRAY_TO_SEQ_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # 19 | # /* CHAOS_PP_ARRAY_TO_SEQ */ 20 | # 21 | # define CHAOS_PP_ARRAY_TO_SEQ(array) CHAOS_PP_TUPLE_TO_SEQ array 22 | # define CHAOS_PP_ARRAY_TO_SEQ_ID() CHAOS_PP_ARRAY_TO_SEQ 23 | # 24 | # if CHAOS_PP_VARIADICS 25 | # define CHAOS_PP_ARRAY_TO_SEQ_ CHAOS_PP_LAMBDA(CHAOS_PP_ARRAY_TO_SEQ_ID)() 26 | # endif 27 | # 28 | # endif 29 | -------------------------------------------------------------------------------- /chaos/preprocessor/logical/bool.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_LOGICAL_BOOL_H 13 | # define CHAOS_PREPROCESSOR_LOGICAL_BOOL_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_BOOL */ 21 | # 22 | # define CHAOS_PP_BOOL(x) CHAOS_PP_COMPL(CHAOS_PP_NOT(x)) 23 | # define CHAOS_PP_BOOL_ID() CHAOS_PP_BOOL 24 | # 25 | # if CHAOS_PP_VARIADICS 26 | # define CHAOS_PP_BOOL_ CHAOS_PP_LAMBDA(CHAOS_PP_BOOL) 27 | # endif 28 | # 29 | # endif 30 | -------------------------------------------------------------------------------- /chaos/preprocessor/seq/to_tuple.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_SEQ_TO_TUPLE_H 13 | # define CHAOS_PREPROCESSOR_SEQ_TO_TUPLE_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # 19 | # /* CHAOS_PP_SEQ_TO_TUPLE */ 20 | # 21 | # define CHAOS_PP_SEQ_TO_TUPLE(seq) (CHAOS_PP_SEQ_ENUMERATE(seq)) 22 | # define CHAOS_PP_SEQ_TO_TUPLE_ID() CHAOS_PP_SEQ_TO_TUPLE 23 | # 24 | # if CHAOS_PP_VARIADICS 25 | # define CHAOS_PP_SEQ_TO_TUPLE_ CHAOS_PP_LAMBDA(CHAOS_PP_SEQ_TO_TUPLE_ID)() 26 | # endif 27 | # 28 | # endif 29 | -------------------------------------------------------------------------------- /chaos/preprocessor/arbitrary/detail/swap.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_ARBITRARY_DETAIL_SWAP_H 13 | # define CHAOS_PREPROCESSOR_ARBITRARY_DETAIL_SWAP_H 14 | # 15 | # include 16 | # 17 | # /* CHAOS_PP_SWAP */ 18 | # 19 | # if CHAOS_PP_VARIADICS 20 | # define CHAOS_PP_SWAP(a, ...) (__VA_ARGS__, a) 21 | # else 22 | # define CHAOS_PP_SWAP(a, b) (b, a) 23 | # endif 24 | # 25 | # /* CHAOS_PP_NO_SWAP */ 26 | # 27 | # if CHAOS_PP_VARIADICS 28 | # define CHAOS_PP_NO_SWAP(a, ...) (a, __VA_ARGS__) 29 | # else 30 | # define CHAOS_PP_NO_SWAP(a, b) (a, b) 31 | # endif 32 | # 33 | # endif 34 | -------------------------------------------------------------------------------- /chaos/preprocessor/array/to_list.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_ARRAY_TO_LIST_H 13 | # define CHAOS_PREPROCESSOR_ARRAY_TO_LIST_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # 19 | # /* CHAOS_PP_ARRAY_TO_LIST */ 20 | # 21 | # define CHAOS_PP_ARRAY_TO_LIST(array) CHAOS_PP_TUPLE_TO_LIST array 22 | # define CHAOS_PP_ARRAY_TO_LIST_ID() CHAOS_PP_ARRAY_TO_LIST 23 | # 24 | # if CHAOS_PP_VARIADICS 25 | # define CHAOS_PP_ARRAY_TO_LIST_ CHAOS_PP_LAMBDA(CHAOS_PP_ARRAY_TO_LIST_ID)() 26 | # endif 27 | # 28 | # endif 29 | -------------------------------------------------------------------------------- /chaos/preprocessor/comparison/max.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_COMPARISON_MAX_H 13 | # define CHAOS_PREPROCESSOR_COMPARISON_MAX_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_MAX */ 21 | # 22 | # define CHAOS_PP_MAX(x, y) CHAOS_PP_IIF(CHAOS_PP_LESS(x, y))(y, x) 23 | # define CHAOS_PP_MAX_ID() CHAOS_PP_MAX 24 | # 25 | # if CHAOS_PP_VARIADICS 26 | # define CHAOS_PP_MAX_ CHAOS_PP_LAMBDA(CHAOS_PP_MAX) 27 | # endif 28 | # 29 | # endif 30 | -------------------------------------------------------------------------------- /chaos/preprocessor/comparison/min.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_COMPARISON_MIN_H 13 | # define CHAOS_PREPROCESSOR_COMPARISON_MIN_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_MIN */ 21 | # 22 | # define CHAOS_PP_MIN(x, y) CHAOS_PP_IIF(CHAOS_PP_LESS(y, x))(y, x) 23 | # define CHAOS_PP_MIN_ID() CHAOS_PP_MIN 24 | # 25 | # if CHAOS_PP_VARIADICS 26 | # define CHAOS_PP_MIN_ CHAOS_PP_LAMBDA(CHAOS_PP_MIN) 27 | # endif 28 | # 29 | # endif 30 | -------------------------------------------------------------------------------- /chaos/preprocessor/tuple/auto.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_TUPLE_AUTO_H 13 | # define CHAOS_PREPROCESSOR_TUPLE_AUTO_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # include 20 | # include 21 | # include 22 | # include 23 | # 24 | # endif 25 | -------------------------------------------------------------------------------- /chaos/preprocessor/arithmetic.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_ARITHMETIC_H 13 | # define CHAOS_PREPROCESSOR_ARITHMETIC_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # include 20 | # include 21 | # include 22 | # include 23 | # include 24 | # 25 | # endif 26 | -------------------------------------------------------------------------------- /chaos/preprocessor/control/when.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_CONTROL_WHEN_H 13 | # define CHAOS_PREPROCESSOR_CONTROL_WHEN_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_WHEN */ 21 | # 22 | # define CHAOS_PP_WHEN(cond) CHAOS_PP_INLINE_WHEN(CHAOS_PP_BOOL(cond)) 23 | # define CHAOS_PP_WHEN_ID() CHAOS_PP_WHEN 24 | # 25 | # if CHAOS_PP_VARIADICS 26 | # define CHAOS_PP_WHEN_ CHAOS_PP_LAMBDA(CHAOS_PP_WHEN) 27 | # endif 28 | # 29 | # endif 30 | -------------------------------------------------------------------------------- /chaos/preprocessor/seq/elem.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_SEQ_ELEM_H 13 | # define CHAOS_PREPROCESSOR_SEQ_ELEM_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_SEQ_ELEM */ 21 | # 22 | # define CHAOS_PP_SEQ_ELEM(i, seq) CHAOS_PP_SEQ_HEAD(CHAOS_PP_SEQ_DROP(i, seq)) 23 | # define CHAOS_PP_SEQ_ELEM_ID() CHAOS_PP_SEQ_ELEM 24 | # 25 | # if CHAOS_PP_VARIADICS 26 | # define CHAOS_PP_SEQ_ELEM_ CHAOS_PP_LAMBDA(CHAOS_PP_SEQ_ELEM_ID)() 27 | # endif 28 | # 29 | # endif 30 | -------------------------------------------------------------------------------- /chaos/preprocessor/generics/typeof.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_GENERICS_TYPEOF_H 13 | # define CHAOS_PREPROCESSOR_GENERICS_TYPEOF_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # 19 | # /* CHAOS_PP_TYPEOF */ 20 | # 21 | # define CHAOS_PP_TYPEOF(g) CHAOS_PP_SPLIT(0, CHAOS_IP_TYPEOF_I g) 22 | # define CHAOS_PP_TYPEOF_ID() CHAOS_PP_TYPEOF 23 | # 24 | # if CHAOS_PP_VARIADICS 25 | # define CHAOS_PP_TYPEOF_ CHAOS_PP_LAMBDA(CHAOS_PP_TYPEOF) 26 | # endif 27 | # 28 | # define CHAOS_IP_TYPEOF_I(type) type, ~ 29 | # 30 | # endif 31 | -------------------------------------------------------------------------------- /chaos/preprocessor/array/to_string.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_ARRAY_TO_STRING_H 13 | # define CHAOS_PREPROCESSOR_ARRAY_TO_STRING_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # 19 | # /* CHAOS_PP_ARRAY_TO_STRING */ 20 | # 21 | # define CHAOS_PP_ARRAY_TO_STRING(array) CHAOS_PP_TUPLE_TO_STRING array 22 | # define CHAOS_PP_ARRAY_TO_STRING_ID() CHAOS_PP_ARRAY_TO_STRING 23 | # 24 | # if CHAOS_PP_VARIADICS 25 | # define CHAOS_PP_ARRAY_TO_STRING_ CHAOS_PP_LAMBDA(CHAOS_PP_ARRAY_TO_STRING_ID)() 26 | # endif 27 | # 28 | # endif 29 | -------------------------------------------------------------------------------- /chaos/preprocessor/comparison/equal.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_COMPARISON_EQUAL_H 13 | # define CHAOS_PREPROCESSOR_COMPARISON_EQUAL_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_EQUAL */ 21 | # 22 | # define CHAOS_PP_EQUAL(x, y) CHAOS_PP_COMPL(CHAOS_PP_NOT_EQUAL(x, y)) 23 | # define CHAOS_PP_EQUAL_ID() CHAOS_PP_EQUAL 24 | # 25 | # if CHAOS_PP_VARIADICS 26 | # define CHAOS_PP_EQUAL_ CHAOS_PP_LAMBDA(CHAOS_PP_EQUAL) 27 | # endif 28 | # 29 | # endif 30 | -------------------------------------------------------------------------------- /chaos/preprocessor/control/unless.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_CONTROL_UNLESS_H 13 | # define CHAOS_PREPROCESSOR_CONTROL_UNLESS_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_UNLESS */ 21 | # 22 | # define CHAOS_PP_UNLESS(cond) CHAOS_PP_INLINE_WHEN(CHAOS_PP_NOT(cond)) 23 | # define CHAOS_PP_UNLESS_ID() CHAOS_PP_UNLESS 24 | # 25 | # if CHAOS_PP_VARIADICS 26 | # define CHAOS_PP_UNLESS_ CHAOS_PP_VARIADICS(CHAOS_PP_UNLESS) 27 | # endif 28 | # 29 | # endif 30 | -------------------------------------------------------------------------------- /chaos/preprocessor/logical/bitor.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_LOGICAL_BITOR_H 13 | # define CHAOS_PREPROCESSOR_LOGICAL_BITOR_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # 19 | # /* CHAOS_PP_BITOR */ 20 | # 21 | # define CHAOS_PP_BITOR(x) CHAOS_PP_PRIMITIVE_CAT(CHAOS_IP_BITOR_, x) 22 | # define CHAOS_PP_BITOR_ID() CHAOS_PP_BITOR 23 | # 24 | # if CHAOS_PP_VARIADICS 25 | # define CHAOS_PP_BITOR_ CHAOS_PP_LAMBDA(CHAOS_PP_BITOR) 26 | # endif 27 | # 28 | # define CHAOS_IP_BITOR_0(y) y 29 | # define CHAOS_IP_BITOR_1(y) 1 30 | # 31 | # endif 32 | -------------------------------------------------------------------------------- /chaos/preprocessor/control/expr_if.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2004. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_CONTROL_EXPR_IF_H 13 | # define CHAOS_PREPROCESSOR_CONTROL_EXPR_IF_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_EXPR_IF */ 21 | # 22 | # define CHAOS_PP_EXPR_IF(cond) CHAOS_PP_EXPR_IIF(CHAOS_PP_BOOL(cond)) 23 | # define CHAOS_PP_EXPR_IF_ID() CHAOS_PP_EXPR_IF 24 | # 25 | # if CHAOS_PP_VARIADICS 26 | # define CHAOS_PP_EXPR_IF_ CHAOS_PP_LAMBDA(CHAOS_PP_EXPR_IF) 27 | # endif 28 | # 29 | # endif 30 | -------------------------------------------------------------------------------- /chaos/preprocessor/logical/compl.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_LOGICAL_COMPL_H 13 | # define CHAOS_PREPROCESSOR_LOGICAL_COMPL_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # 19 | # /* CHAOS_PP_COMPL */ 20 | # 21 | # define CHAOS_PP_COMPL(bit) CHAOS_PP_PRIMITIVE_CAT_SHADOW(CHAOS_IP_COMPL_, bit) 22 | # define CHAOS_PP_COMPL_ID() CHAOS_PP_COMPL 23 | # 24 | # if CHAOS_PP_VARIADICS 25 | # define CHAOS_PP_COMPL_ CHAOS_PP_LAMBDA(CHAOS_PP_COMPL) 26 | # endif 27 | # 28 | # define CHAOS_IP_COMPL_0 1 29 | # define CHAOS_IP_COMPL_1 0 30 | # 31 | # endif 32 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Boost Software License - Version 1.0 - August 17th, 2003 2 | 3 | Permission is hereby granted, free of charge, to any person or organization 4 | obtaining a copy of the software and accompanying documentation covered by 5 | this license (the "Software") to use, reproduce, display, distribute, 6 | execute, and transmit the Software, and to prepare derivative works of the 7 | Software, and to permit third-parties to whom the Software is furnished to 8 | do so, all subject to the following: 9 | 10 | The copyright notices in the Software and this entire statement, including 11 | the above license grant, this restriction and the following disclaimer, 12 | must be included in all copies of the Software, in whole or in part, and 13 | all derivative works of the Software, unless such copies or derivative 14 | works are solely in the form of machine-executable object code generated by 15 | a source language processor. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 | FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT 20 | SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE 21 | FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, 22 | ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 23 | DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /chaos/preprocessor/array/size.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_ARRAY_SIZE_H 13 | # define CHAOS_PREPROCESSOR_ARRAY_SIZE_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_ARRAY_SIZE */ 21 | # 22 | # define CHAOS_PP_ARRAY_SIZE(array) CHAOS_PP_SPLIT(0, CHAOS_PP_TUPLE_REM(2) array) 23 | # define CHAOS_PP_ARRAY_SIZE_ID() CHAOS_PP_ARRAY_SIZE 24 | # 25 | # if CHAOS_PP_VARIADICS 26 | # define CHAOS_PP_ARRAY_SIZE_ CHAOS_PP_LAMBDA(CHAOS_PP_ARRAY_SIZE) 27 | # endif 28 | # 29 | # endif 30 | -------------------------------------------------------------------------------- /chaos/preprocessor/logical/bitand.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_LOGICAL_BITAND_H 13 | # define CHAOS_PREPROCESSOR_LOGICAL_BITAND_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # 19 | # /* CHAOS_PP_BITAND */ 20 | # 21 | # define CHAOS_PP_BITAND(x) CHAOS_PP_PRIMITIVE_CAT(CHAOS_IP_BITAND_, x) 22 | # define CHAOS_PP_BITAND_ID() CHAOS_PP_BITAND 23 | # 24 | # if CHAOS_PP_VARIADICS 25 | # define CHAOS_PP_BITAND_ CHAOS_PP_LAMBDA(CHAOS_PP_BITAND) 26 | # endif 27 | # 28 | # define CHAOS_IP_BITAND_0(y) 0 29 | # define CHAOS_IP_BITAND_1(y) y 30 | # 31 | # endif 32 | -------------------------------------------------------------------------------- /chaos/preprocessor/punctuation/comma_if.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_PUNCTUATION_COMMA_IF_H 13 | # define CHAOS_PREPROCESSOR_PUNCTUATION_COMMA_IF_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_COMMA_IF */ 21 | # 22 | # define CHAOS_PP_COMMA_IF(cond) CHAOS_PP_WHEN(cond)(CHAOS_PP_COMMA()) 23 | # define CHAOS_PP_COMMA_IF_ID() CHAOS_PP_COMMA_IF 24 | # 25 | # if CHAOS_PP_VARIADICS 26 | # define CHAOS_PP_COMMA_IF_ CHAOS_PP_LAMBDA(CHAOS_PP_COMMA_IF) 27 | # endif 28 | # 29 | # endif 30 | -------------------------------------------------------------------------------- /chaos/preprocessor/logical/not.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_LOGICAL_NOT_H 13 | # define CHAOS_PREPROCESSOR_LOGICAL_NOT_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_NOT */ 21 | # 22 | # define CHAOS_PP_NOT(x) CHAOS_PP_IS_NULLARY(CHAOS_PP_PRIMITIVE_CAT_SHADOW(CHAOS_IP_NOT_, x)) 23 | # define CHAOS_PP_NOT_ID() CHAOS_PP_NOT 24 | # 25 | # if CHAOS_PP_VARIADICS 26 | # define CHAOS_PP_NOT_ CHAOS_PP_LAMBDA(CHAOS_PP_NOT) 27 | # endif 28 | # 29 | # define CHAOS_IP_NOT_0 () 30 | # 31 | # endif 32 | -------------------------------------------------------------------------------- /chaos/preprocessor/arbitrary/sign.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_ARBITRARY_SIGN_H 13 | # define CHAOS_PREPROCESSOR_ARBITRARY_SIGN_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_ARBITRARY_SIGN */ 21 | # 22 | # define CHAOS_PP_ARBITRARY_SIGN(x) CHAOS_PP_IS_UNARY(CHAOS_PP_REM x) 23 | # define CHAOS_PP_ARBITRARY_SIGN_ID() CHAOS_PP_ARBITRARY_SIGN 24 | # 25 | # if CHAOS_PP_VARIADICS 26 | # define CHAOS_PP_ARBITRARY_SIGN_ CHAOS_PP_LAMBDA(CHAOS_PP_ARBITRARY_SIGN) 27 | # endif 28 | # 29 | # endif 30 | -------------------------------------------------------------------------------- /chaos/preprocessor/comparison/less_equal.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_COMPARISON_LESS_EQUAL_H 13 | # define CHAOS_PREPROCESSOR_COMPARISON_LESS_EQUAL_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_LESS_EQUAL */ 21 | # 22 | # define CHAOS_PP_LESS_EQUAL(x, y) CHAOS_PP_COMPL(CHAOS_PP_LESS(y, x)) 23 | # define CHAOS_PP_LESS_EQUAL_ID() CHAOS_PP_LESS_EQUAL 24 | # 25 | # if CHAOS_PP_VARIADICS 26 | # define CHAOS_PP_LESS_EQUAL_ CHAOS_PP_LAMBDA(CHAOS_PP_LESS_EQUAL) 27 | # endif 28 | # 29 | # endif 30 | -------------------------------------------------------------------------------- /chaos/preprocessor/control/if.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_CONTROL_IF_H 13 | # define CHAOS_PREPROCESSOR_CONTROL_IF_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_IF */ 21 | # 22 | # define CHAOS_PP_IF(cond) CHAOS_PP_IIF(CHAOS_PP_BOOL(cond)) 23 | # define CHAOS_PP_IF_ID() CHAOS_PP_IF 24 | # 25 | # if CHAOS_PP_VARIADICS 26 | # define CHAOS_PP_IF_ CHAOS_PP_LAMBDA(CHAOS_PP_IF) 27 | # endif 28 | # 29 | # define CHAOS_PP_IF_SHADOW(cond) CHAOS_PP_IIF_SHADOW(CHAOS_PP_BOOL(cond)) 30 | # 31 | # endif 32 | -------------------------------------------------------------------------------- /chaos/preprocessor/control/include_if.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_CONTROL_INCLUDE_IF_H 13 | # define CHAOS_PREPROCESSOR_CONTROL_INCLUDE_IF_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_INCLUDE_IF */ 21 | # 22 | # define CHAOS_PP_INCLUDE_IF(cond, file) CHAOS_PP_IF(cond)(file, CHAOS_PP_NULL()) 23 | # define CHAOS_PP_INCLUDE_IF_ID() CHAOS_PP_INCLUDE_IF 24 | # 25 | # if CHAOS_PP_VARIADICS 26 | # define CHAOS_PP_INCLUDE_IF_ CHAOS_PP_LAMBDA(CHAOS_PP_INCLUDE_IF) 27 | # endif 28 | # 29 | # endif 30 | -------------------------------------------------------------------------------- /chaos/preprocessor/facilities/identity.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_FACILITIES_IDENTITY_H 13 | # define CHAOS_PREPROCESSOR_FACILITIES_IDENTITY_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # 19 | # /* CHAOS_PP_IDENTITY */ 20 | # 21 | # if CHAOS_PP_VARIADICS 22 | # define CHAOS_PP_IDENTITY(...) __VA_ARGS__ CHAOS_PP_EMPTY 23 | # define CHAOS_PP_IDENTITY_ CHAOS_PP_LAMBDA(CHAOS_PP_IDENTITY_ID)() 24 | # else 25 | # define CHAOS_PP_IDENTITY(x) x CHAOS_PP_EMPTY 26 | # endif 27 | # 28 | # define CHAOS_PP_IDENTITY_ID() CHAOS_PP_IDENTITY 29 | # 30 | # endif 31 | -------------------------------------------------------------------------------- /chaos/preprocessor/logical/or.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_LOGICAL_OR_H 13 | # define CHAOS_PREPROCESSOR_LOGICAL_OR_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_OR */ 21 | # 22 | # define CHAOS_PP_OR(p) CHAOS_PP_CAT(CHAOS_IP_OR_, CHAOS_PP_BOOL(p)) 23 | # define CHAOS_PP_OR_ID() CHAOS_PP_OR 24 | # 25 | # if CHAOS_PP_VARIADICS 26 | # define CHAOS_PP_OR_ CHAOS_PP_LAMBDA(CHAOS_PP_OR) 27 | # endif 28 | # 29 | # define CHAOS_IP_OR_0(q) CHAOS_PP_BOOL(q) 30 | # define CHAOS_IP_OR_1(q) 1 31 | # 32 | # endif 33 | -------------------------------------------------------------------------------- /chaos/preprocessor/seq/range.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_SEQ_RANGE_H 13 | # define CHAOS_PREPROCESSOR_SEQ_RANGE_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_SEQ_RANGE */ 21 | # 22 | # define CHAOS_PP_SEQ_RANGE(i, len, seq) \ 23 | CHAOS_PP_SEQ_TAKE(len, CHAOS_PP_SEQ_DROP(i, seq)) \ 24 | /**/ 25 | # define CHAOS_PP_SEQ_RANGE_ID() CHAOS_PP_SEQ_RANGE 26 | # 27 | # if CHAOS_PP_VARIADICS 28 | # define CHAOS_PP_SEQ_RANGE_ CHAOS_PP_LAMBDA(CHAOS_PP_SEQ_RANGE_ID)() 29 | # endif 30 | # 31 | # endif 32 | -------------------------------------------------------------------------------- /chaos/preprocessor/seq/to_array.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_SEQ_TO_ARRAY_H 13 | # define CHAOS_PREPROCESSOR_SEQ_TO_ARRAY_H 14 | # 15 | # include 16 | # include 17 | # include 18 | # include 19 | # 20 | # /* CHAOS_PP_SEQ_TO_ARRAY */ 21 | # 22 | # define CHAOS_PP_SEQ_TO_ARRAY(seq) (CHAOS_PP_SEQ_SIZE(seq), CHAOS_PP_SEQ_TO_TUPLE(seq)) 23 | # define CHAOS_PP_SEQ_TO_ARRAY_ID() CHAOS_PP_SEQ_TO_ARRAY 24 | # 25 | # if CHAOS_PP_VARIADICS 26 | # define CHAOS_PP_SEQ_TO_ARRAY_ CHAOS_PP_LAMBDA(CHAOS_PP_SEQ_TO_ARRAY_ID)() 27 | # endif 28 | # 29 | # endif 30 | -------------------------------------------------------------------------------- /chaos/preprocessor/seq/detail/close.h: -------------------------------------------------------------------------------- 1 | # /* ******************************************************************** 2 | # * * 3 | # * (C) Copyright Paul Mensonides 2003-2005. * 4 | # * * 5 | # * Distributed under the Boost Software License, Version 1.0. * 6 | # * (See accompanying file LICENSE). * 7 | # * * 8 | # * See http://chaos-pp.sourceforge.net for most recent version. * 9 | # * * 10 | # ******************************************************************** */ 11 | # 12 | # ifndef CHAOS_PREPROCESSOR_SEQ_DETAIL_CLOSE_H 13 | # define CHAOS_PREPROCESSOR_SEQ_DETAIL_CLOSE_H 14 | # 15 | # include 16 | # include 17 | # 18 | # /* CHAOS_PP_SEQ_CLOSE */ 19 | # 20 | # define CHAOS_PP_SEQ_CLOSE(bin) CHAOS_IP_SEQ_CLOSE_I bin 21 | # 22 | # define CHAOS_IP_SEQ_CLOSE_I_ID() CHAOS_IP_SEQ_CLOSE_I 23 | # 24 | # if CHAOS_PP_VARIADICS 25 | # define CHAOS_IP_SEQ_CLOSE_I(m, ...) m(?)(CHAOS_PP_RPAREN() CHAOS_IP_SEQ_CLOSE_I_ID) 26 | # else 27 | # define CHAOS_IP_SEQ_CLOSE_I(m, x) m(1)(CHAOS_PP_RPAREN() CHAOS_IP_SEQ_CLOSE_I_ID) 28 | # endif 29 | # 30 | # endif 31 | --------------------------------------------------------------------------------