Boost logo

Boost-Commit :

From: joel_at_[hidden]
Date: 2007-11-06 07:14:18


Author: djowel
Date: 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
New Revision: 40832
URL: http://svn.boost.org/trac/boost/changeset/40832

Log:
Regenerating/reorganizing docs
Added:
   trunk/libs/fusion/doc/html/fusion/
   trunk/libs/fusion/doc/html/fusion/acknowledgements.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/adapted/
   trunk/libs/fusion/doc/html/fusion/adapted.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/adapted/boost__array.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/adapted/boost__tuple.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/adapted/boost__variant.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/adapted/mpl_sequence.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/adapted/std__pair.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/
   trunk/libs/fusion/doc/html/fusion/algorithm.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/iteration/
   trunk/libs/fusion/doc/html/fusion/algorithm/iteration.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/iteration/functions/
   trunk/libs/fusion/doc/html/fusion/algorithm/iteration/functions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/iteration/functions/accumulate.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/iteration/functions/fold.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/iteration/functions/for_each.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/iteration/metafunctions/
   trunk/libs/fusion/doc/html/fusion/algorithm/iteration/metafunctions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/iteration/metafunctions/accumulate.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/iteration/metafunctions/fold.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/iteration/metafunctions/for_each.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/query/
   trunk/libs/fusion/doc/html/fusion/algorithm/query.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/
   trunk/libs/fusion/doc/html/fusion/algorithm/query/functions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/all.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/any.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/count.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/count_if.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/find.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/find_if.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/none.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/
   trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/all.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/any.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/count.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/count_if.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/find.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/find_if.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/none.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/clear.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/erase.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/erase_key.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/filter.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/filter_if.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/insert.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/insert_range.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/join.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/pop_back.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/pop_front.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/push_back.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/push_front.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/remove.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/remove_if.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/replace.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/replace_if.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/reverse.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/transform.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/zip.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/clear.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/erase.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/erase_key.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/filter.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/filter_if.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/insert.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/insert_range.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/join.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/pop_back.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/pop_front.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/push_back.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/push_front.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/remove.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/remove_if.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/replace.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/replace_if.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/reverse.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/transform.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/zip.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/change_log.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/
   trunk/libs/fusion/doc/html/fusion/container.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/cons.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/conversion/
   trunk/libs/fusion/doc/html/fusion/container/conversion.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/conversion/functions/
   trunk/libs/fusion/doc/html/fusion/container/conversion/functions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/conversion/functions/as_list.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/conversion/functions/as_map.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/conversion/functions/as_set.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/conversion/functions/as_vector.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/conversion/metafunctions/
   trunk/libs/fusion/doc/html/fusion/container/conversion/metafunctions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/conversion/metafunctions/as_list.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/conversion/metafunctions/as_map.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/conversion/metafunctions/as_set.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/conversion/metafunctions/as_vector.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/
   trunk/libs/fusion/doc/html/fusion/container/generation.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/functions/
   trunk/libs/fusion/doc/html/fusion/container/generation/functions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/functions/list_tie.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/functions/make_cons.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/functions/make_list.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/functions/make_map.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/functions/make_set.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/functions/make_vector.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/functions/map_tie.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/functions/tiers.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/functions/vector_tie.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/
   trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/list_tie.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/make_cons.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/make_list.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/make_map.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/make_set.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/make_vector.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/map_tie.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/vector_tie.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/list.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/map.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/set.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/container/vector.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/extension/
   trunk/libs/fusion/doc/html/fusion/extension.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/extension/ext_full.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/extension/iterator_facade.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/extension/macros/
   trunk/libs/fusion/doc/html/fusion/extension/macros.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/extension/macros/adapt_assoc.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/extension/macros/adapt_struct.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/extension/sequence_facade.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/
   trunk/libs/fusion/doc/html/fusion/functional.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/adapters/
   trunk/libs/fusion/doc/html/fusion/functional/adapters.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/adapters/fused.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/adapters/fused_function_object.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/adapters/fused_procedure.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/adapters/unfused_generic.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/adapters/unfused_lvalue_args.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/adapters/unfused_rvalue_args.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/adapters/unfused_typed.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/concepts/
   trunk/libs/fusion/doc/html/fusion/functional/concepts.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/concepts/callable.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/concepts/def_callable.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/concepts/poly.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/concepts/reg_callable.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/generation/
   trunk/libs/fusion/doc/html/fusion/functional/generation.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/generation/functions/
   trunk/libs/fusion/doc/html/fusion/functional/generation/functions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_fused.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_fused_fobj.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_fused_proc.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_unfused_genrc.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_unfused_lvargs.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_unfused_rvargs.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/
   trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_fused.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_fused_fobj.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_fused_proc.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_unfused_genrc.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_unfused_lvargs.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_unfused_rvargs.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/invocation/
   trunk/libs/fusion/doc/html/fusion/functional/invocation.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/invocation/functions/
   trunk/libs/fusion/doc/html/fusion/functional/invocation/functions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/invocation/functions/invoke.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/invocation/functions/invoke_fobj.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/invocation/functions/invoke_proc.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/invocation/metafunctions/
   trunk/libs/fusion/doc/html/fusion/functional/invocation/metafunctions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/invocation/metafunctions/invoke.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/invocation/metafunctions/invoke_fobj.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/functional/invocation/metafunctions/invoke_proc.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/introduction.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/
   trunk/libs/fusion/doc/html/fusion/iterator.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/concepts/
   trunk/libs/fusion/doc/html/fusion/iterator/concepts.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/concepts/bidirectional_iterator.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/concepts/forward_iterator.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/concepts/random_access_iterator.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/functions/
   trunk/libs/fusion/doc/html/fusion/iterator/functions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/functions/advance.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/functions/advance_c.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/functions/deref.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/functions/distance.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/functions/next.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/functions/prior.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/
   trunk/libs/fusion/doc/html/fusion/iterator/metafunctions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/advance.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/advance_c.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/deref.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/distance.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/equal_to.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/next.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/prior.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/value_of.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/operator/
   trunk/libs/fusion/doc/html/fusion/iterator/operator.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/operator/operator_equality.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/operator/operator_inequality.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/iterator/operator/operator_unary_star.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/notes.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/organization.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/preface.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/quick_start.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/references.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/
   trunk/libs/fusion/doc/html/fusion/sequence.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/concepts/
   trunk/libs/fusion/doc/html/fusion/sequence/concepts.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/concepts/associative_sequence.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/concepts/bidirectional_sequence.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/concepts/forward_sequence.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/concepts/random_access_sequence.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/at.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/at_c.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/at_key.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/back.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/begin.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/empty.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/end.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/front.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/has_key.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/size.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/swap.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/at.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/at_c.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/at_key.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/back.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/begin.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/empty.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/end.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/front.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/has_key.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/size.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/swap.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/value_at.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/value_at_c.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/value_at_key.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/operator/
   trunk/libs/fusion/doc/html/fusion/sequence/operator.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/
   trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/equal.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/greater_than.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/greater_than_equal.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/less_than.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/less_than_equal.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/not_equal.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/operator/i_o/
   trunk/libs/fusion/doc/html/fusion/sequence/operator/i_o.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/operator/i_o/in.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/sequence/operator/i_o/out.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/support/
   trunk/libs/fusion/doc/html/fusion/support.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/support/category_of.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/support/deduce.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/support/deduce_sequence.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/support/is_sequence.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/support/is_view.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/support/pair.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/support/tag_of.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/tuple/
   trunk/libs/fusion/doc/html/fusion/tuple.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple/
   trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple/construction.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple/element_access.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple/relational_operators.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple/tuple_creation_functions.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple/tuple_helper_classes.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/tuple/pairs.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/view/
   trunk/libs/fusion/doc/html/fusion/view.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/view/filter_view.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/view/iterator_range.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/view/joint_view.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/view/reverse_view.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/view/single_view.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/view/transform_view.html (contents, props changed)
   trunk/libs/fusion/doc/html/fusion/view/zip_view.html (contents, props changed)
Text files modified:
   trunk/libs/fusion/doc/algorithm.qbk | 2
   trunk/libs/fusion/doc/extension.qbk | 38 ++++----
   trunk/libs/fusion/doc/html/index.html | 189 ++++++++++++++++++++++-----------------
   trunk/libs/fusion/doc/quick_start.qbk | 2
   trunk/libs/fusion/doc/sequence.qbk | 24 ++--
   trunk/libs/fusion/doc/view.qbk | 2
   trunk/libs/fusion/test/algorithm/clear.cpp | 2
   trunk/libs/fusion/test/algorithm/erase.cpp | 2
   trunk/libs/fusion/test/algorithm/erase_key.cpp | 6
   trunk/libs/fusion/test/algorithm/ext_/find_if_s.cpp | 2
   trunk/libs/fusion/test/algorithm/ext_/for_each_s.cpp | 2
   trunk/libs/fusion/test/algorithm/filter.cpp | 2
   trunk/libs/fusion/test/algorithm/filter_if.cpp | 2
   trunk/libs/fusion/test/algorithm/fold.cpp | 2
   trunk/libs/fusion/test/algorithm/insert.cpp | 2
   trunk/libs/fusion/test/algorithm/insert_range.cpp | 2
   trunk/libs/fusion/test/algorithm/join.cpp | 2
   trunk/libs/fusion/test/algorithm/pop_back.cpp | 2
   trunk/libs/fusion/test/algorithm/pop_front.cpp | 2
   trunk/libs/fusion/test/algorithm/push_back.cpp | 2
   trunk/libs/fusion/test/algorithm/push_front.cpp | 2
   trunk/libs/fusion/test/algorithm/remove.cpp | 2
   trunk/libs/fusion/test/algorithm/remove_if.cpp | 2
   trunk/libs/fusion/test/algorithm/replace.cpp | 2
   trunk/libs/fusion/test/algorithm/replace_if.cpp | 2
   trunk/libs/fusion/test/algorithm/reverse.cpp | 2
   trunk/libs/fusion/test/algorithm/transform.cpp | 2
   trunk/libs/fusion/test/algorithm/zip.cpp | 2
   trunk/libs/fusion/test/functional/fused.cpp | 2
   trunk/libs/fusion/test/functional/fused_function_object.cpp | 2
   trunk/libs/fusion/test/functional/fused_procedure.cpp | 2
   trunk/libs/fusion/test/functional/make_fused.cpp | 2
   trunk/libs/fusion/test/functional/make_fused_function_object.cpp | 2
   trunk/libs/fusion/test/functional/make_fused_procedure.cpp | 2
   trunk/libs/fusion/test/sequence/adapt_assoc_struct.cpp | 2
   trunk/libs/fusion/test/sequence/adapt_struct.cpp | 2
   trunk/libs/fusion/test/sequence/as_list.cpp | 4
   trunk/libs/fusion/test/sequence/as_map.cpp | 4
   trunk/libs/fusion/test/sequence/as_set.cpp | 4
   trunk/libs/fusion/test/sequence/as_vector.cpp | 4
   trunk/libs/fusion/test/sequence/back_extended_deque.cpp | 2
   trunk/libs/fusion/test/sequence/boost_tuple.cpp | 2
   trunk/libs/fusion/test/sequence/cons.cpp | 6
   trunk/libs/fusion/test/sequence/deque_copy.cpp | 4
   trunk/libs/fusion/test/sequence/deque_make.cpp | 2
   trunk/libs/fusion/test/sequence/deque_tie.cpp | 6
   trunk/libs/fusion/test/sequence/ext_/iterator_range_s.cpp | 2
   trunk/libs/fusion/test/sequence/filter_view.cpp | 2
   trunk/libs/fusion/test/sequence/front_extended_deque.cpp | 2
   trunk/libs/fusion/test/sequence/io.cpp | 2
   trunk/libs/fusion/test/sequence/iterator_range.cpp | 2
   trunk/libs/fusion/test/sequence/joint_view.cpp | 2
   trunk/libs/fusion/test/sequence/list_copy.cpp | 4
   trunk/libs/fusion/test/sequence/list_make.cpp | 2
   trunk/libs/fusion/test/sequence/list_tie.cpp | 6
   trunk/libs/fusion/test/sequence/make_list.cpp | 2
   trunk/libs/fusion/test/sequence/make_vector.cpp | 2
   trunk/libs/fusion/test/sequence/map.cpp | 2
   trunk/libs/fusion/test/sequence/map_tie.cpp | 2
   trunk/libs/fusion/test/sequence/reverse_view.cpp | 2
   trunk/libs/fusion/test/sequence/set.cpp | 2
   trunk/libs/fusion/test/sequence/std_pair.cpp | 2
   trunk/libs/fusion/test/sequence/swap.cpp | 2
   trunk/libs/fusion/test/sequence/transform_view.cpp | 2
   trunk/libs/fusion/test/sequence/vector_copy.cpp | 4
   trunk/libs/fusion/test/sequence/vector_make.cpp | 2
   trunk/libs/fusion/test/sequence/vector_tie.cpp | 6
   trunk/libs/fusion/test/sequence/zip_view.cpp | 2
   trunk/libs/fusion/test/sequence/zip_view2.cpp | 2
   69 files changed, 218 insertions(+), 199 deletions(-)

Modified: trunk/libs/fusion/doc/algorithm.qbk
==============================================================================
--- trunk/libs/fusion/doc/algorithm.qbk (original)
+++ trunk/libs/fusion/doc/algorithm.qbk 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -30,7 +30,7 @@
 sequences are now implemented only once. That is to say that Fusion
 sequences are cheaply extensible. However, an important caveat is that the
 result of a sequence extending operation like __push_back__ does not retain
-the properties of the original sequence such as associativity of __set__s.
+the properties of the original sequence such as associativity of __set__(s).
 To regain the original sequence, __conversion__ functions are provided. You
 may use one of the __conversion__ functions to convert back to the original
 sequence type.

Modified: trunk/libs/fusion/doc/extension.qbk
==============================================================================
--- trunk/libs/fusion/doc/extension.qbk (original)
+++ trunk/libs/fusion/doc/extension.qbk 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -1,9 +1,9 @@
 [section Extension]
 
-[section The Full Extension Mechanism]
+[section:ext_full The Full Extension Mechanism]
 
 The Fusion library is designed to be extensible, new sequences types can easily
-be added. In fact, the library support for `std::pair`, `boost::array` and __mpl__
+be added. In fact, the library support for `std::pair`, `boost::array` and __mpl__
 sequences is entirely provided using the extension mechanism.
 
 The process for adding a new sequence type to Fusion is:
@@ -30,7 +30,7 @@
             {}
         };
     }
-
+
 We are going to pretend that this type has been provided by a 3rd party
 library, and therefore cannot be modified. We shall work through all the
 necessary steps to enable `example_struct` to serve as an __associative_sequence__
@@ -54,7 +54,7 @@
     #include <boost/fusion/support/tag_of_fwd.hpp>
     #include <boost/fusion/include/tag_of_fwd.hpp>
 
- namespace boost { namespace fusion { namespace traits {
+ namespace boost { namespace fusion { namespace traits {
         template<>
         struct tag_of<example_struct>
         {
@@ -62,8 +62,8 @@
         };
     }}}
 
-`traits::tag_of` also has a second template argument,
-that can be used in conjuction with `boost::enable_if` to provide tag
+`traits::tag_of` also has a second template argument,
+that can be used in conjuction with `boost::enable_if` to provide tag
 support for groups of related types. This feature is not necessary
 for our sequence, but for an example see the code in:
 
@@ -100,7 +100,7 @@
 # The iterator is parameterized by the type it is iterating over, and the index of the current element.
 # The typedefs `struct_type` and `index` provide convenient access to information we will need later in
   the implementation.
-# The typedef `category` allows the `traits::__category_of__` metafunction to establish
+# The typedef `category` allows the `traits::__category_of__` metafunction to establish
   the traversal category of the iterator.
 # The constructor stores a reference to the `example_struct` being iterated over.
 
@@ -113,7 +113,7 @@
 [heading A first couple of instructive features]
 
 To start with, we will get the __result_of_value_of__ metafunction working. To
-do this, we provide a specialization of the `boost::fusion::extension::value_of_impl` template for
+do this, we provide a specialization of the `boost::fusion::extension::value_of_impl` template for
 our iterator's tag type.
 
     template<>
@@ -188,7 +188,7 @@
     }
 
 The use of `deref_impl` is very similar to that of `value_of_impl`, but it also
-provides some runtime functionality this time via the `call` static member function.
+provides some runtime functionality this time via the `call` static member function.
 To see how `deref_impl` is used, lets have a look at the implementation of __deref__:
 
     namespace result_of
@@ -213,7 +213,7 @@
 by __deref__ is provided by the `call` static function of the selected
 __mpl_metafunction_class__.
 
-The actual implementation of `deref_impl` is slightly more complex than that of `value_of_impl`.
+The actual implementation of `deref_impl` is slightly more complex than that of `value_of_impl`.
 We also need to implement the `call` function, which returns a reference
 to the appropriate member of the underlying sequence. We also require a little
 bit of metaprogramming to return `const` references if the underlying sequence
@@ -261,7 +261,7 @@
 in order to satisfy the necessary complexity guarantees. As our iterator is
 a __random_access_iterator__ we will have to implement all of these functions.
 
-Full implementations of `prior_impl`, `advance_impl`, `distance_impl` and `equal_to_impl` are
+Full implementations of `prior_impl`, `advance_impl`, `distance_impl` and `equal_to_impl` are
 provided in the example code.
 
 [heading Implementing the intrinsic functions of the sequence]
@@ -279,7 +279,7 @@
 
 We've some similar formalities to complete, providing `category_of_impl` so Fusion
 can correctly identify our sequence type, and `is_view_impl` so Fusion can correctly
-identify our sequence as not being a __view__ type. Implementations are
+identify our sequence as not being a __view__ type. Implementations are
 provide in the example code.
 
 Now we've completed some formalities, on to more interesting features. Lets get
@@ -304,7 +304,7 @@
 
 The implementation uses the same ideas we have applied throughout, in this case
 we are just creating one of the iterators we developed earlier, pointing to the
-first element in the sequence. The implementation of __end__ is very similar, and
+first element in the sequence. The implementation of __end__ is very similar, and
 is provided in the example code.
 
 For our __random_access_sequence__ we will also need to implement `size_impl`,
@@ -312,10 +312,10 @@
 
 [heading Enabling our type as an associative container]
 
-In order for `example_struct` to serve as an associative container,
+In order for `example_struct` to serve as an associative container,
 we need to enable 3 lookup features, __at_key__, __value_at_key__ and __has_key__.
 We also need to provide an implementation of the `is_associative` trait
-so that our sequence can be correctly identified as an associative container.
+so that our sequence can be correctly identified as an associative container.
 
 To implement `at_key_impl` we need to associate the `fields::age` and `fields::age`
 types described in the __quick_start__ guide with the appropriate members of `example_struct`.
@@ -465,7 +465,7 @@
 
 [section Macros]
 
-[section BOOST_FUSION_ADAPT_STRUCT]
+[section:adapt_struct BOOST_FUSION_ADAPT_STRUCT]
 
 [heading Description]
 BOOST_FUSION_ADAPT_STRUCT is a macro that can be used to generate all the
@@ -515,7 +515,7 @@
 
 [endsect]
 
-[section BOOST_FUSION_ADAPT_ASSOC_STRUCT]
+[section:adapt_assoc BOOST_FUSION_ADAPT_ASSOC_STRUCT]
 
 [heading Description]
 BOOST_FUSION_ADAPT_ASSOC_STRUCT is a macro that can be used to generate all the
@@ -539,9 +539,9 @@
         )
 
 The above macro generates the necessary code to adapt `struct_name`
-as a model of __random_access_sequence__ and __associative_sequence__.
+as a model of __random_access_sequence__ and __associative_sequence__.
 The sequence of `(member_typeN, member_nameN, key_typeN)`
-triples declare the type, name and key type of each of the struct members
+triples declare the type, name and key type of each of the struct members
 that will be part of the sequence.
 
 The macro should be used at global scope, and `struct_name` should be the fully

Added: trunk/libs/fusion/doc/html/fusion/acknowledgements.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/acknowledgements.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,53 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Acknowledgements</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="change_log.html" title="Change log">
+<link rel="next" href="references.html" title="References">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="change_log.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="references.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.acknowledgements"></a>Acknowledgements</h2></div></div></div>
+<p>
+ Special thanks to David Abrahams, Douglas Gregor, Hartmut Kaiser, Aleksey Gurtovoy,
+ Peder Holt, Daniel Wallin, Jaakko Jarvi, Jeremiah Willcock, Dan Marsden, Eric
+ Niebler, Joao Abecasis and Andy Little. These people are instrumental in the
+ design and development of Fusion.
+ </p>
+<p>
+ Special thanks to Ronald Garcia, the review manager and to all the people in
+ the boost community who participated in the review: Andreas Pokorny, Andreas
+ Huber, Jeff Flinn, David Abrahams, Pedro Lamarao, Larry Evans, Ryan Gallagher,
+ Andy Little, Gennadiy Rozental, Tobias Schwinger, Joao Abecasis, Eric Niebler,
+ Oleg Abrosimov, Gary Powell, Eric Friedman, Darren Cook, Martin Bonner and
+ Douglas Gregor.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="change_log.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="references.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/adapted.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/adapted.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,73 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Adapted</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="view/reverse_view.html" title="reverse_view">
+<link rel="next" href="adapted/std__pair.html" title="std::pair">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="view/reverse_view.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="adapted/std__pair.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.adapted"></a>Adapted</h2></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">std::pair</span></dt>
+<dt><span class="section">mpl sequence</span></dt>
+<dt><span class="section">boost::array</span></dt>
+<dt><span class="section">boost::tuple</span></dt>
+<dt><span class="section">boost::variant</span></dt>
+</dl></div>
+<p>
+ Fusion provides a couple of adapters for other sequences such as <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></tt>,
+ MPL sequences,
+ and <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></tt>. These adapters are written using Fusion's
+ non-intrusive Extension mechanism.
+ If you wish to use these sequences with fusion, simply include the necessary
+ files and they will be regarded as first-class, fully conforming fusion sequences
+ <sup>[<a name="id570651" href="#ftn.id570651">13</a>]</sup>
+ .
+ </p>
+<a name="fusion.adapted.header"></a><h3>
+<a name="id570693"></a>
+ Header
+ </h3>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">adapted</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">adapted</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<div class="footnotes">
+<br><hr width="100" align="left">
+<div class="footnote"><p><sup>[<a name="ftn.id570651" href="#id570651">13</a>] </sup>
+ Fusion sequences may also be adapted as fully conforming MPL
+ sequences (see Intrinsics).
+ That way, we can have 2-way adaptation to and from MPL
+ and Fusion
+ </p></div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="view/reverse_view.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="adapted/std__pair.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/adapted/boost__array.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/adapted/boost__array.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,81 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>boost::array</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../adapted.html" title="Adapted">
+<link rel="prev" href="mpl_sequence.html" title="mpl sequence">
+<link rel="next" href="boost__tuple.html" title="boost::tuple">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mpl_sequence.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapted.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="boost__tuple.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.adapted.boost__array"></a>boost::array</h3></div></div></div>
+<p>
+ This module provides adapters for <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></tt>.
+ Including the module header makes <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></tt>
+ a fully conforming <a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a>.
+ </p>
+<a name="fusion.adapted.boost__array.header"></a><h4>
+<a name="id572549"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">adapted</span><span class="special">/</span><span class="identifier">array</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">array</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.adapted.boost__array.model_of"></a><h4>
+<a name="id572707"></a>
+ Model of
+ </h4>
+<div class="itemizedlist"><ul type="disc"><li><a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a></li></ul></div>
+<a name="fusion.adapted.boost__array.example"></a><h4>
+<a name="id572748"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="number">3</span><span class="special">&gt;</span> <span class="identifier">arr</span> <span class="special">=</span> <span class="special">{{</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">}};</span>
+
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="special">*</span>begin<span class="special">(</span><span class="identifier">arr</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="special">*</span>next<span class="special">(</span>begin<span class="special">(</span><span class="identifier">arr</span><span class="special">))</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="special">*</span>advance_c<span class="special">&lt;</span><span class="number">2</span><span class="special">&gt;(</span>begin<span class="special">(</span><span class="identifier">arr</span><span class="special">))</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="special">*</span>prior<span class="special">(</span>end<span class="special">(</span><span class="identifier">arr</span><span class="special">))</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> at_c<span class="special">&lt;</span><span class="number">2</span><span class="special">&gt;(</span><span class="identifier">arr</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+</pre>
+<a name="fusion.adapted.boost__array.see_also"></a><h4>
+<a name="id573368"></a>
+ See also
+ </h4>
+<p>
+ Boost.Array Library
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mpl_sequence.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapted.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="boost__tuple.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/adapted/boost__tuple.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/adapted/boost__tuple.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,77 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>boost::tuple</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../adapted.html" title="Adapted">
+<link rel="prev" href="boost__array.html" title="boost::array">
+<link rel="next" href="boost__variant.html" title="boost::variant">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="boost__array.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapted.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="boost__variant.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.adapted.boost__tuple"></a>boost::tuple</h3></div></div></div>
+<p>
+ This module provides adapters for <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">tuple</span></tt>.
+ Including the module header makes <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">tuple</span></tt>
+ a fully conforming <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<a name="fusion.adapted.boost__tuple.header"></a><h4>
+<a name="id573482"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">adapted</span><span class="special">/</span><span class="identifier">boost_tuple</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">boost_tuple</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.adapted.boost__tuple.model_of"></a><h4>
+<a name="id573641"></a>
+ Model of
+ </h4>
+<div class="itemizedlist"><ul type="disc"><li><a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a></li></ul></div>
+<a name="fusion.adapted.boost__tuple.example"></a><h4>
+<a name="id573682"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="identifier">boost</span><span class="special">::</span><span class="identifier">tuple</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;</span> <span class="identifier">example_tuple</span><span class="special">(</span><span class="number">101</span><span class="special">,</span> <span class="string">"hello"</span><span class="special">);</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="special">*</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">fusion</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">example_tuple</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="char">'\n'</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="special">*</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">fusion</span><span class="special">::</span><span class="identifier">next</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">fusion</span><span class="special">::</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">example_tuple</span><span class="special">))</span> <span class="special">&lt;&lt;</span> <span class="char">'\n'</span><span class="special">;</span>
+</pre>
+<a name="fusion.adapted.boost__tuple.see_also"></a><h4>
+<a name="id573999"></a>
+ See also
+ </h4>
+<p>
+ <a href="http://www.boost.org/libs/tuple/doc/tuple_users_guide.html" target="_top">Boost.Tuple
+ Library</a>
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="boost__array.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapted.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="boost__variant.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/adapted/boost__variant.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/adapted/boost__variant.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,80 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>boost::variant</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../adapted.html" title="Adapted">
+<link rel="prev" href="boost__tuple.html" title="boost::tuple">
+<link rel="next" href="../algorithm.html" title="Algorithm">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="boost__tuple.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapted.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../algorithm.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.adapted.boost__variant"></a>boost::variant</h3></div></div></div>
+<p>
+ This module provides adapters for <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span></tt>.
+ Including the module header makes <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span></tt>
+ a fully conforming <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>. The variant acts as a sequence of the types that can be
+ contained in the variant. Accessing types not currently stored int the variant
+ will lead to the variant being populated with a default constructed value
+ of that type.
+ </p>
+<a name="fusion.adapted.boost__variant.header"></a><h4>
+<a name="id574118"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">adapted</span><span class="special">/</span><span class="identifier">variant</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">variant</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.adapted.boost__variant.model_of"></a><h4>
+<a name="id574276"></a>
+ Model of
+ </h4>
+<div class="itemizedlist"><ul type="disc"><li><a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a></li></ul></div>
+<a name="fusion.adapted.boost__variant.example"></a><h4>
+<a name="id574317"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;</span> <span class="identifier">example_variant</span> <span class="special">=</span> <span class="number">101</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">example_variant</span> <span class="special">&lt;&lt;</span> <span class="char">'\n'</span><span class="special">;</span>
+<span class="special">*</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">fusion</span><span class="special">::</span><span class="identifier">find</span><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;(</span><span class="identifier">example_variant</span><span class="special">)</span> <span class="special">=</span> <span class="string">"hello"</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">example_variant</span> <span class="special">&lt;&lt;</span> <span class="char">'\n'</span><span class="special">;</span>
+</pre>
+<a name="fusion.adapted.boost__variant.see_also"></a><h4>
+<a name="id574600"></a>
+ See also
+ </h4>
+<p>
+ Boost.Variant Library
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="boost__tuple.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapted.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../algorithm.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/adapted/mpl_sequence.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/adapted/mpl_sequence.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,97 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>mpl sequence</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../adapted.html" title="Adapted">
+<link rel="prev" href="std__pair.html" title="std::pair">
+<link rel="next" href="boost__array.html" title="boost::array">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="std__pair.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapted.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="boost__array.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.adapted.mpl_sequence"></a>mpl sequence</h3></div></div></div>
+<p>
+ This module provides adapters for MPL
+ sequences. Including the module header makes all MPL
+ sequences fully conforming fusion sequences.
+ </p>
+<a name="fusion.adapted.mpl_sequence.header"></a><h4>
+<a name="id571602"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">adapted</span><span class="special">/</span><span class="identifier">mpl</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">mpl</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.adapted.mpl_sequence.model_of"></a><h4>
+<a name="id571759"></a>
+ Model of
+ </h4>
+<div class="itemizedlist"><ul type="disc">
+<li>
+<a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a>
+ (If the MPL
+ sequence is a forward sequence.)
+ </li>
+<li>
+<a href="../sequence/concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a> (If the MPL
+ sequence is a bidirectional sequence.)
+ </li>
+<li>
+<a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> (If the MPL
+ sequence is a random access sequence.)
+ </li>
+</ul></div>
+<a name="fusion.adapted.mpl_sequence.example"></a><h4>
+<a name="id571850"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="identifier">mpl</span><span class="special">::</span><span class="identifier">vector_c</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="number">123</span><span class="special">,</span> <span class="number">456</span><span class="special">&gt;</span> <span class="identifier">vec_c</span><span class="special">;</span>
+<span class="identifier">fusion</span><span class="special">::</span><span class="identifier">vector2</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">long</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="identifier">vec_c</span><span class="special">);</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> at_c<span class="special">&lt;</span><span class="number">0</span><span class="special">&gt;(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> at_c<span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+
+<span class="identifier">v</span> <span class="special">=</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">vector_c</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="number">456</span><span class="special">,</span> <span class="number">789</span><span class="special">&gt;();</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> at_c<span class="special">&lt;</span><span class="number">0</span><span class="special">&gt;(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> at_c<span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+</pre>
+<a name="fusion.adapted.mpl_sequence.see_also"></a><h4>
+<a name="id572437"></a>
+ See also
+ </h4>
+<p>
+ MPL
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="std__pair.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapted.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="boost__array.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/adapted/std__pair.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/adapted/std__pair.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,80 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>std::pair</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../adapted.html" title="Adapted">
+<link rel="prev" href="../adapted.html" title="Adapted">
+<link rel="next" href="mpl_sequence.html" title="mpl sequence">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../adapted.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapted.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mpl_sequence.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.adapted.std__pair"></a>std::pair</h3></div></div></div>
+<p>
+ This module provides adapters for <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></tt>.
+ Including the module header makes <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></tt>
+ a fully conforming <a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a>.
+ </p>
+<a name="fusion.adapted.std__pair.header"></a><h4>
+<a name="id570915"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">adapted</span><span class="special">/</span><span class="identifier">std_pair</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">std_pair</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.adapted.std__pair.model_of"></a><h4>
+<a name="id571072"></a>
+ Model of
+ </h4>
+<div class="itemizedlist"><ul type="disc"><li><a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a></li></ul></div>
+<a name="fusion.adapted.std__pair.example"></a><h4>
+<a name="id571113"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;</span> <span class="identifier">p</span><span class="special">(</span><span class="number">123</span><span class="special">,</span> <span class="string">"Hola!!!"</span><span class="special">);</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> at_c<span class="special">&lt;</span><span class="number">0</span><span class="special">&gt;(</span><span class="identifier">p</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> at_c<span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;(</span><span class="identifier">p</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">p</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+</pre>
+<a name="fusion.adapted.std__pair.see_also"></a><h4>
+<a name="id571466"></a>
+ See also
+ </h4>
+<p>
+ std::pair,
+ <a href="../tuple/pairs.html" title="Pairs"><tt class="computeroutput"><span class="identifier">TR1</span>
+ <span class="keyword">and</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></tt></a>
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../adapted.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapted.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mpl_sequence.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,110 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Algorithm</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="adapted/boost__variant.html" title="boost::variant">
+<link rel="next" href="algorithm/iteration.html" title="Iteration">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="adapted/boost__variant.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="algorithm/iteration.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.algorithm"></a>Algorithm</h2></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">Iteration</span></dt>
+<dd><dl>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
+</dl></dd>
+<dt><span class="section">Query</span></dt>
+<dd><dl>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
+</dl></dd>
+<dt><span class="section">Transformation</span></dt>
+<dd><dl>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
+</dl></dd>
+</dl></div>
+<a name="fusion.algorithm.lazy_evaluation"></a><h3>
+<a name="id574654"></a>
+ Lazy Evaluation
+ </h3>
+<p>
+ Unlike MPL, Fusion
+ algorithms are lazy and non sequence-type preserving. What does that mean?
+ It means that when you operate on a sequence through a Fusion algorithm that
+ returns a sequence, the sequence returned may not be of the same class as the
+ original. This is by design. Runtime efficiency is given a high priority. Like
+ MPL, and unlike
+ STL,
+ fusion algorithms are functional in nature such that algorithms are non mutating
+ (no side effects). However, due to the high cost of returning full sequences
+ such as vectors and lists, <span class="emphasis"><em>Views</em></span> are returned from Fusion
+ algorithms instead. For example, the transform algorithm does not actually
+ return a transformed version of the original sequence. transform returns a transform_view. This view holds a
+ reference to the original sequence plus the transform function. Iteration over
+ the transform_view
+ will apply the transform function over the sequence elements on demand. This
+ <span class="emphasis"><em>lazy</em></span> evaluation scheme allows us to chain as many algorithms
+ as we want without incurring a high runtime penalty.
+ </p>
+<a name="fusion.algorithm.sequence_extension"></a><h3>
+<a name="id574802"></a>
+ Sequence Extension
+ </h3>
+<p>
+ The <span class="emphasis"><em>lazy</em></span> evaluation scheme where Algorithms
+ return Views also allows operations such
+ as push_back to be totally generic. In
+ Fusion, push_back is actually a generic algorithm
+ that works on all sequences. Given an input sequence <tt class="computeroutput"><span class="identifier">s</span></tt>
+ and a value <tt class="computeroutput"><span class="identifier">x</span></tt>, Fusion's push_back algorithm simply returns
+ a joint_view:
+ a view that holds a reference to the original sequence <tt class="computeroutput"><span class="identifier">s</span></tt>
+ and the value <tt class="computeroutput"><span class="identifier">x</span></tt>. Functions
+ that were once sequence specific and need to be implemented N times over N
+ different sequences are now implemented only once. That is to say that Fusion
+ sequences are cheaply extensible. However, an important caveat is that the
+ result of a sequence extending operation like push_back does not retain the properties
+ of the original sequence such as associativity of set(s). To regain the original sequence,
+ Conversion functions
+ are provided. You may use one of the Conversion
+ functions to convert back to the original sequence type.
+ </p>
+<a name="fusion.algorithm.header"></a><h3>
+<a name="id575036"></a>
+ Header
+ </h3>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="adapted/boost__variant.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="algorithm/iteration.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/iteration.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/iteration.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,55 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Iteration</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../algorithm.html" title="Algorithm">
+<link rel="prev" href="../algorithm.html" title="Algorithm">
+<link rel="next" href="iteration/functions.html" title="Functions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../algorithm.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithm.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="iteration/functions.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.algorithm.iteration"></a>Iteration</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
+</dl></div>
+<p>
+ The iteration algorithms provide the fundamental algorithms for traversing
+ a sequence repeatedly applying an operation to its elements.
+ </p>
+<a name="fusion.algorithm.iteration.header"></a><h4>
+<a name="id575209"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">iteration</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">iteration</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../algorithm.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithm.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="iteration/functions.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/iteration/functions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/iteration/functions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,44 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Functions</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../iteration.html" title="Iteration">
+<link rel="prev" href="../iteration.html" title="Iteration">
+<link rel="next" href="functions/fold.html" title="fold">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../iteration.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../iteration.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/fold.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.algorithm.iteration.functions"></a>Functions</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">fold</span></dt>
+<dt><span class="section">accumulate</span></dt>
+<dt><span class="section">for_each</span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../iteration.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../iteration.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/fold.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/iteration/functions/accumulate.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/iteration/functions/accumulate.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,199 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>accumulate</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="fold.html" title="fold">
+<link rel="next" href="for_each.html" title="for_each">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="fold.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="for_each.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.iteration.functions.accumulate"></a>accumulate</h5></div></div></div>
+<a name="fusion.algorithm.iteration.functions.accumulate.description"></a><h6>
+<a name="id577137"></a>
+ Description
+ </h6>
+<p>
+ For a sequence <tt class="computeroutput"><span class="identifier">Seq</span></tt>, initial
+ state, and binary function object or function pointer <tt class="computeroutput"><span class="identifier">f</span></tt>,
+ accumulate repeatedly applies binary <tt class="computeroutput"><span class="identifier">f</span></tt>
+ to each element of <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ and the previous state.
+ </p>
+<a name="fusion.algorithm.iteration.functions.accumulate.synopsis"></a><h6>
+<a name="id577217"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">State</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::accumulate<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">State</span><span class="special">,</span> <span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">accumulate</span><span class="special">(</span>
+ <span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">State</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">initial_state</span><span class="special">,</span> <span class="identifier">F</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id577478"></a><p class="title"><b>Table 1.34. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>, <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">eN</span>
+ <span class="special">....</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e2</span><span class="special">,</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e1</span><span class="special">,</span><span class="identifier">initial_state</span><span class="special">)))</span></tt> must be a valid expression for
+ each element <tt class="computeroutput"><span class="identifier">e1</span></tt>
+ to <tt class="computeroutput"><span class="identifier">eN</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">initial_state</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Initial state
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput">boost::result_of<span class="special">&lt;</span><span class="identifier">F</span><span class="special">(</span><span class="identifier">E</span><span class="special">,</span><span class="identifier">S</span><span class="special">)&gt;::</span><span class="identifier">type</span></tt> is the return type of <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">,</span><span class="identifier">s</span><span class="special">)</span></tt>
+ for each element <tt class="computeroutput"><span class="identifier">e</span></tt>
+ of type <tt class="computeroutput"><span class="identifier">E</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>, and current state <tt class="computeroutput"><span class="identifier">s</span></tt> of type <tt class="computeroutput"><span class="identifier">S</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.iteration.functions.accumulate.expression_semantics"></a><h6>
+<a name="id577930"></a>
+ <a href="accumulate.html#fusion.algorithm.iteration.functions.accumulate.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">accumulate</span><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">initial_state</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Any type
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Equivalent to <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">eN</span> <span class="special">....</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e2</span><span class="special">,</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e1</span><span class="special">,</span><span class="identifier">initial_state</span><span class="special">)))</span></tt>
+ where <tt class="computeroutput"><span class="identifier">e1</span> <span class="special">...</span><span class="identifier">eN</span></tt> are the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<a name="fusion.algorithm.iteration.functions.accumulate.complexity"></a><h6>
+<a name="id578140"></a>
+ Complexity
+ </h6>
+<p>
+ Linear, exactly <tt class="computeroutput">result_of::size<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">value</span></tt> applications of <tt class="computeroutput"><span class="identifier">f</span></tt>.
+ </p>
+<a name="fusion.algorithm.iteration.functions.accumulate.header"></a><h6>
+<a name="id578237"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">iteration</span><span class="special">/</span><span class="identifier">accumulate</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">accumulate</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.iteration.functions.accumulate.example"></a><h6>
+<a name="id578407"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">make_string</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">result_type</span><span class="special">;</span>
+
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="keyword">operator</span><span class="special">()(</span><span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">t</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">str</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">str</span> <span class="special">+</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">lexical_cast</span><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;(</span><span class="identifier">t</span><span class="special">);</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+<span class="special">...</span>
+<span class="keyword">const</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>accumulate<span class="special">(</span><span class="identifier">vec</span><span class="special">,</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">(</span><span class="string">""</span><span class="special">),</span> <span class="identifier">make_string</span><span class="special">())</span> <span class="special">==</span> <span class="string">"12"</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="fold.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="for_each.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/iteration/functions/fold.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/iteration/functions/fold.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,199 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>fold</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="../functions.html" title="Functions">
+<link rel="next" href="accumulate.html" title="accumulate">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="accumulate.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.iteration.functions.fold"></a>fold</h5></div></div></div>
+<a name="fusion.algorithm.iteration.functions.fold.description"></a><h6>
+<a name="id575409"></a>
+ Description
+ </h6>
+<p>
+ For a sequence <tt class="computeroutput"><span class="identifier">Seq</span></tt>, initial
+ state, and binary function object or function pointer <tt class="computeroutput"><span class="identifier">f</span></tt>,
+ fold repeatedly applies binary <tt class="computeroutput"><span class="identifier">f</span></tt>
+ to each element of <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ and the previous state.
+ </p>
+<a name="fusion.algorithm.iteration.functions.fold.synopsis"></a><h6>
+<a name="id575489"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">State</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::fold<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">State</span><span class="special">,</span> <span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">fold</span><span class="special">(</span>
+ <span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">State</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">initial_state</span><span class="special">,</span> <span class="identifier">F</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id575748"></a><p class="title"><b>Table 1.33. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>,<tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">,</span><span class="identifier">s</span><span class="special">)</span></tt> must be a valid expression for
+ each element <tt class="computeroutput"><span class="identifier">e</span></tt>
+ in <tt class="computeroutput"><span class="identifier">seq</span></tt>, and current
+ state <tt class="computeroutput"><span class="identifier">s</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">initial_state</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Initial state
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput">boost::result_of<span class="special">&lt;</span><span class="identifier">F</span><span class="special">(</span><span class="identifier">E</span><span class="special">,</span><span class="identifier">S</span><span class="special">)&gt;::</span><span class="identifier">type</span></tt> is the return type of <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">,</span><span class="identifier">s</span><span class="special">)</span></tt>
+ for each element <tt class="computeroutput"><span class="identifier">e</span></tt>
+ of type <tt class="computeroutput"><span class="identifier">E</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>, and current state <tt class="computeroutput"><span class="identifier">s</span></tt> of type <tt class="computeroutput"><span class="identifier">S</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.iteration.functions.fold.expression_semantics"></a><h6>
+<a name="id576157"></a>
+ <a href="fold.html#fusion.algorithm.iteration.functions.fold.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">fold</span><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">initial_state</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Any type
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Equivalent to <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">eN</span> <span class="special">....</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e2</span><span class="special">,</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e1</span><span class="special">,</span><span class="identifier">initial_state</span><span class="special">)))</span></tt>
+ where <tt class="computeroutput"><span class="identifier">e1</span> <span class="special">...</span><span class="identifier">eN</span></tt> are the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<a name="fusion.algorithm.iteration.functions.fold.complexity"></a><h6>
+<a name="id576368"></a>
+ Complexity
+ </h6>
+<p>
+ Linear, exactly <tt class="computeroutput">result_of::size<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">value</span></tt> applications of <tt class="computeroutput"><span class="identifier">f</span></tt>.
+ </p>
+<a name="fusion.algorithm.iteration.functions.fold.header"></a><h6>
+<a name="id576463"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">iteration</span><span class="special">/</span><span class="identifier">fold</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">fold</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.iteration.functions.fold.example"></a><h6>
+<a name="id576633"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">make_string</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">result_type</span><span class="special">;</span>
+
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="keyword">operator</span><span class="special">()(</span><span class="keyword">const</span> <span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">t</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">str</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">str</span> <span class="special">+</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">lexical_cast</span><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;(</span><span class="identifier">t</span><span class="special">);</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+<span class="special">...</span>
+<span class="keyword">const</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>fold<span class="special">(</span><span class="identifier">vec</span><span class="special">,</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">(</span><span class="string">""</span><span class="special">),</span> <span class="identifier">make_string</span><span class="special">())</span> <span class="special">==</span> <span class="string">"12"</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="accumulate.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/iteration/functions/for_each.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/iteration/functions/for_each.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,175 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>for_each</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="accumulate.html" title="accumulate">
+<link rel="next" href="../metafunctions.html" title="Metafunctions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="accumulate.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.iteration.functions.for_each"></a>for_each</h5></div></div></div>
+<a name="fusion.algorithm.iteration.functions.for_each.description"></a><h6>
+<a name="id578909"></a>
+ Description
+ </h6>
+<p>
+ Applies a unary function object to each element of a sequence.
+ </p>
+<a name="fusion.algorithm.iteration.functions.for_each.synopsis"></a><h6>
+<a name="id578941"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::for_each<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">for_each</span><span class="special">(</span>
+ <span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">F</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id579144"></a><p class="title"><b>Table 1.35. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>, <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> must be a valid expression for
+ each element <tt class="computeroutput"><span class="identifier">e</span></tt>
+ in <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A unary <a href="../../../functional/concepts/reg_callable.html" title=" Regular Callable
+ Object">Regular
+ Callable Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.iteration.functions.for_each.expression_semantics"></a><h6>
+<a name="id579344"></a>
+ <a href="for_each.html#fusion.algorithm.iteration.functions.for_each.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+for_each<span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">void</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Calls <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> for each element <tt class="computeroutput"><span class="identifier">e</span></tt>
+ in <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<a name="fusion.algorithm.iteration.functions.for_each.complexity"></a><h6>
+<a name="id579502"></a>
+ Complexity
+ </h6>
+<p>
+ Linear, exactly <tt class="computeroutput">result_of::size<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">value</span></tt> applications of <tt class="computeroutput"><span class="identifier">f</span></tt>.
+ </p>
+<a name="fusion.algorithm.iteration.functions.for_each.header"></a><h6>
+<a name="id579598"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">iteration</span><span class="special">/</span><span class="identifier">for_each</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">for_each</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.iteration.functions.for_each.example"></a><h6>
+<a name="id579768"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">increment</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">void</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">t</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="special">++</span><span class="identifier">t</span><span class="special">;</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+<span class="special">...</span>
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
+for_each<span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> <span class="identifier">increment</span><span class="special">());</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">vec</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="accumulate.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/iteration/metafunctions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/iteration/metafunctions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,44 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Metafunctions</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../iteration.html" title="Iteration">
+<link rel="prev" href="functions/for_each.html" title="for_each">
+<link rel="next" href="metafunctions/fold.html" title="fold">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/for_each.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../iteration.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/fold.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.algorithm.iteration.metafunctions"></a>Metafunctions</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">fold</span></dt>
+<dt><span class="section">accumulate</span></dt>
+<dt><span class="section">for_each</span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/for_each.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../iteration.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/fold.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/iteration/metafunctions/accumulate.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/iteration/metafunctions/accumulate.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,177 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>accumulate</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="fold.html" title="fold">
+<link rel="next" href="for_each.html" title="for_each">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="fold.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="for_each.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.iteration.metafunctions.accumulate"></a>accumulate</h5></div></div></div>
+<a name="fusion.algorithm.iteration.metafunctions.accumulate.description"></a><h6>
+<a name="id581144"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of accumulate.
+ </p>
+<a name="fusion.algorithm.iteration.metafunctions.accumulate.synopsis"></a><h6>
+<a name="id581193"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">State</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">accumulate</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id581329"></a><p class="title"><b>Table 1.37. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to iterate
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">State</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The initial state for the first application of <tt class="computeroutput"><span class="identifier">F</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">F</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput">boost::result_of<span class="special">&lt;</span><span class="identifier">F</span><span class="special">(</span><span class="identifier">E</span><span class="special">,</span><span class="identifier">S</span><span class="special">)&gt;::</span><span class="identifier">type</span></tt> is the return type of <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">,</span><span class="identifier">s</span><span class="special">)</span></tt>
+ for each element <tt class="computeroutput"><span class="identifier">e</span></tt>
+ of type <tt class="computeroutput"><span class="identifier">E</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>, and current state <tt class="computeroutput"><span class="identifier">s</span></tt> of type <tt class="computeroutput"><span class="identifier">S</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The operation to be applied on forward traversal
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.iteration.metafunctions.accumulate.expression_semantics"></a><h6>
+<a name="id581681"></a>
+ <a href="accumulate.html#fusion.algorithm.iteration.metafunctions.accumulate.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::accumulate<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">State</span><span class="special">,</span> <span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Any type
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the result of applying
+ <tt class="computeroutput"><span class="identifier">accumulate</span></tt> to a sequence
+ of type <tt class="computeroutput"><span class="identifier">Sequence</span></tt>, with
+ an initial state of type <tt class="computeroutput"><span class="identifier">State</span></tt>
+ and binary function object or function pointer of type <tt class="computeroutput"><span class="identifier">F</span></tt>.
+ </p>
+<a name="fusion.algorithm.iteration.metafunctions.accumulate.complexity"></a><h6>
+<a name="id581858"></a>
+ Complexity
+ </h6>
+<p>
+ Linear, exactly <tt class="computeroutput">result_of::size<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">value</span></tt> applications of <tt class="computeroutput"><span class="identifier">F</span></tt>.
+ </p>
+<a name="fusion.algorithm.iteration.metafunctions.accumulate.header"></a><h6>
+<a name="id581954"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">iteration</span><span class="special">/</span><span class="identifier">accumulate</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">accumulate</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="fold.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="for_each.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/iteration/metafunctions/fold.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/iteration/metafunctions/fold.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,177 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>fold</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="../metafunctions.html" title="Metafunctions">
+<link rel="next" href="accumulate.html" title="accumulate">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="accumulate.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.iteration.metafunctions.fold"></a>fold</h5></div></div></div>
+<a name="fusion.algorithm.iteration.metafunctions.fold.description"></a><h6>
+<a name="id580148"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of fold.
+ </p>
+<a name="fusion.algorithm.iteration.metafunctions.fold.synopsis"></a><h6>
+<a name="id580198"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">State</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">fold</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id580333"></a><p class="title"><b>Table 1.36. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to iterate
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">State</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The initial state for the first application of <tt class="computeroutput"><span class="identifier">F</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">F</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput">boost::result_of<span class="special">&lt;</span><span class="identifier">F</span><span class="special">(</span><span class="identifier">E</span><span class="special">,</span><span class="identifier">S</span><span class="special">)&gt;::</span><span class="identifier">type</span></tt> is the return type of <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">,</span><span class="identifier">s</span><span class="special">)</span></tt>
+ for each element <tt class="computeroutput"><span class="identifier">e</span></tt>
+ of type <tt class="computeroutput"><span class="identifier">E</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>, and current state <tt class="computeroutput"><span class="identifier">s</span></tt> of type <tt class="computeroutput"><span class="identifier">S</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The operation to be applied on forward traversal
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.iteration.metafunctions.fold.expression_semantics"></a><h6>
+<a name="id580684"></a>
+ <a href="fold.html#fusion.algorithm.iteration.metafunctions.fold.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::fold<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">State</span><span class="special">,</span> <span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Any type
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the result of applying
+ <tt class="computeroutput"><span class="identifier">fold</span></tt> to a sequence of
+ type <tt class="computeroutput"><span class="identifier">Sequence</span></tt>, with an
+ initial state of type <tt class="computeroutput"><span class="identifier">State</span></tt>
+ and binary function object or function pointer of type <tt class="computeroutput"><span class="identifier">F</span></tt>.
+ </p>
+<a name="fusion.algorithm.iteration.metafunctions.fold.complexity"></a><h6>
+<a name="id580857"></a>
+ Complexity
+ </h6>
+<p>
+ Linear, exactly <tt class="computeroutput">result_of::size<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">value</span></tt> applications of <tt class="computeroutput"><span class="identifier">F</span></tt>.
+ </p>
+<a name="fusion.algorithm.iteration.metafunctions.fold.header"></a><h6>
+<a name="id580954"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">iteration</span><span class="special">/</span><span class="identifier">fold</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">fold</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="accumulate.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/iteration/metafunctions/for_each.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/iteration/metafunctions/for_each.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,159 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>for_each</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="accumulate.html" title="accumulate">
+<link rel="next" href="../../query.html" title="Query">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="accumulate.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../query.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.iteration.metafunctions.for_each"></a>for_each</h5></div></div></div>
+<p>
+ A metafunction returning the result type of applying for_each to a sequence. The
+ return type of for_each is always <tt class="computeroutput"><span class="keyword">void</span></tt>.
+ </p>
+<a name="fusion.algorithm.iteration.metafunctions.for_each.description"></a><h6>
+<a name="id582199"></a>
+ Description
+ </h6>
+<a name="fusion.algorithm.iteration.metafunctions.for_each.synopsis"></a><h6>
+<a name="id582226"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span>
+<span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">for_each</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">void</span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id582348"></a><p class="title"><b>Table 1.38. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">F</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.iteration.metafunctions.for_each.expression_semantics"></a><h6>
+<a name="id582489"></a>
+ <a href="for_each.html#fusion.algorithm.iteration.metafunctions.for_each.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::for_each<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">void</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the return type of
+ for_each for a sequence of type
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt> and a unary
+ function object <tt class="computeroutput"><span class="identifier">F</span></tt>. The
+ return type is always <tt class="computeroutput"><span class="keyword">void</span></tt>.
+ </p>
+<a name="fusion.algorithm.iteration.metafunctions.for_each.complexity"></a><h6>
+<a name="id582671"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.iteration.metafunctions.for_each.header"></a><h6>
+<a name="id582701"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">iteration</span><span class="special">/</span><span class="identifier">for_each</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">for_each</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="accumulate.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../query.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/query.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/query.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,54 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Query</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../algorithm.html" title="Algorithm">
+<link rel="prev" href="iteration/metafunctions/for_each.html" title="for_each">
+<link rel="next" href="query/functions.html" title="Functions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="iteration/metafunctions/for_each.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithm.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="query/functions.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.algorithm.query"></a>Query</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
+</dl></div>
+<p>
+ The query algorithms provide support for searching and analyzing sequences.
+ </p>
+<a name="fusion.algorithm.query.header"></a><h4>
+<a name="id582899"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">query</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">query</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="iteration/metafunctions/for_each.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithm.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="query/functions.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/query/functions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/query/functions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,48 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Functions</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../query.html" title="Query">
+<link rel="prev" href="../query.html" title="Query">
+<link rel="next" href="functions/any.html" title="any">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../query.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../query.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/any.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.algorithm.query.functions"></a>Functions</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">any</span></dt>
+<dt><span class="section">all</span></dt>
+<dt><span class="section">none</span></dt>
+<dt><span class="section">find</span></dt>
+<dt><span class="section">find_if</span></dt>
+<dt><span class="section">count</span></dt>
+<dt><span class="section">count_if</span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../query.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../query.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/any.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/all.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/all.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,178 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>all</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="any.html" title="any">
+<link rel="next" href="none.html" title="none">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="any.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="none.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.query.functions.all"></a>all</h5></div></div></div>
+<a name="fusion.algorithm.query.functions.all.description"></a><h6>
+<a name="id584357"></a>
+ Description
+ </h6>
+<p>
+ For a sequence <tt class="computeroutput"><span class="identifier">seq</span></tt> and
+ unary function object <tt class="computeroutput"><span class="identifier">f</span></tt>,
+ <tt class="computeroutput"><span class="identifier">all</span></tt> returns true if
+ <tt class="computeroutput"><span class="identifier">f</span></tt> returns true for every
+ element of <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<a name="fusion.algorithm.query.functions.all.synopsis"></a><h6>
+<a name="id584447"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::all<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span><span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">all</span><span class="special">(</span>
+ <span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">F</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id584641"></a><p class="title"><b>Table 1.40. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>, <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> is a valid expression, convertible
+ to <tt class="computeroutput"><span class="keyword">bool</span></tt>, for every
+ element <tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to search
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A unary function object
+ </p>
+ </td>
+<td>
+ <p>
+ The search predicate
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.query.functions.all.expression_semantics"></a><h6>
+<a name="id584842"></a>
+ <a href="all.html#fusion.algorithm.query.functions.all.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+all<span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns true if and only
+ if <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt>
+ evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt> for every
+ element <tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<a name="fusion.algorithm.query.functions.all.complexity"></a><h6>
+<a name="id585012"></a>
+ Complexity
+ </h6>
+<p>
+ Linear. At most <tt class="computeroutput">result_of::size<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">value</span></tt> comparisons.
+ </p>
+<a name="fusion.algorithm.query.functions.all.header"></a><h6>
+<a name="id585094"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">query</span><span class="special">/</span><span class="identifier">all</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">all</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.query.functions.all.example"></a><h6>
+<a name="id585263"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">odd</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">T</span> <span class="identifier">t</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">t</span> <span class="special">%</span> <span class="number">2</span><span class="special">;</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+<span class="special">...</span>
+<span class="identifier">assert</span><span class="special">(</span>all<span class="special">(</span>make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">3</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
+<span class="identifier">assert</span><span class="special">(!</span>all<span class="special">(</span>make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="any.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="none.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/any.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/any.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,178 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>any</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="../functions.html" title="Functions">
+<link rel="next" href="all.html" title="all">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="all.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.query.functions.any"></a>any</h5></div></div></div>
+<a name="fusion.algorithm.query.functions.any.description"></a><h6>
+<a name="id583097"></a>
+ Description
+ </h6>
+<p>
+ For a sequence <tt class="computeroutput"><span class="identifier">seq</span></tt> and
+ unary function object <tt class="computeroutput"><span class="identifier">f</span></tt>,
+ <tt class="computeroutput"><span class="identifier">any</span></tt> returns true if
+ <tt class="computeroutput"><span class="identifier">f</span></tt> returns true for at
+ least one element of <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<a name="fusion.algorithm.query.functions.any.synopsis"></a><h6>
+<a name="id583186"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::any<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span><span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">any</span><span class="special">(</span>
+ <span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">F</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id583380"></a><p class="title"><b>Table 1.39. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>, <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> must be a valid expression, convertible
+ to <tt class="computeroutput"><span class="keyword">bool</span></tt>, for each
+ element <tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to search
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A unary function object
+ </p>
+ </td>
+<td>
+ <p>
+ The search predicate
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.query.functions.any.expression_semantics"></a><h6>
+<a name="id583581"></a>
+ <a href="any.html#fusion.algorithm.query.functions.any.expression_semantics">Expression
+ semantics</a>
+ </h6>
+<pre class="programlisting">
+any<span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns true if and only
+ if <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt>
+ evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt> for some
+ element <tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<a name="fusion.algorithm.query.functions.any.complexity"></a><h6>
+<a name="id583751"></a>
+ Complexity
+ </h6>
+<p>
+ Linear. At most <tt class="computeroutput">result_of::size<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">value</span></tt> comparisons.
+ </p>
+<a name="fusion.algorithm.query.functions.any.header"></a><h6>
+<a name="id583833"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">query</span><span class="special">/</span><span class="identifier">any</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">any</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.query.functions.any.example"></a><h6>
+<a name="id584001"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">odd</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">T</span> <span class="identifier">t</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">t</span> <span class="special">%</span> <span class="number">2</span><span class="special">;</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+<span class="special">...</span>
+<span class="identifier">assert</span><span class="special">(</span>any<span class="special">(</span>make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
+<span class="identifier">assert</span><span class="special">(!</span>any<span class="special">(</span>make_vector<span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">4</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="all.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/count.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/count.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,165 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>count</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="find_if.html" title="find_if">
+<link rel="next" href="count_if.html" title="count_if">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="find_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="count_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.query.functions.count"></a>count</h5></div></div></div>
+<a name="fusion.algorithm.query.functions.count.description"></a><h6>
+<a name="id589135"></a>
+ Description
+ </h6>
+<p>
+ Returns the number of elements of a given type within a sequence.
+ </p>
+<a name="fusion.algorithm.query.functions.count.synopsis"></a><h6>
+<a name="id589167"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::count<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">count</span><span class="special">(</span>
+ <span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">t</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id589374"></a><p class="title"><b>Table 1.44. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>, <tt class="computeroutput"><span class="identifier">e</span> <span class="special">==</span> <span class="identifier">t</span></tt>
+ must be a valid expression, convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>,
+ for each element <tt class="computeroutput"><span class="identifier">e</span></tt>
+ in <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to search
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The type to count
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.query.functions.count.expression_semantics"></a><h6>
+<a name="id589572"></a>
+ <a href="count.html#fusion.algorithm.query.functions.count.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+count<span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">t</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">int</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the number of elements
+ of type <tt class="computeroutput"><span class="identifier">T</span></tt> and equal to
+ <tt class="computeroutput"><span class="identifier">t</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<a name="fusion.algorithm.query.functions.count.complexity"></a><h6>
+<a name="id589716"></a>
+ Complexity
+ </h6>
+<p>
+ Linear. At most <tt class="computeroutput">result_of::size<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">value</span></tt> comparisons.
+ </p>
+<a name="fusion.algorithm.query.functions.count.header"></a><h6>
+<a name="id589800"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">query</span><span class="special">/</span><span class="identifier">count</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">count</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.query.functions.count.example"></a><h6>
+<a name="id589968"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">const</span> vector<span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1.0</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>count<span class="special">(</span><span class="identifier">vec</span><span class="special">,</span><span class="number">2</span><span class="special">)</span> <span class="special">==</span> <span class="number">1</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="find_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="count_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/count_if.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/count_if.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,164 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>count_if</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="count.html" title="count">
+<link rel="next" href="../metafunctions.html" title="Metafunctions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="count.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.query.functions.count_if"></a>count_if</h5></div></div></div>
+<a name="fusion.algorithm.query.functions.count_if.description"></a><h6>
+<a name="id590186"></a>
+ Description
+ </h6>
+<p>
+ Returns the number of elements within a sequence with a type for which
+ a given unary function object evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt>.
+ </p>
+<a name="fusion.algorithm.query.functions.count_if.synopsis"></a><h6>
+<a name="id590230"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::count_if<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">count_if</span><span class="special">(</span>
+ <span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">F</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id590427"></a><p class="title"><b>Table 1.45. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>, <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> is a valid expression, convertible
+ to <tt class="computeroutput"><span class="keyword">bool</span></tt>, for each
+ element <tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to search
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A unary function object
+ </p>
+ </td>
+<td>
+ <p>
+ The search predicate
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.query.functions.count_if.expression_semantics"></a><h6>
+<a name="id590628"></a>
+ <a href="count_if.html#fusion.algorithm.query.functions.count_if.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+count_if<span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">)</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">int</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the number of elements
+ in <tt class="computeroutput"><span class="identifier">seq</span></tt> where <tt class="computeroutput"><span class="identifier">f</span></tt> evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt>.
+ </p>
+<a name="fusion.algorithm.query.functions.count_if.complexity"></a><h6>
+<a name="id590772"></a>
+ Complexity
+ </h6>
+<p>
+ Linear. At most <tt class="computeroutput">result_of::size<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">value</span></tt> comparisons.
+ </p>
+<a name="fusion.algorithm.query.functions.count_if.header"></a><h6>
+<a name="id590855"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">query</span><span class="special">/</span><span class="identifier">count_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">count_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.query.functions.count_if.example"></a><h6>
+<a name="id591025"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">const</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>count_if<span class="special">(</span><span class="identifier">vec</span><span class="special">,</span><span class="identifier">odd</span><span class="special">())</span> <span class="special">==</span> <span class="number">2</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="count.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/find.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/find.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,170 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>find</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="none.html" title="none">
+<link rel="next" href="find_if.html" title="find_if">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="none.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="find_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.query.functions.find"></a>find</h5></div></div></div>
+<a name="fusion.algorithm.query.functions.find.description"></a><h6>
+<a name="id586922"></a>
+ Description
+ </h6>
+<p>
+ Finds the first element of a given type within a sequence.
+ </p>
+<a name="fusion.algorithm.query.functions.find.synopsis"></a><h6>
+<a name="id586954"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="emphasis"><em>unspecified</em></span> <span class="identifier">find</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="emphasis"><em>unspecified</em></span> <span class="identifier">find</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id587152"></a><p class="title"><b>Table 1.42. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to search
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The type to search for
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.query.functions.find.expression_semantics"></a><h6>
+<a name="id587292"></a>
+ <a href="find.html#fusion.algorithm.query.functions.find.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+find<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">)</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of the same iterator
+ category as the iterators of <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns an iterator to the
+ first element of <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ of type <tt class="computeroutput"><span class="identifier">T</span></tt>, or <tt class="computeroutput">end<span class="special">(</span><span class="identifier">seq</span><span class="special">)</span></tt> if there is no such element. Equivalent
+ to <tt class="computeroutput">find_if<span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><span class="identifier">_</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">)</span></tt>
+ </p>
+<a name="fusion.algorithm.query.functions.find.complexity"></a><h6>
+<a name="id587545"></a>
+ Complexity
+ </h6>
+<p>
+ Linear. At most <tt class="computeroutput">result_of::size<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">value</span></tt> comparisons.
+ </p>
+<a name="fusion.algorithm.query.functions.find.header"></a><h6>
+<a name="id587629"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">query</span><span class="special">/</span><span class="identifier">find</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">find</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.query.functions.find.example"></a><h6>
+<a name="id587798"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">const</span> vector<span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">(</span><span class="char">'a'</span><span class="special">,</span><span class="char">'0'</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(*</span>find<span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> <span class="char">'0'</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>find<span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> end<span class="special">(</span><span class="identifier">vec</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="none.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="find_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/find_if.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/find_if.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,169 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>find_if</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="find.html" title="find">
+<link rel="next" href="count.html" title="count">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="find.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="count.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.query.functions.find_if"></a>find_if</h5></div></div></div>
+<p>
+ Finds the first element within a sequence with a type for which a given
+ <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
+ Lambda Expression</a> evaluates to <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>.
+ </p>
+<a name="fusion.algorithm.query.functions.find_if.description"></a><h6>
+<a name="id588125"></a>
+ Description
+ </h6>
+<a name="fusion.algorithm.query.functions.find_if.synopsis"></a><h6>
+<a name="id588151"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="emphasis"><em>unspecified</em></span> <span class="identifier">find_if</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="emphasis"><em>unspecified</em></span> <span class="identifier">find_if</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id588352"></a><p class="title"><b>Table 1.43. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to search
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">F</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A unary <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
+ Lambda Expression</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The search predicate
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.query.functions.find_if.expression_semantics"></a><h6>
+<a name="id588498"></a>
+ <a href="find_if.html#fusion.algorithm.query.functions.find_if.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+find_if<span class="special">&lt;</span><span class="identifier">F</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">)</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: An iterator of the same
+ iterator category as the iterators of <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the first element
+ of <tt class="computeroutput"><span class="identifier">seq</span></tt> for which <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
+ Lambda Expression</a> <tt class="computeroutput"><span class="identifier">F</span></tt>
+ evaluates to <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>, or <tt class="computeroutput">end<span class="special">(</span><span class="identifier">seq</span><span class="special">)</span></tt>
+ if there is no such element.
+ </p>
+<a name="fusion.algorithm.query.functions.find_if.complexity"></a><h6>
+<a name="id588707"></a>
+ Complexity
+ </h6>
+<p>
+ Linear. At most <tt class="computeroutput">result_of::size<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">value</span></tt> comparisons.
+ </p>
+<p>
+ /algorithm/query/find_if.hpp&gt;
+ </p>
+<a name="fusion.algorithm.query.functions.find_if.example"></a><h6>
+<a name="id588796"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">const</span> vector<span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1.0</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(*</span>find_if<span class="special">&lt;</span><span class="identifier">is_integral</span><span class="special">&lt;</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">&gt;</span> <span class="special">&gt;(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> <span class="number">2</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>find_if<span class="special">&lt;</span><span class="identifier">is_class</span><span class="special">&lt;</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">&gt;</span> <span class="special">&gt;(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> end<span class="special">(</span><span class="identifier">vec</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="find.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="count.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/none.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/query/functions/none.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,178 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>none</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="all.html" title="all">
+<link rel="next" href="find.html" title="find">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="all.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="find.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.query.functions.none"></a>none</h5></div></div></div>
+<a name="fusion.algorithm.query.functions.none.description"></a><h6>
+<a name="id585617"></a>
+ Description
+ </h6>
+<p>
+ For a sequence <tt class="computeroutput"><span class="identifier">seq</span></tt> and
+ unary function object <tt class="computeroutput"><span class="identifier">f</span></tt>,
+ <tt class="computeroutput"><span class="identifier">none</span></tt> returns true if
+ <tt class="computeroutput"><span class="identifier">f</span></tt> returns false for every
+ element of <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<a name="fusion.algorithm.query.functions.none.synopsis"></a><h6>
+<a name="id585707"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::none<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span><span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">none</span><span class="special">(</span>
+ <span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">F</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id585901"></a><p class="title"><b>Table 1.41. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>, <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> is a valid expression, convertible
+ to <tt class="computeroutput"><span class="keyword">bool</span></tt>, for every
+ element <tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to search
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A unary function object
+ </p>
+ </td>
+<td>
+ <p>
+ The search predicate
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.query.functions.none.expression_semantics"></a><h6>
+<a name="id586103"></a>
+ <a href="none.html#fusion.algorithm.query.functions.none.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+none<span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns true if and only
+ if <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt>
+ evaluates to <tt class="computeroutput"><span class="keyword">false</span></tt> for every
+ element <tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>. Result equivalent to <tt class="computeroutput"><span class="special">!</span><span class="identifier">any</span><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">)</span></tt>.
+ </p>
+<a name="fusion.algorithm.query.functions.none.complexity"></a><h6>
+<a name="id586315"></a>
+ Complexity
+ </h6>
+<p>
+ Linear. At most <tt class="computeroutput">result_of::size<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">value</span></tt> comparisons.
+ </p>
+<a name="fusion.algorithm.query.functions.none.header"></a><h6>
+<a name="id586399"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">query</span><span class="special">/</span><span class="identifier">none</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">none</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.query.functions.none.example"></a><h6>
+<a name="id586567"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">odd</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">T</span> <span class="identifier">t</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">t</span> <span class="special">%</span> <span class="number">2</span><span class="special">;</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+<span class="special">...</span>
+<span class="identifier">assert</span><span class="special">(</span>none<span class="special">(</span>make_vector<span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">4</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
+<span class="identifier">assert</span><span class="special">(!</span>none<span class="special">(</span>make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="all.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="find.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,48 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Metafunctions</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../query.html" title="Query">
+<link rel="prev" href="functions/count_if.html" title="count_if">
+<link rel="next" href="metafunctions/any.html" title="any">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/count_if.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../query.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/any.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.algorithm.query.metafunctions"></a>Metafunctions</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">any</span></dt>
+<dt><span class="section">all</span></dt>
+<dt><span class="section">none</span></dt>
+<dt><span class="section">find</span></dt>
+<dt><span class="section">find_if</span></dt>
+<dt><span class="section">count</span></dt>
+<dt><span class="section">count_if</span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/count_if.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../query.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/any.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/all.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/all.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,162 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>all</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="any.html" title="any">
+<link rel="next" href="none.html" title="none">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="any.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="none.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.query.metafunctions.all"></a>all</h5></div></div></div>
+<a name="fusion.algorithm.query.metafunctions.all.description"></a><h6>
+<a name="id591988"></a>
+ Description
+ </h6>
+<p>
+ A metafunction returning the result type of all.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.all.synopsis"></a><h6>
+<a name="id592037"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">all</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">bool</span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id592158"></a><p class="title"><b>Table 1.47. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">F</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of unary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.query.metafunctions.all.expression_semantics"></a><h6>
+<a name="id592306"></a>
+ <a href="all.html#fusion.algorithm.query.metafunctions.all.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::all<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the return type of
+ all
+ given a sequence of type <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ and a unary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a> of type <tt class="computeroutput"><span class="identifier">F</span></tt>.
+ The return type is always <tt class="computeroutput"><span class="keyword">bool</span></tt>.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.all.complexity"></a><h6>
+<a name="id592495"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.all.header"></a><h6>
+<a name="id592525"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">query</span><span class="special">/</span><span class="identifier">all</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">all</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="any.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="none.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/any.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/any.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,162 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>any</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="../metafunctions.html" title="Metafunctions">
+<link rel="next" href="all.html" title="all">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="all.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.query.metafunctions.any"></a>any</h5></div></div></div>
+<a name="fusion.algorithm.query.metafunctions.any.description"></a><h6>
+<a name="id591260"></a>
+ Description
+ </h6>
+<p>
+ A metafunction returning the result type of any.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.any.synopsis"></a><h6>
+<a name="id591310"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">any</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">bool</span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id591432"></a><p class="title"><b>Table 1.46. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">F</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of unary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.query.metafunctions.any.expression_semantics"></a><h6>
+<a name="id591582"></a>
+ <a href="any.html#fusion.algorithm.query.metafunctions.any.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::any<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the return type of
+ any
+ given a sequence of type <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ and a unary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a> of type <tt class="computeroutput"><span class="identifier">F</span></tt>.
+ The return type is always <tt class="computeroutput"><span class="keyword">bool</span></tt>.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.any.complexity"></a><h6>
+<a name="id591770"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.any.header"></a><h6>
+<a name="id591800"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">query</span><span class="special">/</span><span class="identifier">any</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">any</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="all.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/count.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/count.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,157 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>count</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="find_if.html" title="find_if">
+<link rel="next" href="count_if.html" title="count_if">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="find_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="count_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.query.metafunctions.count"></a>count</h5></div></div></div>
+<a name="fusion.algorithm.query.metafunctions.count.description"></a><h6>
+<a name="id595013"></a>
+ Description
+ </h6>
+<p>
+ A metafunction that returns the result type of <tt class="computeroutput"><span class="identifier">count</span></tt>
+ given the sequence and search types.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.count.synopsis"></a><h6>
+<a name="id595058"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">count</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">int</span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id595179"></a><p class="title"><b>Table 1.51. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ heading Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.query.metafunctions.count.expression_semantics"></a><h6>
+<a name="id595317"></a>
+ <a href="count.html#fusion.algorithm.query.metafunctions.count.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::count<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">int</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the return type of
+ count. The return type is always
+ <tt class="computeroutput"><span class="keyword">int</span></tt>.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.count.complexity"></a><h6>
+<a name="id595462"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.count.header"></a><h6>
+<a name="id595491"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">query</span><span class="special">/</span><span class="identifier">count</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">count</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="find_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="count_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/count_if.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/count_if.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,157 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>count_if</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="count.html" title="count">
+<link rel="next" href="../../transformation.html" title="Transformation">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="count.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../transformation.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.query.metafunctions.count_if"></a>count_if</h5></div></div></div>
+<a name="fusion.algorithm.query.metafunctions.count_if.description"></a><h6>
+<a name="id595681"></a>
+ Description
+ </h6>
+<p>
+ A metafunction that returns the result type of <tt class="computeroutput"><span class="identifier">count_if</span></tt>
+ given the sequence and predicate types.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.count_if.synopsis"></a><h6>
+<a name="id595725"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Pred</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">count_if</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">int</span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id595847"></a><p class="title"><b>Table 1.52. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Pred</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A unary function object
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.query.metafunctions.count_if.expression_semantics"></a><h6>
+<a name="id595988"></a>
+ <a href="count_if.html#fusion.algorithm.query.metafunctions.count_if.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::count_if<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">int</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the return type of
+ count_if. The return type is
+ always <tt class="computeroutput"><span class="keyword">int</span></tt>.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.count_if.complexity"></a><h6>
+<a name="id596144"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.count_if.header"></a><h6>
+<a name="id596174"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">query</span><span class="special">/</span><span class="identifier">count_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">count_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="count.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../transformation.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/find.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/find.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,159 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>find</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="none.html" title="none">
+<link rel="next" href="find_if.html" title="find_if">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="none.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="find_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.query.metafunctions.find"></a>find</h5></div></div></div>
+<a name="fusion.algorithm.query.metafunctions.find.description"></a><h6>
+<a name="id593442"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of <tt class="computeroutput"><span class="identifier">find</span></tt>,
+ given the sequence and search types.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.find.synopsis"></a><h6>
+<a name="id593486"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">find</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id593605"></a><p class="title"><b>Table 1.49. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.query.metafunctions.find.expression_semantics"></a><h6>
+<a name="id593745"></a>
+ <a href="find.html#fusion.algorithm.query.metafunctions.find.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::find<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of the same iterator
+ category as the iterators of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns an iterator to the
+ first element of type <tt class="computeroutput"><span class="identifier">T</span></tt>
+ in <tt class="computeroutput"><span class="identifier">Sequence</span></tt>, or <tt class="computeroutput">result_of::end<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ if there is no such element.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.find.complexity"></a><h6>
+<a name="id593948"></a>
+ Complexity
+ </h6>
+<p>
+ Linear, at most <tt class="computeroutput">result_of::size<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">value</span></tt> comparisons.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.find.header"></a><h6>
+<a name="id594031"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">query</span><span class="special">/</span><span class="identifier">find</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">find</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="none.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="find_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/find_if.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/find_if.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,160 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>find_if</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="find.html" title="find">
+<link rel="next" href="count.html" title="count">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="find.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="count.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.query.metafunctions.find_if"></a>find_if</h5></div></div></div>
+<a name="fusion.algorithm.query.metafunctions.find_if.description"></a><h6>
+<a name="id594223"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of <tt class="computeroutput"><span class="identifier">find_if</span></tt>
+ given the sequence and predicate types.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.find_if.synopsis"></a><h6>
+<a name="id594268"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Pred</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">find_if</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id594387"></a><p class="title"><b>Table 1.50. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Pred</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
+ Lambda Expression</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's arguments
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.query.metafunctions.find_if.expression_semantics"></a><h6>
+<a name="id594535"></a>
+ <a href="find_if.html#fusion.algorithm.query.metafunctions.find_if.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::find_if<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of the same iterator
+ category as the iterators of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns an iterator to the
+ first element in <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ for which <tt class="computeroutput"><span class="identifier">Pred</span></tt> evaluates
+ to true. Returns <tt class="computeroutput">result_of::end<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span></tt> if there is no such element.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.find_if.complexity"></a><h6>
+<a name="id594741"></a>
+ Complexity
+ </h6>
+<p>
+ Linear. At most <tt class="computeroutput">result_of::size<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">value</span></tt> comparisons.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.find_if.header"></a><h6>
+<a name="id594824"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">query</span><span class="special">/</span><span class="identifier">find_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">find_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="find.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="count.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/none.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/query/metafunctions/none.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,162 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>none</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="all.html" title="all">
+<link rel="next" href="find.html" title="find">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="all.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="find.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.query.metafunctions.none"></a>none</h5></div></div></div>
+<a name="fusion.algorithm.query.metafunctions.none.description"></a><h6>
+<a name="id592713"></a>
+ Description
+ </h6>
+<p>
+ A metafunction returning the result type of none.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.none.synopsis"></a><h6>
+<a name="id592762"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">none</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">bool</span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id592884"></a><p class="title"><b>Table 1.48. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">F</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of unary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.query.metafunctions.none.expression_semantics"></a><h6>
+<a name="id593031"></a>
+ <a href="none.html#fusion.algorithm.query.metafunctions.none.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::none<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the return type of
+ none
+ given a sequence of type <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ and a unary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a> of type <tt class="computeroutput"><span class="identifier">F</span></tt>.
+ The return type is always <tt class="computeroutput"><span class="keyword">bool</span></tt>.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.none.complexity"></a><h6>
+<a name="id593220"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.query.metafunctions.none.header"></a><h6>
+<a name="id593250"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">query</span><span class="special">/</span><span class="identifier">none</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">none</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="all.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="find.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,67 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Transformation</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../algorithm.html" title="Algorithm">
+<link rel="prev" href="query/metafunctions/count_if.html" title="count_if">
+<link rel="next" href="transformation/functions.html" title="Functions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="query/metafunctions/count_if.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithm.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="transformation/functions.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.algorithm.transformation"></a>Transformation</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
+</dl></div>
+<p>
+ The transformation algorithms create new sequences out of existing sequences
+ by performing some sort of transformation. In reality the new sequences are
+ views onto the data in the original sequences.
+ </p>
+<div class="note"><table border="0" summary="Note">
+<tr>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../doc/html/images/note.png"></td>
+<th align="left">Note</th>
+</tr>
+<tr><td colspan="2" align="left" valign="top"><p>
+ As the transformation algorithms return views onto their input arguments,
+ it is important that the lifetime of the input arguments is greater than
+ the period during which you wish to use the results.
+ </p></td></tr>
+</table></div>
+<a name="fusion.algorithm.transformation.header"></a><h4>
+<a name="id596386"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="query/metafunctions/count_if.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithm.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="transformation/functions.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,60 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Functions</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../transformation.html" title="Transformation">
+<link rel="prev" href="../transformation.html" title="Transformation">
+<link rel="next" href="functions/filter.html" title="filter">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../transformation.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../transformation.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/filter.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.algorithm.transformation.functions"></a>Functions</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">filter</span></dt>
+<dt><span class="section">filter_if</span></dt>
+<dt><span class="section">transform</span></dt>
+<dt><span class="section">replace</span></dt>
+<dt><span class="section">replace_if</span></dt>
+<dt><span class="section">remove</span></dt>
+<dt><span class="section">remove_if</span></dt>
+<dt><span class="section">reverse</span></dt>
+<dt><span class="section">clear</span></dt>
+<dt><span class="section">erase</span></dt>
+<dt><span class="section">erase_key</span></dt>
+<dt><span class="section">insert</span></dt>
+<dt><span class="section">insert_range</span></dt>
+<dt><span class="section">join</span></dt>
+<dt><span class="section">zip</span></dt>
+<dt><span class="section">pop_back</span></dt>
+<dt><span class="section">pop_front</span></dt>
+<dt><span class="section">push_back</span></dt>
+<dt><span class="section">push_front</span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../transformation.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../transformation.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/filter.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/clear.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/clear.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,141 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>clear</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="reverse.html" title="reverse">
+<link rel="next" href="erase.html" title="erase">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="reverse.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="erase.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.clear"></a>clear</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.clear.description"></a><h6>
+<a name="id605983"></a>
+ Description
+ </h6>
+<p>
+ clear returns an empty sequence.
+ </p>
+<a name="fusion.algorithm.transformation.functions.clear.synposis"></a><h6>
+<a name="id606032"></a>
+ Synposis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::clear<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">clear</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id606189"></a><p class="title"><b>Table 1.62. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.clear.expression_semantics"></a><h6>
+<a name="id606293"></a>
+ <a href="clear.html#fusion.algorithm.transformation.functions.clear.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+clear<span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Expression Semantics</b></span>: Returns a sequence
+ with no elements.
+ </p>
+<a name="fusion.algorithm.transformation.functions.clear.complexity"></a><h6>
+<a name="id606391"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.transformation.functions.clear.header"></a><h6>
+<a name="id606422"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">clear</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">clear</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.clear.example"></a><h6>
+<a name="id606592"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">assert</span><span class="special">(</span>clear<span class="special">(</span>make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">))</span> <span class="special">==</span> make_vector<span class="special">());</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="reverse.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="erase.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/erase.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/erase.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,209 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>erase</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="clear.html" title="clear">
+<link rel="next" href="erase_key.html" title="erase_key">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="clear.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="erase_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.erase"></a>erase</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.erase.description"></a><h6>
+<a name="id606756"></a>
+ Description
+ </h6>
+<p>
+ Returns a new sequence, containing all the elements of the original except
+ those at a specified iterator, or between two iterators.
+ </p>
+<a name="fusion.algorithm.transformation.functions.erase.synposis"></a><h6>
+<a name="id606790"></a>
+ Synposis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">First</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::erase<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">First</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">erase</span><span class="special">(</span>
+ <span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">First</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">it1</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">First</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Last</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::erase<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">Last</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">erase</span><span class="special">(</span>
+ <span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">First</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">it1</span><span class="special">,</span> <span class="identifier">Last</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">it2</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id607252"></a><p class="title"><b>Table 1.63. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameters
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">it1</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../iterator/concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Iterator into <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">it2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../iterator/concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Iterator into <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ after <tt class="computeroutput"><span class="identifier">it1</span></tt>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.erase.expression_semantics"></a><h6>
+<a name="id607479"></a>
+ <a href="erase.html#fusion.algorithm.transformation.functions.erase.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+erase<span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">pos</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
+ all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ except the element at <tt class="computeroutput"><span class="identifier">pos</span></tt>.
+ </p>
+<pre class="programlisting">
+erase<span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence, with
+ all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
+ in their original order, except those in the range [<tt class="computeroutput"><span class="identifier">first</span></tt>,<tt class="computeroutput"><span class="identifier">last</span></tt>).
+ </p>
+<a name="fusion.algorithm.transformation.functions.erase.complexity"></a><h6>
+<a name="id607738"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.erase.header"></a><h6>
+<a name="id607770"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">erase</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">erase</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.erase.example"></a><h6>
+<a name="id607939"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">const</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">double</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2.0</span><span class="special">,</span> <span class="char">'c'</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>erase<span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> next<span class="special">(</span>begin<span class="special">(</span><span class="identifier">vec</span><span class="special">)))</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'c'</span><span class="special">));<
/span>
+<span class="identifier">assert</span><span class="special">(</span>erase<span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> next<span class="special">(</span>begin<span class="special">(</span><span class="identifier">vec</span><span class="special">)),</span> end<span class="special">(</span><span class="identifier">vec</span><span class="special">))</span> <span class="special">==</span> <a href="../../../container/generation/functions/make_vector.html" title="
make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="clear.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="erase_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/erase_key.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/erase_key.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,168 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>erase_key</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="erase.html" title="erase">
+<link rel="next" href="insert.html" title="insert">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="erase.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="insert.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.erase_key"></a>erase_key</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.erase_key.description"></a><h6>
+<a name="id608394"></a>
+ Description
+ </h6>
+<p>
+ For an <a href="../../../sequence/concepts/associative_sequence.html" title="Associative
+ Sequence">Associative
+ Sequence</a> <tt class="computeroutput"><span class="identifier">seq</span></tt>,
+ returns a <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a> containing all the elements of the original except those
+ with a given key.
+ </p>
+<a name="fusion.algorithm.transformation.functions.erase_key.synposis"></a><h6>
+<a name="id608457"></a>
+ Synposis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Key</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">erase_key</span><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">erase_key</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id608630"></a><p class="title"><b>Table 1.64. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/associative_sequence.html" title="Associative
+ Sequence">Associative
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Key</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Key to erase
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.erase_key.expression_semantics"></a><h6>
+<a name="id608771"></a>
+ <a href="erase_key.html#fusion.algorithm.transformation.functions.erase_key.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+erase_key<span class="special">&lt;</span><span class="identifier">Key</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
+ all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
+ except those with key <tt class="computeroutput"><span class="identifier">Key</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.functions.erase_key.complexity"></a><h6>
+<a name="id608902"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.erase_key.header"></a><h6>
+<a name="id608933"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">erase_key</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">erase_key</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.erase_key.example"></a><h6>
+<a name="id609104"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">assert</span><span class="special">(</span>erase_key<span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;(</span>make_map<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">long</span><span class="special">&gt;(</span><span class="char">'a'</span><span class="special">,</span> <span class="char">'b'</span><span class="special">))</span> <span class="special">==</span> make_map<span class="special">&lt;</span><span class="keyword">long</span><span class="special">&gt;(</span><span
 class="char">'b'</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="erase.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="insert.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/filter.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/filter.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,165 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>filter</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="../functions.html" title="Functions">
+<link rel="next" href="filter_if.html" title="filter_if">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="filter_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.filter"></a>filter</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.filter.description"></a><h6>
+<a name="id596588"></a>
+ Description
+ </h6>
+<p>
+ For a given sequence, filter returns a new sequences containing only
+ the elements of a specified type.
+ </p>
+<a name="fusion.algorithm.transformation.functions.filter.synopsis"></a><h6>
+<a name="id596621"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::filter<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">filter</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id596807"></a><p class="title"><b>Table 1.53. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The type to retain
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.filter.expression_semantics"></a><h6>
+<a name="id596945"></a>
+ <a href="filter.html#fusion.algorithm.transformation.functions.filter.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+filter<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a sequence containing
+ all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ of type <tt class="computeroutput"><span class="identifier">T</span></tt>. Equivalent
+ to <tt class="computeroutput">filter_if<span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">same_type</span><span class="special">&lt;</span><span class="identifier">_</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">)</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.functions.filter.complexity"></a><h6>
+<a name="id597160"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.filter.header"></a><h6>
+<a name="id597192"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">filter</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">filter</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.filter.example"></a><h6>
+<a name="id597362"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">const</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">long</span><span class="special">,</span><span class="keyword">long</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">,</span><span class="number">4</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>filter<span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="filter_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/filter_if.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/filter_if.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,168 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>filter_if</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="filter.html" title="filter">
+<link rel="next" href="transform.html" title="transform">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="filter.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="transform.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.filter_if"></a>filter_if</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.filter_if.description"></a><h6>
+<a name="id597630"></a>
+ Description
+ </h6>
+<p>
+ For a given sequence, filter_if returns a new sequences
+ containing only the elements with types for which a given <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
+ Lambda Expression</a> evaluates to <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.functions.filter_if.synopsis"></a><h6>
+<a name="id597721"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Pred</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::filter_if<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">filter_if</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id597907"></a><p class="title"><b>Table 1.54. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Pred</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A unary <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
+ Lambda Expression</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The predicate to filter by
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.filter_if.expression_semantics"></a><h6>
+<a name="id598056"></a>
+ <a href="filter_if.html#fusion.algorithm.transformation.functions.filter_if.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+filter_if<span class="special">&lt;</span><span class="identifier">Pred</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a sequence containing
+ all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ with types for which <tt class="computeroutput"><span class="identifier">Pred</span></tt>
+ evaluates to <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>. The order of the retained elements
+ is the same as in the original sequence.
+ </p>
+<a name="fusion.algorithm.transformation.functions.filter_if.complexity"></a><h6>
+<a name="id598222"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.filter_if.header"></a><h6>
+<a name="id598253"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">filter_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">filter_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.filter_if.example"></a><h6>
+<a name="id598424"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">const</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">double</span><span class="special">,</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3.0</span><span class="special">,</span><span class="number">4.0</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>filter_if<span class="special">&lt;</span><span class="identifier">is_integral</span><span class="special">&lt;</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">&gt;</span> <span class="special">&gt;(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="filter.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="transform.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/insert.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/insert.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,186 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>insert</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="erase_key.html" title="erase_key">
+<link rel="next" href="insert_range.html" title="insert_range">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="erase_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="insert_range.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.insert"></a>insert</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.insert.description"></a><h6>
+<a name="id609312"></a>
+ Description
+ </h6>
+<p>
+ Returns a new sequence with all the elements of the original, an a new
+ element inserted the position described by a given iterator.
+ </p>
+<a name="fusion.algorithm.transformation.functions.insert.synposis"></a><h6>
+<a name="id609346"></a>
+ Synposis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Pos</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span>
+ <span class="special">&gt;</span>
+<span class="emphasis"><em>unspecified</em></span> <span class="identifier">insert</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">Pos</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">pos</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">t</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id609537"></a><p class="title"><b>Table 1.65. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">pos</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../iterator/concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The position to insert at
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">t</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The value to insert
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.insert.expression_semantics"></a><h6>
+<a name="id609722"></a>
+ <a href="insert.html#fusion.algorithm.transformation.functions.insert.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+insert<span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">p</span><span class="special">,</span> <span class="identifier">t</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
+ all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
+ in their original order, and a new element with the type and value of
+ <tt class="computeroutput"><span class="identifier">t</span></tt> inserted at iterator
+ <tt class="computeroutput"><span class="identifier">pos</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.functions.insert.complexity"></a><h6>
+<a name="id609877"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.insert.header"></a><h6>
+<a name="id609909"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">insert</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">insert</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.insert.example"></a><h6>
+<a name="id610079"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">const</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>insert<span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> next<span class="special">(</span>begin<span class="special">(</span><span class="identifier">vec</span><span class="special">)),</span> <span class="number">3</span><span class="special">)</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">1</span><span class="special">,
</span><span class="number">3</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="erase_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="insert_range.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/insert_range.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/insert_range.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,189 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>insert_range</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="insert.html" title="insert">
+<link rel="next" href="join.html" title="join">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="insert.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="join.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.insert_range"></a>insert_range</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.insert_range.description"></a><h6>
+<a name="id610373"></a>
+ Description
+ </h6>
+<p>
+ Returns a new sequence with another sequence inserted at a specified
+ iterator.
+ </p>
+<a name="fusion.algorithm.transformation.functions.insert_range.synposis"></a><h6>
+<a name="id610407"></a>
+ Synposis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Pos</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Range</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::insert_range<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Pos</span><span class="special">,</span> <span class="identifier">Range</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">insert_range</span><span class="special">(</span>
+ <span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">Pos</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">pos</span><span class="special">,</span> <span class="identifier">Range</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">range</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id610680"></a><p class="title"><b>Table 1.66. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">pos</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../iterator/concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The position to insert at
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">range</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Range to insert
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.insert_range.expression_semantics"></a><h6>
+<a name="id610873"></a>
+ <a href="insert_range.html#fusion.algorithm.transformation.functions.insert_range.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+insert<span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">pos</span><span class="special">,</span> <span class="identifier">range</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
+ all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
+ and the elements of <tt class="computeroutput"><span class="identifier">range</span></tt>
+ inserted at iterator <tt class="computeroutput"><span class="identifier">pos</span></tt>.
+ All elements retaining their ordering from the orignal sequences.
+ </p>
+<a name="fusion.algorithm.transformation.functions.insert_range.complexity"></a><h6>
+<a name="id611034"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.insert_range.header"></a><h6>
+<a name="id611064"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">insert_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">insert_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.insert_range.example"></a><h6>
+<a name="id611235"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">const</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>insert_range<span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> next<span class="special">(</span>begin<span class="special">(</span><span class="identifier">vec</span><span class="special">)),</span> make_vector<span class="special">(</span><span class="number">3</span><span class="special">,</span><span class="number">4</span><span class="special">))</span> <span
class="special">==</span> make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">3</span><span class="special">,</span><span class="number">4</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="insert.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="join.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/join.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/join.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,167 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>join</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="insert_range.html" title="insert_range">
+<link rel="next" href="zip.html" title="zip">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="insert_range.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="zip.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.join"></a>join</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.join.description"></a><h6>
+<a name="id611566"></a>
+ Description
+ </h6>
+<p>
+ Takes 2 sequences and returns a sequence containing the elements of the
+ first followed by the elements of the second.
+ </p>
+<a name="fusion.algorithm.transformation.functions.join.synopsis"></a><h6>
+<a name="id611599"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">LhSequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">RhSequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::join<span class="special">&lt;</span><span class="identifier">LhSequence</span><span class="special">,</span> <span class="identifier">RhSequence</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">join</span><span class="special">(</span><span class="identifier">LhSequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">RhSequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id611807"></a><p class="title"><b>Table 1.67. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">lhs</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">rhs</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.join.expression_semantics"></a><h6>
+<a name="id611954"></a>
+ <a href="join.html#fusion.algorithm.transformation.functions.join.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+join<span class="special">(</span><span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">rhs</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a sequence containing
+ all the elements of <tt class="computeroutput"><span class="identifier">lhs</span></tt>
+ followed by all the elements of <tt class="computeroutput"><span class="identifier">rhs</span></tt>.
+ The order of th elements is preserved.
+ </p>
+<a name="fusion.algorithm.transformation.functions.join.complexity"></a><h6>
+<a name="id612087"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.join.header"></a><h6>
+<a name="id612119"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">join</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">join</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.join.example"></a><h6>
+<a name="id612288"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'a'</span><span class="special">);</span>
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">2</span><span class="special">,</span> <span class="char">'b'</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>join<span class="special">(</span><span class="identifier">v1</span><span class="special">,</span> <span class="identifier">v2</span><span class="special">)</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="char">'a'</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="char">'b'</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="insert_range.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="zip.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/pop_back.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/pop_back.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,143 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>pop_back</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="zip.html" title="zip">
+<link rel="next" href="pop_front.html" title="pop_front">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="zip.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="pop_front.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.pop_back"></a>pop_back</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.pop_back.description"></a><h6>
+<a name="id613910"></a>
+ Description
+ </h6>
+<p>
+ Returns a new sequence, with the last element of the original removed.
+ </p>
+<a name="fusion.algorithm.transformation.functions.pop_back.synopsis"></a><h6>
+<a name="id613943"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::pop_back<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">pop_back</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id614100"></a><p class="title"><b>Table 1.69. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.pop_back.expression_semantics"></a><h6>
+<a name="id614202"></a>
+ <a href="pop_back.html#fusion.algorithm.transformation.functions.pop_back.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+pop_back<span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence containing
+ all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
+ except the last element. The elements in the new sequence are in the
+ same order as they were in <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.functions.pop_back.complexity"></a><h6>
+<a name="id614325"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.pop_back.header"></a><h6>
+<a name="id614357"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">pop_back</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">pop_back</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.pop_back.example"></a><h6>
+<a name="id614528"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">___pop_back__</span><span class="special">(</span>make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">))</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="zip.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="pop_front.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/pop_front.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/pop_front.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,143 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>pop_front</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="pop_back.html" title="pop_back">
+<link rel="next" href="push_back.html" title="push_back">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="pop_back.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="push_back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.pop_front"></a>pop_front</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.pop_front.description"></a><h6>
+<a name="id614702"></a>
+ Description
+ </h6>
+<p>
+ Returns a new sequence, with the first element of the original removed.
+ </p>
+<a name="fusion.algorithm.transformation.functions.pop_front.synopsis"></a><h6>
+<a name="id614735"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::pop_front<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">pop_front</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id614893"></a><p class="title"><b>Table 1.70. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.pop_front.expression_semantics"></a><h6>
+<a name="id614997"></a>
+ <a href="pop_front.html#fusion.algorithm.transformation.functions.pop_front.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+pop_front<span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence containing
+ all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
+ except the first element. The elements in the new sequence are in the
+ same order as they were in <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.functions.pop_front.complexity"></a><h6>
+<a name="id615120"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.pop_front.header"></a><h6>
+<a name="id615151"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">pop_front</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">pop_front</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.pop_front.example"></a><h6>
+<a name="id615322"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">assert</span><span class="special">(</span>pop_front<span class="special">(</span>make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">))</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="pop_back.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="push_back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/push_back.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/push_back.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,164 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>push_back</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="pop_front.html" title="pop_front">
+<link rel="next" href="push_front.html" title="push_front">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="pop_front.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="push_front.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.push_back"></a>push_back</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.push_back.description"></a><h6>
+<a name="id615503"></a>
+ Description
+ </h6>
+<p>
+ Returns a new sequence with an element added at the end.
+ </p>
+<a name="fusion.algorithm.transformation.functions.push_back.synopsis"></a><h6>
+<a name="id615536"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::push_back<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">push_back</span><span class="special">(</span>
+ <span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">t</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id615745"></a><p class="title"><b>Table 1.71. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">t</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The value to add to the end
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.push_back.expression_semantics"></a><h6>
+<a name="id615886"></a>
+ <a href="push_back.html#fusion.algorithm.transformation.functions.push_back.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+push_back<span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">t</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
+ all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
+ and new element <tt class="computeroutput"><span class="identifier">t</span></tt> appended
+ to the end. The elements are in the same order as they were in <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.functions.push_back.complexity"></a><h6>
+<a name="id616032"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.push_back.header"></a><h6>
+<a name="id616062"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">push_back</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">push_back</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.push_back.example"></a><h6>
+<a name="id616233"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">assert</span><span class="special">(</span>push_back<span class="special">(</span>make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">),</span><span class="number">4</span><span class="special">)</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</
span><span class="special">,</span><span class="number">4</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="pop_front.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="push_front.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/push_front.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/push_front.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,165 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>push_front</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="push_back.html" title="push_back">
+<link rel="next" href="../metafunctions.html" title="Metafunctions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="push_back.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.push_front"></a>push_front</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.push_front.description"></a><h6>
+<a name="id616448"></a>
+ Description
+ </h6>
+<p>
+ Returns a new sequence with an element added at the beginning.
+ </p>
+<a name="fusion.algorithm.transformation.functions.push_front.synopsis"></a><h6>
+<a name="id616481"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::push_front<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">push_front</span><span class="special">(</span>
+ <span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">t</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id616690"></a><p class="title"><b>Table 1.72. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">t</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The value to add to the beginning
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.push_front.expression_semantics"></a><h6>
+<a name="id616831"></a>
+ <a href="push_front.html#fusion.algorithm.transformation.functions.push_front.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+push_back<span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">t</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
+ all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
+ and new element <tt class="computeroutput"><span class="identifier">t</span></tt> appended
+ to the beginning. The elements are in the same order as they were in
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.functions.push_front.complexity"></a><h6>
+<a name="id616976"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.push_front.header"></a><h6>
+<a name="id617007"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">push_front</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">push_front</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.push_front.example"></a><h6>
+<a name="id617178"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">assert</span><span class="special">(</span>push_front<span class="special">(</span>make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">),</span><span class="number">0</span><span class="special">)</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">0</span><span class="special">,</span><span class="number">1</span><span class="special">,</span><span class="number">
2</span><span class="special">,</span><span class="number">3</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="push_back.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/remove.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/remove.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,165 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>remove</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="replace_if.html" title="replace_if">
+<link rel="next" href="remove_if.html" title="remove_if">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="replace_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="remove_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.remove"></a>remove</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.remove.description"></a><h6>
+<a name="id603108"></a>
+ Description
+ </h6>
+<p>
+ Returns a new sequence, with all the elements of the original sequence,
+ except those of a given type.
+ </p>
+<a name="fusion.algorithm.transformation.functions.remove.synopsis"></a><h6>
+<a name="id603141"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::remove<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">replace</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id603327"></a><p class="title"><b>Table 1.59. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Type to remove
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.remove.expression_semantics"></a><h6>
+<a name="id603465"></a>
+ <a href="remove.html#fusion.algorithm.transformation.functions.remove.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+remove<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
+ all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
+ in their original order, except those of type <tt class="computeroutput"><span class="identifier">T</span></tt>.
+ Equivalent to <tt class="computeroutput">remove_if<span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><span class="identifier">_</span><span class="special">,</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">)</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.functions.remove.complexity"></a><h6>
+<a name="id603682"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.remove.header"></a><h6>
+<a name="id603714"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">remove</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">remove</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.remove.example"></a><h6>
+<a name="id603884"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">const</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2.0</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>remove<span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">1</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="replace_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="remove_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/remove_if.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/remove_if.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,167 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>remove_if</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="remove.html" title="remove">
+<link rel="next" href="reverse.html" title="reverse">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="remove.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="reverse.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.remove_if"></a>remove_if</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.remove_if.description"></a><h6>
+<a name="id604104"></a>
+ Description
+ </h6>
+<p>
+ Returns a new sequence, containing all the elements of the original except
+ those where a given unary function object evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.functions.remove_if.synopsis"></a><h6>
+<a name="id604150"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Pred</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::remove_if<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">remove_if</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id604336"></a><p class="title"><b>Table 1.60. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Pred</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of unary <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
+ Lambda Expression</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Removal predicate
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.remove_if.expression_semantics"></a><h6>
+<a name="id604484"></a>
+ <a href="remove_if.html#fusion.algorithm.transformation.functions.remove_if.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+remove_if<span class="special">&lt;</span><span class="identifier">Pred</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
+ all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
+ in their original order, except those elements with types for which
+ <tt class="computeroutput"><span class="identifier">Pred</span></tt> evaluates to <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>. Equivalent to <tt class="computeroutput">filter<span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">not_</span><span class="special">&lt;</span><span class="identifier">Pred</span><span class="special">&gt;</span>
+ <span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">)</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.functions.remove_if.complexity"></a><h6>
+<a name="id604734"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.remove_if.header"></a><h6>
+<a name="id604765"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">remove_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">remove_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.remove_if.example"></a><h6>
+<a name="id604936"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">const</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2.0</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>remove_if<span class="special">&lt;</span><span class="identifier">is_floating_point</span><span class="special">&lt;</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">&gt;</span> <span class="special">&gt;(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">1</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="remove.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="reverse.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/replace.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/replace.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,186 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>replace</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="transform.html" title="transform">
+<link rel="next" href="replace_if.html" title="replace_if">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="transform.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="replace_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.replace"></a>replace</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.replace.description"></a><h6>
+<a name="id600774"></a>
+ Description
+ </h6>
+<p>
+ Replaces each value within a sequence of a given type and value with
+ a new value.
+ </p>
+<a name="fusion.algorithm.transformation.functions.replace.synopsis"></a><h6>
+<a name="id600807"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::replace<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">replace</span><span class="special">(</span>
+ <span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">old_value</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">new_value</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id601051"></a><p class="title"><b>Table 1.57. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>, <tt class="computeroutput"><span class="identifier">e</span> <span class="special">==</span> <span class="identifier">old_value</span></tt>
+ is a valid expression, convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>,
+ for each element <tt class="computeroutput"><span class="identifier">e</span></tt>
+ in <tt class="computeroutput"><span class="identifier">seq</span></tt> with type
+ convertible to <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">old_value</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Value to replace
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">new_value</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Replacement value
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.replace.expression_semantics"></a><h6>
+<a name="id601299"></a>
+ <a href="replace.html#fusion.algorithm.transformation.functions.replace.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+replace<span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">old_value</span><span class="special">,</span> <span class="identifier">new_value</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence with
+ all the values of <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ with <tt class="computeroutput"><span class="identifier">new_value</span></tt> assigned
+ to elements with the same type and equal to <tt class="computeroutput"><span class="identifier">old_value</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.functions.replace.complexity"></a><h6>
+<a name="id601456"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.replace.header"></a><h6>
+<a name="id601488"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">replace</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">replace</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.replace.example"></a><h6>
+<a name="id601659"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">assert</span><span class="special">(</span>replace<span class="special">(</span>make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">),</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">)</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">3</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="transform.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="replace_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/replace_if.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/replace_if.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,195 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>replace_if</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="replace.html" title="replace">
+<link rel="next" href="remove.html" title="remove">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="replace.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="remove.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.replace_if"></a>replace_if</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.replace_if.description"></a><h6>
+<a name="id601857"></a>
+ Description
+ </h6>
+<p>
+ Replaces each element of a given sequence for which an unary function
+ object evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt>
+ replaced with a new value.
+ </p>
+<a name="fusion.algorithm.transformation.functions.replace_if.synopsis"></a><h6>
+<a name="id601902"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::replace_if<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">F</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">replace_if</span><span class="special">(</span>
+ <span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">F</span> <span class="identifier">f</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">new_value</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id602162"></a><p class="title"><b>Table 1.58. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A function object for which <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> is a valid expression, convertible
+ to <tt class="computeroutput"><span class="keyword">bool</span></tt>, for each
+ element <tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">new_value</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Replacement value
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.replace_if.expression_semantics"></a><h6>
+<a name="id602401"></a>
+ <a href="replace_if.html#fusion.algorithm.transformation.functions.replace_if.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+replace_if<span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">,</span> <span class="identifier">new_value</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence with
+ all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
+ with <tt class="computeroutput"><span class="identifier">new_value</span></tt> assigned
+ to each element for which <tt class="computeroutput"><span class="identifier">f</span></tt>
+ evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.functions.replace_if.complexity"></a><h6>
+<a name="id602570"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.replace_if.header"></a><h6>
+<a name="id602601"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">replace_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">replace_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.replace_if.example"></a><h6>
+<a name="id602772"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">odd</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">T</span> <span class="identifier">t</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">t</span> <span class="special">%</span> <span class="number">2</span><span class="special">;</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+<span class="special">...</span>
+<span class="identifier">assert</span><span class="special">(</span>replace_if<span class="special">(</span>make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">(),</span> <span class="number">3</span><span class="special">)</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">3</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="replace.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="remove.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/reverse.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/reverse.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,142 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>reverse</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="remove_if.html" title="remove_if">
+<link rel="next" href="clear.html" title="clear">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="remove_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="clear.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.reverse"></a>reverse</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.reverse.description"></a><h6>
+<a name="id605184"></a>
+ Description
+ </h6>
+<p>
+ Returns a new sequence with the elements of the original in reverse order.
+ </p>
+<a name="fusion.algorithm.transformation.functions.reverse.synposis"></a><h6>
+<a name="id605217"></a>
+ Synposis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::reverse<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">reverse</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id605374"></a><p class="title"><b>Table 1.61. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.reverse.expression_semantics"></a><h6>
+<a name="id605478"></a>
+ <a href="reverse.html#fusion.algorithm.transformation.functions.reverse.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+reverse<span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence containing
+ all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ in reverse order.
+ </p>
+<a name="fusion.algorithm.transformation.functions.reverse.complexity"></a><h6>
+<a name="id605587"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.reverse.header"></a><h6>
+<a name="id605619"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">reverse</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">reverse</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.reverse.example"></a><h6>
+<a name="id605790"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">assert</span><span class="special">(</span>reverse<span class="special">(</span>make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">))</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">3</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">1</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="remove_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="clear.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/transform.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/transform.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,293 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>transform</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="filter_if.html" title="filter_if">
+<link rel="next" href="replace.html" title="replace">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="filter_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="replace.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.transform"></a>transform</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.transform.description"></a><h6>
+<a name="id598719"></a>
+ Description
+ </h6>
+<p>
+ For a sequence <tt class="computeroutput"><span class="identifier">seq</span></tt> and
+ function object or function pointer <tt class="computeroutput"><span class="identifier">f</span></tt>,
+ <tt class="computeroutput"><span class="identifier">transform</span></tt> returns a new
+ sequence with elements created by applying <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> to each element of <tt class="computeroutput"><span class="identifier">e</span></tt>
+ of <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.functions.transform.unary_version_synopsis"></a><h6>
+<a name="id598838"></a>
+ <a href="transform.html#fusion.algorithm.transformation.functions.transform.unary_version_synopsis">Unary
+ version synopsis</a>
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::transform<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">transform</span><span class="special">(</span>
+ <span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">F</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id599044"></a><p class="title"><b>Table 1.55. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt>
+ is a valid expression for each element <tt class="computeroutput"><span class="identifier">e</span></tt>
+ of <tt class="computeroutput"><span class="identifier">seq</span></tt>. <tt class="computeroutput">boost::result_of<span class="special">&lt;</span><span class="identifier">F</span><span class="special">(</span><span class="identifier">E</span><span class="special">)&gt;::</span><span class="identifier">type</span></tt> is the return type of <tt class="computeroutput"><span class="identifier">f</span></tt> when called with a value of
+ each element type <tt class="computeroutput"><span class="identifier">E</span></tt>.
+ </p>
+ </td>
+<td>
+ <p>
+ Transformation function
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.transform.expression_semantics"></a><h6>
+<a name="id599316"></a>
+ <a href="transform.html#fusion.algorithm.transformation.functions.transform.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+transform<span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
+ the return values of <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> for each element <tt class="computeroutput"><span class="identifier">e</span></tt>
+ within <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.functions.transform.binary_version_synopsis"></a><h6>
+<a name="id599477"></a>
+ <a href="transform.html#fusion.algorithm.transformation.functions.transform.binary_version_synopsis">Binary
+ version synopsis</a>
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence1</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence2</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::transform<span class="special">&lt;</span><span class="identifier">Sequence1</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Sequence2</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">transform</span><span class="special">(</span>
+ <span class="identifier">Sequence1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq1</span><span class="special">,</span> <span class="identifier">Sequence2</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq2</span><span class="special">,</span> <span class="identifier">F</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id599744"></a><p class="title"><b>Table 1.56. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq1</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e1</span><span class="special">,</span><span class="identifier">e2</span><span class="special">)</span></tt>
+ is a valid expression for each pair of elements <tt class="computeroutput"><span class="identifier">e1</span></tt>
+ of <tt class="computeroutput"><span class="identifier">seq1</span></tt> and <tt class="computeroutput"><span class="identifier">e2</span></tt> of <tt class="computeroutput"><span class="identifier">seq2</span></tt>.
+ <tt class="computeroutput">boost::result_of<span class="special">&lt;</span><span class="identifier">F</span><span class="special">(</span><span class="identifier">E1</span><span class="special">,</span><span class="identifier">E2</span><span class="special">)&gt;::</span><span class="identifier">type</span></tt> is the return type of <tt class="computeroutput"><span class="identifier">f</span></tt> when called with elements of
+ type <tt class="computeroutput"><span class="identifier">E1</span></tt> and <tt class="computeroutput"><span class="identifier">E2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Transformation function
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
+ the return values of <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e1</span><span class="special">,</span> <span class="identifier">e2</span><span class="special">)</span></tt> for each pair of elements <tt class="computeroutput"><span class="identifier">e1</span></tt> and <tt class="computeroutput"><span class="identifier">e2</span></tt>
+ within <tt class="computeroutput"><span class="identifier">seq1</span></tt> and <tt class="computeroutput"><span class="identifier">seq2</span></tt> respectively.
+ </p>
+<a name="fusion.algorithm.transformation.functions.transform.complexity"></a><h6>
+<a name="id600232"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.transform.header"></a><h6>
+<a name="id600262"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">transform</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">transform</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.transform.example"></a><h6>
+<a name="id600433"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">triple</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">int</span> <span class="identifier">result_type</span><span class="special">;</span>
+
+ <span class="keyword">int</span> <span class="keyword">operator</span><span class="special">()(</span><span class="keyword">int</span> <span class="identifier">t</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">t</span> <span class="special">*</span> <span class="number">3</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">};</span>
+<span class="special">...</span>
+<span class="identifier">assert</span><span class="special">(</span>transform<span class="special">(</span>make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">),</span> <span class="identifier">triple</span><span class="special">())</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">3</span><span class="special">,</span><span class="number">6</span><span class="special">,</span><span class=
"number">9</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="filter_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="replace.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/zip.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/functions/zip.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,154 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>zip</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="join.html" title="join">
+<link rel="next" href="pop_back.html" title="pop_back">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="join.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="pop_back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.functions.zip"></a>zip</h5></div></div></div>
+<a name="fusion.algorithm.transformation.functions.zip.description"></a><h6>
+<a name="id612605"></a>
+ Description
+ </h6>
+<p>
+ Zips sequences together to form a single sequence, whos members are tuples
+ of the members of the component sequences.
+ </p>
+<a name="fusion.algorithm.transformation.functions.zip.synopsis"></a><h6>
+<a name="id612638"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence1</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence2</span><span class="special">,</span>
+ <span class="special">...</span>
+ <span class="keyword">typename</span> <span class="identifier">SequenceN</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::zip<span class="special">&lt;</span><span class="identifier">Sequence1</span><span class="special">,</span> <span class="identifier">Sequence2</span><span class="special">,</span> <span class="special">...</span> <span class="identifier">SequenceN</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">zip</span><span class="special">(</span><span class="identifier">Sequence1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq1</span><span class="special">,</span> <span class="identifier">Sequence2</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq2</span><span class="special">,</span> <span class="special">...</span> <span class="identifier">SequenceN</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seqN</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id612923"></a><p class="title"><b>Table 1.68. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq1</span></tt> to <tt class="computeroutput"><span class="identifier">seqN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Each sequence is a model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.functions.zip.expression_semantics"></a><h6>
+<a name="id613040"></a>
+ <a href="zip.html#fusion.algorithm.transformation.functions.zip.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+zip<span class="special">(</span><span class="identifier">seq1</span><span class="special">,</span> <span class="identifier">seq2</span><span class="special">,</span> <span class="special">...</span> <span class="identifier">seqN</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a sequence containing
+ tuples of elements from sequences <tt class="computeroutput"><span class="identifier">seq1</span></tt>
+ to <tt class="computeroutput"><span class="identifier">seqN</span></tt>. For example,
+ applying zip to tuples <tt class="computeroutput"><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">)</span></tt>
+ and <tt class="computeroutput"><span class="special">(</span><span class="char">'a'</span><span class="special">,</span> <span class="char">'b'</span><span class="special">,</span>
+ <span class="char">'c'</span><span class="special">)</span></tt>
+ would return <tt class="computeroutput"><span class="special">((</span><span class="number">1</span><span class="special">,</span> <span class="char">'a'</span><span class="special">),(</span><span class="number">2</span><span class="special">,</span> <span class="char">'b'</span><span class="special">),(</span><span class="number">3</span><span class="special">,</span>
+ <span class="char">'c'</span><span class="special">))</span></tt>
+ </p>
+<a name="fusion.algorithm.transformation.functions.zip.complexity"></a><h6>
+<a name="id613349"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.functions.zip.header"></a><h6>
+<a name="id613381"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">zip</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">zip</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.functions.zip.example"></a><h6>
+<a name="id613550"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'a'</span><span class="special">);</span>
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">2</span><span class="special">,</span> <span class="char">'b'</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>zip<span class="special">(</span><span class="identifier">v1</span><span class="special">,</span> <span class="identifier">v2</span><span class="special">)</span> <span class="special">==</span> make_vector<span class="special">(</span>make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">),</span><a href="../../../container/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vect
or</span></tt></a><span class="special">(</span><span class="char">'a'</span><span class="special">,</span> <span class="char">'b'</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="join.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="pop_back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,60 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Metafunctions</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../transformation.html" title="Transformation">
+<link rel="prev" href="functions/push_front.html" title="push_front">
+<link rel="next" href="metafunctions/filter.html" title="filter">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/push_front.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../transformation.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/filter.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.algorithm.transformation.metafunctions"></a>Metafunctions</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">filter</span></dt>
+<dt><span class="section">filter_if</span></dt>
+<dt><span class="section">transform</span></dt>
+<dt><span class="section">replace</span></dt>
+<dt><span class="section">replace_if</span></dt>
+<dt><span class="section">remove</span></dt>
+<dt><span class="section">remove_if</span></dt>
+<dt><span class="section">reverse</span></dt>
+<dt><span class="section">clear</span></dt>
+<dt><span class="section">erase</span></dt>
+<dt><span class="section">erase_key</span></dt>
+<dt><span class="section">insert</span></dt>
+<dt><span class="section">insert_range</span></dt>
+<dt><span class="section">join</span></dt>
+<dt><span class="section">zip</span></dt>
+<dt><span class="section">pop_back</span></dt>
+<dt><span class="section">pop_front</span></dt>
+<dt><span class="section">push_back</span></dt>
+<dt><span class="section">push_front</span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/push_front.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../transformation.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/filter.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/clear.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/clear.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,135 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>clear</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="reverse.html" title="reverse">
+<link rel="next" href="erase.html" title="erase">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="reverse.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="erase.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.clear"></a>clear</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.clear.description"></a><h6>
+<a name="id624597"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of clear, given the input sequence
+ type.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.clear.synopsis"></a><h6>
+<a name="id624647"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">clear</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id624749"></a><p class="title"><b>Table 1.82. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.metafunctions.clear.expression_semantics"></a><h6>
+<a name="id624845"></a>
+ <a href="clear.html#fusion.algorithm.transformation.metafunctions.clear.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::clear<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns an empty sequence.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.clear.complexity"></a><h6>
+<a name="id624959"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.clear.header"></a><h6>
+<a name="id624991"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">clear</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">clear</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="reverse.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="erase.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/erase.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/erase.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,192 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>erase</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="clear.html" title="clear">
+<link rel="next" href="erase_key.html" title="erase_key">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="clear.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="erase_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.erase"></a>erase</h5></div></div></div>
+<p>
+ Returns the result type of erase, given the input sequence
+ and range delimiting iterator types.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.erase.description"></a><h6>
+<a name="id625207"></a>
+ Description
+ </h6>
+<a name="fusion.algorithm.transformation.metafunctions.erase.synopsis"></a><h6>
+<a name="id625233"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">It1</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">It2</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">erase</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id625379"></a><p class="title"><b>Table 1.83. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">It1</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../iterator/concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">It2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../iterator/concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.metafunctions.erase.expression_semantics"></a><h6>
+<a name="id625573"></a>
+ <a href="erase.html#fusion.algorithm.transformation.metafunctions.erase.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::erase<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">It1</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence with
+ the element at <tt class="computeroutput"><span class="identifier">It1</span></tt> removed.
+ </p>
+<pre class="programlisting">
+result_of::erase<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">It1</span><span class="special">,</span> <span class="identifier">It2</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence with
+ the elements between <tt class="computeroutput"><span class="identifier">It1</span></tt>
+ and <tt class="computeroutput"><span class="identifier">It2</span></tt> removed.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.erase.complexity"></a><h6>
+<a name="id625842"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.erase.header"></a><h6>
+<a name="id625873"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">erase</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">erase</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="clear.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="erase_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/erase_key.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/erase_key.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,159 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>erase_key</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="erase.html" title="erase">
+<link rel="next" href="insert.html" title="insert">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="erase.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="insert.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.erase_key"></a>erase_key</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.erase_key.description"></a><h6>
+<a name="id626067"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of erase_key, given the sequence
+ and key types.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.erase_key.synopsis"></a><h6>
+<a name="id626119"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Key</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">erase_key</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id626239"></a><p class="title"><b>Table 1.84. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/associative_sequence.html" title="Associative
+ Sequence">Associative
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Key</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Key type
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.metafunctions.erase_key.expression_semantics"></a><h6>
+<a name="id626380"></a>
+ <a href="erase_key.html#fusion.algorithm.transformation.metafunctions.erase_key.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::erase_key<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/associative_sequence.html" title="Associative
+ Sequence">Associative
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a sequence with the
+ elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>,
+ except those with key <tt class="computeroutput"><span class="identifier">Key</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.erase_key.complexity"></a><h6>
+<a name="id626528"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.erase_key.header"></a><h6>
+<a name="id626559"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">erase_key</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">erase_key</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="erase.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="insert.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/filter.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/filter.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,161 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>filter</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="../metafunctions.html" title="Metafunctions">
+<link rel="next" href="filter_if.html" title="filter_if">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="filter_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.filter"></a>filter</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.filter.description"></a><h6>
+<a name="id617412"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of filter given the sequence type
+ and type to retain.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.filter.synopsis"></a><h6>
+<a name="id617463"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">filter</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id617582"></a><p class="title"><b>Table 1.73. Parameter</b></p>
+<table class="table" summary="Parameter">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Type to retain
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.metafunctions.filter.expression_semantics"></a><h6>
+<a name="id617723"></a>
+ <a href="filter.html#fusion.algorithm.transformation.metafunctions.filter.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::filter<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a sequence containing
+ the elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ that are of type <tt class="computeroutput"><span class="identifier">T</span></tt>. Equivalent
+ to <tt class="computeroutput">result_of::filter_if<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.filter.complexity"></a><h6>
+<a name="id617984"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.filter.header"></a><h6>
+<a name="id618015"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">filter</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">filter</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="filter_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/filter_if.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/filter_if.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,162 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>filter_if</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="filter.html" title="filter">
+<link rel="next" href="transform.html" title="transform">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="filter.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="transform.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.filter_if"></a>filter_if</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.filter_if.description"></a><h6>
+<a name="id618208"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of filter_if given the sequence
+ and unary <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
+ Lambda Expression</a> predicate type.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.filter_if.synopsis"></a><h6>
+<a name="id618267"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Pred</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">filter_if</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id618389"></a><p class="title"><b>Table 1.74. Parameter</b></p>
+<table class="table" summary="Parameter">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Pred</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A unary <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
+ Lambda Expression</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Type to retain
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.metafunctions.filter_if.expression_semantics"></a><h6>
+<a name="id618534"></a>
+ <a href="filter_if.html#fusion.algorithm.transformation.metafunctions.filter_if.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::filter_if<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a sequence containing
+ the elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ for which <tt class="computeroutput"><span class="identifier">Pred</span></tt> evaluates
+ to <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.filter_if.complexity"></a><h6>
+<a name="id618718"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.filter_if.header"></a><h6>
+<a name="id618750"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">filter_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">filter_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="filter.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="transform.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/insert.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/insert.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,180 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>insert</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="erase_key.html" title="erase_key">
+<link rel="next" href="insert_range.html" title="insert_range">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="erase_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="insert_range.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.insert"></a>insert</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.insert.description"></a><h6>
+<a name="id627573"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of insert, given the sequence,
+ position iterator and insertion types.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.insert.synopsis"></a><h6>
+<a name="id627618"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Position</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">insert</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id387592"></a><p class="title"><b>Table 1.85. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Position</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../iterator/concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.metafunctions.insert.expression_semantics"></a><h6>
+<a name="id627816"></a>
+ <a href="insert.html#fusion.algorithm.transformation.metafunctions.insert.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::insert<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Position</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a sequence with an
+ element of type <tt class="computeroutput"><span class="identifier">T</span></tt> inserted
+ at position <tt class="computeroutput"><span class="identifier">Position</span></tt>
+ in <tt class="computeroutput"><span class="identifier">Sequence</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.insert.complexity"></a><h6>
+<a name="id627968"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.insert.header"></a><h6>
+<a name="id627994"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">insert</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">insert</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="erase_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="insert_range.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/insert_range.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/insert_range.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,182 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>insert_range</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="insert.html" title="insert">
+<link rel="next" href="join.html" title="join">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="insert.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="join.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.insert_range"></a>insert_range</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.insert_range.description"></a><h6>
+<a name="id628167"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of insert_range, given the input
+ sequence, position iterator and insertion range types.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.insert_range.synopsis"></a><h6>
+<a name="id628212"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Position</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Range</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">insert_range</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id628336"></a><p class="title"><b>Table 1.86. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Position</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../iterator/concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Range</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.metafunctions.insert_range.expression_semantics"></a><h6>
+<a name="id628520"></a>
+ <a href="insert_range.html#fusion.algorithm.transformation.metafunctions.insert_range.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::insert_range<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Position</span><span class="special">,</span> <span class="identifier">Range</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a sequence with the
+ elements of <tt class="computeroutput"><span class="identifier">Range</span></tt> inserted
+ at position <tt class="computeroutput"><span class="identifier">Position</span></tt>
+ into <tt class="computeroutput"><span class="identifier">Sequence</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.insert_range.complexity"></a><h6>
+<a name="id628672"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.insert_range.header"></a><h6>
+<a name="id628700"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">insert_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">insert_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="insert.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="join.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/join.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/join.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,94 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>join</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="insert_range.html" title="insert_range">
+<link rel="next" href="zip.html" title="zip">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="insert_range.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="zip.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.join"></a>join</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.join.description"></a><h6>
+<a name="id629692"></a>
+ Description
+ </h6>
+<p>
+ Returns the result of joining 2 sequences, given the sequence types.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.join.synopsis"></a><h6>
+<a name="id629720"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">LhSequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">RhSequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">join</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<a name="fusion.algorithm.transformation.metafunctions.join.expression_semantics"></a><h6>
+<a name="id385658"></a>
+ <a href="join.html#fusion.algorithm.transformation.metafunctions.join.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::join<span class="special">&lt;</span><span class="identifier">LhSequence</span><span class="special">,</span> <span class="identifier">RhSequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a sequence containing
+ the elements of <tt class="computeroutput"><span class="identifier">LhSequence</span></tt>
+ followed by the elements of <tt class="computeroutput"><span class="identifier">RhSequence</span></tt>.
+ The order of the elements in the 2 sequences is preserved.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.join.complexity"></a><h6>
+<a name="id629867"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.join.header"></a><h6>
+<a name="id629894"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">join</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">join</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="insert_range.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="zip.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/pop_back.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/pop_back.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,139 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>pop_back</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="zip.html" title="zip">
+<link rel="next" href="pop_front.html" title="pop_front">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="zip.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="pop_front.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.pop_back"></a>pop_back</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.pop_back.description"></a><h6>
+<a name="id630717"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of pop_back, given the input sequence
+ type.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.pop_back.synopsis"></a><h6>
+<a name="id630760"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">pop_back</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id630852"></a><p class="title"><b>Table 1.87. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.metafunctions.pop_back.expression_semantics"></a><h6>
+<a name="id630952"></a>
+ <a href="pop_back.html#fusion.algorithm.transformation.metafunctions.pop_back.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::pop_back<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a sequence with all
+ the elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ except the last element.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.pop_back.complexity"></a><h6>
+<a name="id631066"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.pop_back.header"></a><h6>
+<a name="id631093"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">tranformation</span><span class="special">/</span><span class="identifier">pop_back</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">pop_back</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="zip.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="pop_front.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/pop_front.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/pop_front.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,134 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>pop_front</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="pop_back.html" title="pop_back">
+<link rel="next" href="push_back.html" title="push_back">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="pop_back.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="push_back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.pop_front"></a>pop_front</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.pop_front.description"></a><h6>
+<a name="id631265"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of pop_front, given the input sequence
+ type.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.pop_front.synopsis"></a><h6>
+<a name="id631309"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">pop_front</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id631401"></a><p class="title"><b>Table 1.88. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.metafunctions.pop_front.expression_semantics"></a><h6>
+<a name="id631500"></a>
+ <a href="pop_front.html#fusion.algorithm.transformation.metafunctions.pop_front.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::pop_front<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a sequence with all
+ the elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ except the first element.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.pop_front.complexity"></a><h6>
+<a name="id631613"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<p>
+ /algorithm/transformation/pop_front.hpp&gt;
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="pop_back.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="push_back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/push_back.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/push_back.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,155 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>push_back</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="pop_front.html" title="pop_front">
+<link rel="next" href="push_front.html" title="push_front">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="pop_front.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="push_front.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.push_back"></a>push_back</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.push_back.description"></a><h6>
+<a name="id631665"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of push_back, given the types of
+ the input sequence and element to push.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.push_back.synopsis"></a><h6>
+<a name="id631712"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">push_back</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id631819"></a><p class="title"><b>Table 1.89. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.metafunctions.push_back.expression_semantics"></a><h6>
+<a name="id631954"></a>
+ <a href="push_back.html#fusion.algorithm.transformation.metafunctions.push_back.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::push_back<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a sequence with the
+ elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ and an element of type <tt class="computeroutput"><span class="identifier">T</span></tt>
+ added to the end.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.push_back.complexity"></a><h6>
+<a name="id632085"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<p>
+ /algorithm/transformation/push_back.hpp&gt;
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="pop_front.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="push_front.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/push_front.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/push_front.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,155 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>push_front</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="push_back.html" title="push_back">
+<link rel="next" href="../../../tuple.html" title="Tuple">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="push_back.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../tuple.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.push_front"></a>push_front</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.push_front.description"></a><h6>
+<a name="id632137"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of push_front, given the types
+ of the input sequence and element to push.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.push_front.synopsis"></a><h6>
+<a name="id632184"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">push_front</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id632292"></a><p class="title"><b>Table 1.90. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.metafunctions.push_front.expression_semantics"></a><h6>
+<a name="id632427"></a>
+ <a href="push_front.html#fusion.algorithm.transformation.metafunctions.push_front.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::push_front<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a sequence with the
+ elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ and an element of type <tt class="computeroutput"><span class="identifier">T</span></tt>
+ added to the beginning.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.push_front.complexity"></a><h6>
+<a name="id632559"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<p>
+ /algorithm/transformation/push_front.hpp&gt;
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="push_back.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../tuple.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/remove.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/remove.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,161 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>remove</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="replace_if.html" title="replace_if">
+<link rel="next" href="remove_if.html" title="remove_if">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="replace_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="remove_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.remove"></a>remove</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.remove.description"></a><h6>
+<a name="id622431"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of remove, given the sequence and
+ removal types.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.remove.synopsis"></a><h6>
+<a name="id622482"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">remove</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id622602"></a><p class="title"><b>Table 1.79. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Remove elements of this type
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.metafunctions.remove.expression_semantics"></a><h6>
+<a name="id622741"></a>
+ <a href="remove.html#fusion.algorithm.transformation.metafunctions.remove.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::remove<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a sequence containing
+ the elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ not of type <tt class="computeroutput"><span class="identifier">T</span></tt>. Equivalent
+ to <tt class="computeroutput">result_of::replace_if<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.remove.complexity"></a><h6>
+<a name="id623001"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.remove.header"></a><h6>
+<a name="id623032"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">remove</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">remove</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="replace_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="remove_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/remove_if.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/remove_if.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,162 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>remove_if</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="remove.html" title="remove">
+<link rel="next" href="reverse.html" title="reverse">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="remove.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="reverse.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.remove_if"></a>remove_if</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.remove_if.description"></a><h6>
+<a name="id623226"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of remove_if, given the input sequence
+ and unary <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
+ Lambda Expression</a> predicate types.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.remove_if.synopsis"></a><h6>
+<a name="id623284"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Pred</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">remove_if</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id623406"></a><p class="title"><b>Table 1.80. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Pred</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of unary <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
+ Lambda Expression</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Remove elements which evaluate to <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.metafunctions.remove_if.expression_semantics"></a><h6>
+<a name="id623583"></a>
+ <a href="remove_if.html#fusion.algorithm.transformation.metafunctions.remove_if.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::remove_if<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a sequence containing
+ the elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ for which <tt class="computeroutput"><span class="identifier">Pred</span></tt> evaluates
+ to <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.remove_if.complexity"></a><h6>
+<a name="id623768"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.remove_if.header"></a><h6>
+<a name="id623799"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">remove_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">remove_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="remove.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="reverse.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/replace.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/replace.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,158 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>replace</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="transform.html" title="transform">
+<link rel="next" href="replace_if.html" title="replace_if">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="transform.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="replace_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.replace"></a>replace</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.replace.description"></a><h6>
+<a name="id620992"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of replace, given the types of
+ the input sequence and element to replace.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.replace.synopsis"></a><h6>
+<a name="id621044"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">replace</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id621164"></a><p class="title"><b>Table 1.77. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The type of the search and replacement objects
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.metafunctions.replace.expression_semantics"></a><h6>
+<a name="id621306"></a>
+ <a href="replace.html#fusion.algorithm.transformation.metafunctions.replace.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::replace<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the return type of
+ replace.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.replace.complexity"></a><h6>
+<a name="id621448"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.replace.header"></a><h6>
+<a name="id621479"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">replace</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">replace</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="transform.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="replace_if.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/replace_if.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/replace_if.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,179 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>replace_if</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="replace.html" title="replace">
+<link rel="next" href="remove.html" title="remove">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="replace.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="remove.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.replace_if"></a>replace_if</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.replace_if.description"></a><h6>
+<a name="id621672"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of replace_if, given the types
+ of the sequence, <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a> predicate and replacement object.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.replace_if.synopsis"></a><h6>
+<a name="id621733"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">replace_if</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id621870"></a><p class="title"><b>Table 1.78. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">F</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of unary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Replacement predicate
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The type of the replacement object
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.metafunctions.replace_if.expression_semantics"></a><h6>
+<a name="id622054"></a>
+ <a href="replace_if.html#fusion.algorithm.transformation.metafunctions.replace_if.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::replace_if<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span><span class="identifier">F</span><span class="special">,</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the return type of
+ replace_if.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.replace_if.complexity"></a><h6>
+<a name="id622207"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.replace_if.header"></a><h6>
+<a name="id622239"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">replace_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">replace_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="replace.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="remove.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/reverse.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/reverse.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,138 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>reverse</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="remove_if.html" title="remove_if">
+<link rel="next" href="clear.html" title="clear">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="remove_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="clear.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.reverse"></a>reverse</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.reverse.description"></a><h6>
+<a name="id623991"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of reverse, given the input sequence
+ type.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.reverse.synopsis"></a><h6>
+<a name="id624041"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">reverse</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id624143"></a><p class="title"><b>Table 1.81. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.metafunctions.reverse.expression_semantics"></a><h6>
+<a name="id624247"></a>
+ <a href="reverse.html#fusion.algorithm.transformation.metafunctions.reverse.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::reverse<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a sequence with the
+ elements in the reverse order to <tt class="computeroutput"><span class="identifier">Sequence</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.reverse.complexity"></a><h6>
+<a name="id624374"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.reverse.header"></a><h6>
+<a name="id624405"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">reverse</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">reverse</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="remove_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="clear.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/transform.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/transform.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,293 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>transform</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="filter_if.html" title="filter_if">
+<link rel="next" href="replace.html" title="replace">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="filter_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="replace.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.transform"></a>transform</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.transform.description"></a><h6>
+<a name="id618942"></a>
+ Description
+ </h6>
+<p>
+ For a sequence <tt class="computeroutput"><span class="identifier">seq</span></tt> and
+ function object or function pointer <tt class="computeroutput"><span class="identifier">f</span></tt>,
+ <tt class="computeroutput"><span class="identifier">transform</span></tt> returns a new
+ sequence with elements created by applying <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> to each element of <tt class="computeroutput"><span class="identifier">e</span></tt>
+ of <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.transform.unary_version_synopsis"></a><h6>
+<a name="id619059"></a>
+ <a href="transform.html#fusion.algorithm.transformation.metafunctions.transform.unary_version_synopsis">Unary
+ version synopsis</a>
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::transform<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">transform</span><span class="special">(</span>
+ <span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">F</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id619263"></a><p class="title"><b>Table 1.75. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt>
+ is a valid expression for each element <tt class="computeroutput"><span class="identifier">e</span></tt>
+ of <tt class="computeroutput"><span class="identifier">seq</span></tt>. <tt class="computeroutput">boost::result_of<span class="special">&lt;</span><span class="identifier">F</span><span class="special">(</span><span class="identifier">E</span><span class="special">)&gt;::</span><span class="identifier">type</span></tt> is the return type of <tt class="computeroutput"><span class="identifier">f</span></tt> when called with a value of
+ each element type <tt class="computeroutput"><span class="identifier">E</span></tt>.
+ </p>
+ </td>
+<td>
+ <p>
+ Transformation function
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.algorithm.transformation.metafunctions.transform.expression_semantics"></a><h6>
+<a name="id619535"></a>
+ <a href="transform.html#fusion.algorithm.transformation.metafunctions.transform.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+transform<span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
+ the return values of <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> for each element <tt class="computeroutput"><span class="identifier">e</span></tt>
+ within <tt class="computeroutput"><span class="identifier">seq</span></tt>.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.transform.binary_version_synopsis"></a><h6>
+<a name="id619695"></a>
+ <a href="transform.html#fusion.algorithm.transformation.metafunctions.transform.binary_version_synopsis">Binary
+ version synopsis</a>
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence1</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence2</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">F</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::transform<span class="special">&lt;</span><span class="identifier">Sequence1</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Sequence2</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">transform</span><span class="special">(</span>
+ <span class="identifier">Sequence1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq1</span><span class="special">,</span> <span class="identifier">Sequence2</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq2</span><span class="special">,</span> <span class="identifier">F</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id619963"></a><p class="title"><b>Table 1.76. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq1</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e1</span><span class="special">,</span><span class="identifier">e2</span><span class="special">)</span></tt>
+ is a valid expression for each pair of elements <tt class="computeroutput"><span class="identifier">e1</span></tt>
+ of <tt class="computeroutput"><span class="identifier">seq1</span></tt> and <tt class="computeroutput"><span class="identifier">e2</span></tt> of <tt class="computeroutput"><span class="identifier">seq2</span></tt>.
+ <tt class="computeroutput">boost::result_of<span class="special">&lt;</span><span class="identifier">F</span><span class="special">(</span><span class="identifier">E1</span><span class="special">,</span><span class="identifier">E2</span><span class="special">)&gt;::</span><span class="identifier">type</span></tt> is the return type of <tt class="computeroutput"><span class="identifier">f</span></tt> when called with elements of
+ type <tt class="computeroutput"><span class="identifier">E1</span></tt> and <tt class="computeroutput"><span class="identifier">E2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Transformation function
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
+ the return values of <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e1</span><span class="special">,</span> <span class="identifier">e2</span><span class="special">)</span></tt> for each pair of elements <tt class="computeroutput"><span class="identifier">e1</span></tt> and <tt class="computeroutput"><span class="identifier">e2</span></tt>
+ within <tt class="computeroutput"><span class="identifier">seq1</span></tt> and <tt class="computeroutput"><span class="identifier">seq2</span></tt> respectively.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.transform.complexity"></a><h6>
+<a name="id620452"></a>
+ Complexity
+ </h6>
+<p>
+ Constant. Returns a view which is lazily evaluated.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.transform.header"></a><h6>
+<a name="id620483"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">transform</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">transform</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.algorithm.transformation.metafunctions.transform.example"></a><h6>
+<a name="id620653"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">triple</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">int</span> <span class="identifier">result_type</span><span class="special">;</span>
+
+ <span class="keyword">int</span> <span class="keyword">operator</span><span class="special">()(</span><span class="keyword">int</span> <span class="identifier">t</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">t</span> <span class="special">*</span> <span class="number">3</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">};</span>
+<span class="special">...</span>
+<span class="identifier">assert</span><span class="special">(</span>transform<span class="special">(</span>make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">),</span> <span class="identifier">triple</span><span class="special">())</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">3</span><span class="special">,</span><span class="number">6</span><span class="special">,</span
><span class="number">9</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="filter_if.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="replace.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/zip.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/algorithm/transformation/metafunctions/zip.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,101 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>zip</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="join.html" title="join">
+<link rel="next" href="pop_back.html" title="pop_back">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="join.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="pop_back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.algorithm.transformation.metafunctions.zip"></a>zip</h5></div></div></div>
+<a name="fusion.algorithm.transformation.metafunctions.zip.description"></a><h6>
+<a name="id630065"></a>
+ Description
+ </h6>
+<p>
+ Zips sequences together to form a single sequence, whos members are tuples
+ of the members of the component sequences.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.zip.synopsis"></a><h6>
+<a name="id630094"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence1</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Sequence2</span><span class="special">,</span>
+ <span class="special">...</span>
+ <span class="keyword">typename</span> <span class="identifier">SequenceN</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">zip</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<a name="fusion.algorithm.transformation.metafunctions.zip.expression_semantics"></a><h6>
+<a name="id630232"></a>
+ <a href="zip.html#fusion.algorithm.transformation.metafunctions.zip.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+result_of::zip<span class="special">&lt;</span><span class="identifier">Sequence1</span><span class="special">,</span> <span class="identifier">Sequence2</span><span class="special">,</span> <span class="special">...</span> <span class="identifier">SequenceN</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of the most restrictive
+ traversal category of sequences <tt class="computeroutput"><span class="identifier">Sequence1</span></tt>
+ to <tt class="computeroutput"><span class="identifier">SequenceN</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Return a sequence containing
+ tuples of elements from each sequence. For example, applying zip to tuples
+ <tt class="computeroutput"><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span>
+ <span class="number">3</span><span class="special">)</span></tt>
+ and <tt class="computeroutput"><span class="special">(</span><span class="char">'a'</span><span class="special">,</span> <span class="char">'b'</span><span class="special">,</span>
+ <span class="char">'c'</span><span class="special">)</span></tt>
+ would return <tt class="computeroutput"><span class="special">((</span><span class="number">1</span><span class="special">,</span> <span class="char">'a'</span><span class="special">),(</span><span class="number">2</span><span class="special">,</span> <span class="char">'b'</span><span class="special">),(</span><span class="number">3</span><span class="special">,</span>
+ <span class="char">'c'</span><span class="special">))</span></tt>
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.zip.complexity"></a><h6>
+<a name="id630519"></a>
+ Complexity
+ </h6>
+<p>
+ Constant.
+ </p>
+<a name="fusion.algorithm.transformation.metafunctions.zip.header"></a><h6>
+<a name="id630546"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">/</span><span class="identifier">transformation</span><span class="special">/</span><span class="identifier">zip</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">zip</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="join.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="pop_back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/change_log.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/change_log.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,55 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Change log</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="notes.html" title="Notes">
+<link rel="next" href="acknowledgements.html" title="Acknowledgements">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="notes.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="acknowledgements.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.change_log"></a>Change log</h2></div></div></div>
+<p>
+ This section summarizes significant changes to the Fusion library.
+ </p>
+<div class="itemizedlist"><ul type="disc">
+<li>
+ Sep 27, 2006: Added <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">tuple</span></tt>
+ support.
+ </li>
+<li>
+ Nov 17, 2006: Added <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span></tt>
+ support.
+ </li>
+<li>
+ Feb 15, 2007: Added functional module.
+ </li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="notes.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="acknowledgements.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,70 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Container</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="sequence/operator/comparison/greater_than_equal.html" title="greater
+ than equal">
+<link rel="next" href="container/vector.html" title="vector">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="sequence/operator/comparison/greater_than_equal.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="container/vector.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.container"></a>Container</h2></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">vector</span></dt>
+<dt><span class="section">cons</span></dt>
+<dt><span class="section">list</span></dt>
+<dt><span class="section">set</span></dt>
+<dt><span class="section">map</span></dt>
+<dt><span class="section">Generation</span></dt>
+<dd><dl>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">MetaFunctions</span></dt>
+</dl></dd>
+<dt><span class="section">Conversion</span></dt>
+<dd><dl>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
+</dl></dd>
+</dl></div>
+<p>
+ Fusion provides a few predefined sequences out of the box. These <span class="emphasis"><em>containers</em></span>
+ actually hold heterogenously typed data; unlike Views.
+ These containers are more or less counterparts of those in STL.
+ </p>
+<a name="fusion.container.header"></a><h3>
+<a name="id524528"></a>
+ Header
+ </h3>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">container</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="sequence/operator/comparison/greater_than_equal.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="container/vector.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/cons.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/cons.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,320 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>cons</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../container.html" title="Container">
+<link rel="prev" href="vector.html" title="vector">
+<link rel="next" href="list.html" title="list">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="vector.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="list.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.container.cons"></a>cons</h3></div></div></div>
+<a name="fusion.container.cons.description"></a><h4>
+<a name="id527425"></a>
+ Description
+ </h4>
+<p>
+ <tt class="computeroutput"><span class="identifier">cons</span></tt> is a simple <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>. It is a lisp style recursive list structure where <tt class="computeroutput"><span class="identifier">car</span></tt> is the <span class="emphasis"><em>head</em></span> and
+ <tt class="computeroutput"><span class="identifier">cdr</span></tt> is the <span class="emphasis"><em>tail</em></span>:
+ usually another cons structure or <tt class="computeroutput"><span class="identifier">nil</span></tt>:
+ the empty list. Fusion's list is built on top of this more
+ primitive data structure. It is more efficient than vector when the target sequence
+ is constructed piecemeal (a data at a time). The runtime cost of access to
+ each element is peculiarly constant (see <a href="../notes.html#fusion.notes.recursive_inlined_functions">Recursive
+ Inlined Functions</a>).
+ </p>
+<a name="fusion.container.cons.header"></a><h4>
+<a name="id527570"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">list</span><span class="special">/</span><span class="identifier">cons</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">cons</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.cons.synopsis"></a><h4>
+<a name="id527738"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Car</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Cdr</span> <span class="special">=</span> <span class="identifier">nil</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">cons</span><span class="special">;</span>
+</pre>
+<a name="fusion.container.cons.template_parameters"></a><h4>
+<a name="id527846"></a>
+ Template parameters
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Car</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Head type
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Cdr</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Tail type
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">nil</span></tt>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.container.cons.model_of"></a><h4>
+<a name="id527996"></a>
+ Model of
+ </h4>
+<div class="itemizedlist"><ul type="disc"><li><a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a></li></ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">nil</span></tt></span></dt>
+<dd><p>
+ An empty <tt class="computeroutput"><span class="identifier">cons</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">C</span></tt></span></dt>
+<dd><p>
+ A <tt class="computeroutput"><span class="identifier">cons</span></tt> type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">l</span></tt>,
+ <tt class="computeroutput"><span class="identifier">l2</span></tt></span></dt>
+<dd><p>
+ Instances of <tt class="computeroutput"><span class="identifier">cons</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">car</span></tt></span></dt>
+<dd><p>
+ An arbitrary data
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">cdr</span></tt></span></dt>
+<dd><p>
+ Another <tt class="computeroutput"><span class="identifier">cons</span></tt> list
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
+<dd><p>
+ A <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">N</span></tt></span></dt>
+<dd><p>
+ An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.container.cons.expression_semantics"></a><h4>
+<a name="id528277"></a>
+ Expression Semantics
+ </h4>
+<p>
+ Semantics of an expression is defined only where it differs from, or is not
+ defined in <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">nil</span><span class="special">()</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates an empty list.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">C</span><span class="special">()</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a cons with default constructed elements.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">C</span><span class="special">(</span><span class="identifier">car</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a cons with <tt class="computeroutput"><span class="identifier">car</span></tt>
+ head and default constructed tail.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">C</span><span class="special">(</span><span class="identifier">car</span><span class="special">,</span>
+ <span class="identifier">cdr</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a cons with <tt class="computeroutput"><span class="identifier">car</span></tt>
+ head and <tt class="computeroutput"><span class="identifier">cdr</span></tt> tail.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">C</span><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Copy constructs a cons from a <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>, <tt class="computeroutput"><span class="identifier">s</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">l</span> <span class="special">=</span>
+ <span class="identifier">s</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Assigns to a cons, <tt class="computeroutput"><span class="identifier">l</span></tt>,
+ from a <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>, <tt class="computeroutput"><span class="identifier">s</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">at<span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">l</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The Nth element from the beginning of the sequence; see at.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<div class="sidebar"><p>
+ <span class="inlinemediaobject"><img src="../../images/note.png" alt="note"></span> <tt class="computeroutput">at<span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">l</span><span class="special">)</span></tt> is provided
+ for convenience and compatibility with the original Boost.Tuple
+ library, despite <tt class="computeroutput"><span class="identifier">cons</span></tt> being
+ a <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a>
+ only (<tt class="computeroutput"><span class="identifier">at</span></tt> is supposed to be
+ a <a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> requirement). The runtime complexity of at is constant (see <a href="../notes.html#fusion.notes.recursive_inlined_functions">Recursive
+ Inlined Functions</a>).
+ </p></div>
+<a name="fusion.container.cons.example"></a><h4>
+<a name="id528928"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="identifier">cons</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="identifier">cons</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="identifier">l</span><span class="special">(</span><span class="number">12</span><span class="special">,</span> <span class="identifier">cons</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;(</span><span class="number">5.5f</span><span class="special">));</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> at_c<span class="special">&lt;</span><span class="number">0</span><span class="special">&gt;(</span><span class="identifier">l</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> at_c<span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;(</span><span class="identifier">l</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="vector.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="list.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/conversion.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/conversion.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,54 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Conversion</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../container.html" title="Container">
+<link rel="prev" href="generation/metafunctions/map_tie.html" title="map_tie">
+<link rel="next" href="conversion/functions.html" title="Functions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="generation/metafunctions/map_tie.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="conversion/functions.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.container.conversion"></a>Conversion</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
+</dl></div>
+<p>
+ All fusion sequences can be converted to one of the Container
+ types using one of these conversion functions.
+ </p>
+<a name="fusion.container.conversion.header"></a><h4>
+<a name="id553409"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">convert</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="generation/metafunctions/map_tie.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="conversion/functions.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/conversion/functions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/conversion/functions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,45 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Functions</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../conversion.html" title="Conversion">
+<link rel="prev" href="../conversion.html" title="Conversion">
+<link rel="next" href="functions/as_list.html" title="as_list">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../conversion.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../conversion.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/as_list.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.container.conversion.functions"></a>Functions</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">as_list</span></dt>
+<dt><span class="section">as_vector</span></dt>
+<dt><span class="section">as_set</span></dt>
+<dt><span class="section">as_map</span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../conversion.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../conversion.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/as_list.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/conversion/functions/as_list.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/conversion/functions/as_list.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,134 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>as_list</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="../functions.html" title="Functions">
+<link rel="next" href="as_vector.html" title="as_vector">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="as_vector.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.conversion.functions.as_list"></a>as_list</h5></div></div></div>
+<a name="fusion.container.conversion.functions.as_list.description"></a><h6>
+<a name="id553544"></a>
+ Description
+ </h6>
+<p>
+ Convert a fusion sequence to a list.
+ </p>
+<a name="fusion.container.conversion.functions.as_list.synopsis"></a><h6>
+<a name="id553593"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_list</span><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">as_list</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_list</span><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">as_list</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<a name="fusion.container.conversion.functions.as_list.parameters"></a><h6>
+<a name="id553851"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An instance of Sequence
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to convert.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.conversion.functions.as_list.expression_semantics"></a><h6>
+<a name="id553959"></a>
+ <a href="as_list.html#fusion.container.conversion.functions.as_list.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">as_list</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: result_of::as_list<tt class="computeroutput"><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Convert a fusion sequence,
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>, to a list.
+ </p>
+<a name="fusion.container.conversion.functions.as_list.header"></a><h6>
+<a name="id554121"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">list</span><span class="special">/</span><span class="identifier">convert</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">as_list</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.conversion.functions.as_list.example"></a><h6>
+<a name="id554291"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">as_list</span><span class="special">(</span>make_vector<span class="special">(</span><span class="char">'x'</span><span class="special">,</span> <span class="number">123</span><span class="special">,</span> <span class="string">"hello"</span><span class="special">))</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="as_vector.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/conversion/functions/as_map.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/conversion/functions/as_map.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,141 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>as_map</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="as_set.html" title="as_set">
+<link rel="next" href="../metafunctions.html" title="Metafunctions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="as_set.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.conversion.functions.as_map"></a>as_map</h5></div></div></div>
+<a name="fusion.container.conversion.functions.as_map.description"></a><h6>
+<a name="id556151"></a>
+ Description
+ </h6>
+<p>
+ Convert a fusion sequence to a map.
+ </p>
+<a name="fusion.container.conversion.functions.as_map.synopsis"></a><h6>
+<a name="id556199"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_map</span><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">as_map</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_map</span><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">as_map</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<a name="fusion.container.conversion.functions.as_map.parameters"></a><h6>
+<a name="id556457"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An instance of Sequence
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to convert.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.conversion.functions.as_map.expression_semantics"></a><h6>
+<a name="id556565"></a>
+ <a href="as_map.html#fusion.container.conversion.functions.as_map.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">as_map</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: result_of::as_map<tt class="computeroutput"><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Convert a fusion sequence,
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>, to a map.
+ </p>
+<p>
+ <span class="bold"><b>Precondition</b></span>: The elements of the sequence
+ are assumed to be __fusion<span class="underline">pair</span>_s.
+ There may be no duplicate fusion::pair key types.
+ </p>
+<a name="fusion.container.conversion.functions.as_map.header"></a><h6>
+<a name="id556772"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">map</span><span class="special">/</span><span class="identifier">convert</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">as_map</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.conversion.functions.as_map.example"></a><h6>
+<a name="id556941"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">as_map</span><span class="special">(</span>make_vector<span class="special">(</span>
+ make_pair<span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;(</span><span class="char">'X'</span><span class="special">)</span>
+ <span class="special">,</span> make_pair<span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;(</span><span class="string">"Men"</span><span class="special">)))</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="as_set.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/conversion/functions/as_set.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/conversion/functions/as_set.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,138 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>as_set</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="as_vector.html" title="as_vector">
+<link rel="next" href="as_map.html" title="as_map">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="as_vector.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="as_map.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.conversion.functions.as_set"></a>as_set</h5></div></div></div>
+<a name="fusion.container.conversion.functions.as_set.description"></a><h6>
+<a name="id555276"></a>
+ Description
+ </h6>
+<p>
+ Convert a fusion sequence to a set.
+ </p>
+<a name="fusion.container.conversion.functions.as_set.synopsis"></a><h6>
+<a name="id555325"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_set</span><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">as_set</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_set</span><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">as_set</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<a name="fusion.container.conversion.functions.as_set.parameters"></a><h6>
+<a name="id555582"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An instance of Sequence
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to convert.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.conversion.functions.as_set.expression_semantics"></a><h6>
+<a name="id555690"></a>
+ <a href="as_set.html#fusion.container.conversion.functions.as_set.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">as_set</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: result_of::as_set<tt class="computeroutput"><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Convert a fusion sequence,
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>, to a set.
+ </p>
+<p>
+ <span class="bold"><b>Precondition</b></span>: There may be no duplicate
+ key types.
+ </p>
+<a name="fusion.container.conversion.functions.as_set.header"></a><h6>
+<a name="id555863"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">set</span><span class="special">/</span><span class="identifier">convert</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">as_set</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.conversion.functions.as_set.example"></a><h6>
+<a name="id556032"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">as_set</span><span class="special">(</span>make_vector<span class="special">(</span><span class="char">'x'</span><span class="special">,</span> <span class="number">123</span><span class="special">,</span> <span class="string">"hello"</span><span class="special">))</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="as_vector.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="as_map.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/conversion/functions/as_vector.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/conversion/functions/as_vector.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,134 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>as_vector</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="as_list.html" title="as_list">
+<link rel="next" href="as_set.html" title="as_set">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="as_list.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="as_set.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.conversion.functions.as_vector"></a>as_vector</h5></div></div></div>
+<a name="fusion.container.conversion.functions.as_vector.description"></a><h6>
+<a name="id554410"></a>
+ Description
+ </h6>
+<p>
+ Convert a fusion sequence to a vector.
+ </p>
+<a name="fusion.container.conversion.functions.as_vector.synopsis"></a><h6>
+<a name="id554458"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_vector</span><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">as_vector</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_vector</span><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">as_vector</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<a name="fusion.container.conversion.functions.as_vector.parameters"></a><h6>
+<a name="id554717"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An instance of Sequence
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to convert.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.conversion.functions.as_vector.expression_semantics"></a><h6>
+<a name="id554825"></a>
+ <a href="as_vector.html#fusion.container.conversion.functions.as_vector.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">as_vector</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: result_of::as_vector<tt class="computeroutput"><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Convert a fusion sequence,
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>, to a vector.
+ </p>
+<a name="fusion.container.conversion.functions.as_vector.header"></a><h6>
+<a name="id554988"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">vector</span><span class="special">/</span><span class="identifier">convert</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">as_vector</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.conversion.functions.as_vector.example"></a><h6>
+<a name="id555158"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">as_vector</span><span class="special">(</span>make_list<span class="special">(</span><span class="char">'x'</span><span class="special">,</span> <span class="number">123</span><span class="special">,</span> <span class="string">"hello"</span><span class="special">))</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="as_list.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="as_set.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/conversion/metafunctions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/conversion/metafunctions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,45 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Metafunctions</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../conversion.html" title="Conversion">
+<link rel="prev" href="functions/as_map.html" title="as_map">
+<link rel="next" href="metafunctions/as_list.html" title="as_list">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/as_map.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../conversion.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/as_list.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.container.conversion.metafunctions"></a>Metafunctions</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">as_list</span></dt>
+<dt><span class="section">as_vector</span></dt>
+<dt><span class="section">as_set</span></dt>
+<dt><span class="section">as_map</span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/as_map.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../conversion.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/as_list.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/conversion/metafunctions/as_list.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/conversion/metafunctions/as_list.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,130 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>as_list</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="../metafunctions.html" title="Metafunctions">
+<link rel="next" href="as_vector.html" title="as_vector">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="as_vector.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.conversion.metafunctions.as_list"></a>as_list</h5></div></div></div>
+<a name="fusion.container.conversion.metafunctions.as_list.description"></a><h6>
+<a name="id557136"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of as_list.
+ </p>
+<a name="fusion.container.conversion.metafunctions.as_list.synopsis"></a><h6>
+<a name="id557186"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">as_list</span><span class="special">;</span>
+</pre>
+<a name="fusion.container.conversion.metafunctions.as_list.parameters"></a><h6>
+<a name="id557267"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A fusion Sequence
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence type to convert.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.conversion.metafunctions.as_list.expression_semantics"></a><h6>
+<a name="id557384"></a>
+ <a href="as_list.html#fusion.container.conversion.metafunctions.as_list.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_list</span><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">;</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A list with same elements as the
+ input sequence, <tt class="computeroutput"><span class="identifier">Sequence</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Convert a fusion sequence,
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>, to a list.
+ </p>
+<a name="fusion.container.conversion.metafunctions.as_list.header"></a><h6>
+<a name="id557541"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">list</span><span class="special">/</span><span class="identifier">convert</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">as_list</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.conversion.metafunctions.as_list.example"></a><h6>
+<a name="id557711"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_list</span><span class="special">&lt;</span>vector<span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="as_vector.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/conversion/metafunctions/as_map.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/conversion/metafunctions/as_map.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,137 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>as_map</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="as_set.html" title="as_set">
+<link rel="next" href="../../../view.html" title="View">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="as_set.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../view.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.conversion.metafunctions.as_map"></a>as_map</h5></div></div></div>
+<a name="fusion.container.conversion.metafunctions.as_map.description"></a><h6>
+<a name="id559258"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of as_map.
+ </p>
+<a name="fusion.container.conversion.metafunctions.as_map.synopsis"></a><h6>
+<a name="id559307"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">as_map</span><span class="special">;</span>
+</pre>
+<a name="fusion.container.conversion.metafunctions.as_map.parameters"></a><h6>
+<a name="id559389"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A fusion Sequence
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to convert.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.conversion.metafunctions.as_map.expression_semantics"></a><h6>
+<a name="id559505"></a>
+ <a href="as_map.html#fusion.container.conversion.metafunctions.as_map.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_map</span><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">;</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A map with same elements as the
+ input sequence, <tt class="computeroutput"><span class="identifier">Sequence</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Convert a fusion sequence,
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>, to a map.
+ </p>
+<p>
+ <span class="bold"><b>Precondition</b></span>: The elements of the sequence
+ are assumed to be __fusion<span class="underline">pair</span>_s.
+ There may be no duplicate fusion::pair key types.
+ </p>
+<a name="fusion.container.conversion.metafunctions.as_map.header"></a><h6>
+<a name="id559707"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">map</span><span class="special">/</span><span class="identifier">convert</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">as_map</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.conversion.metafunctions.as_map.example"></a><h6>
+<a name="id559877"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_map</span><span class="special">&lt;</span>vector<span class="special">&lt;</span>
+ fusion::pair<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span>
+ <span class="special">,</span> fusion::pair<span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="as_set.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../view.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/conversion/metafunctions/as_set.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/conversion/metafunctions/as_set.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,134 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>as_set</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="as_vector.html" title="as_vector">
+<link rel="next" href="as_map.html" title="as_map">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="as_vector.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="as_map.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.conversion.metafunctions.as_set"></a>as_set</h5></div></div></div>
+<a name="fusion.container.conversion.metafunctions.as_set.description"></a><h6>
+<a name="id558542"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of as_set.
+ </p>
+<a name="fusion.container.conversion.metafunctions.as_set.synopsis"></a><h6>
+<a name="id558592"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">as_set</span><span class="special">;</span>
+</pre>
+<a name="fusion.container.conversion.metafunctions.as_set.parameters"></a><h6>
+<a name="id558674"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A fusion Sequence
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to convert.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.conversion.metafunctions.as_set.expression_semantics"></a><h6>
+<a name="id558791"></a>
+ <a href="as_set.html#fusion.container.conversion.metafunctions.as_set.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_set</span><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">;</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A set with same elements as the
+ input sequence, <tt class="computeroutput"><span class="identifier">Sequence</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Convert a fusion sequence,
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>, to a set.
+ </p>
+<p>
+ <span class="bold"><b>Precondition</b></span>: There may be no duplicate
+ key types.
+ </p>
+<a name="fusion.container.conversion.metafunctions.as_set.header"></a><h6>
+<a name="id558960"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">set</span><span class="special">/</span><span class="identifier">convert</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">as_set</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.conversion.metafunctions.as_set.example"></a><h6>
+<a name="id559130"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_set</span><span class="special">&lt;</span>vector<span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="as_vector.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="as_map.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/conversion/metafunctions/as_vector.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/conversion/metafunctions/as_vector.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,130 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>as_vector</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="as_list.html" title="as_list">
+<link rel="next" href="as_set.html" title="as_set">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="as_list.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="as_set.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.conversion.metafunctions.as_vector"></a>as_vector</h5></div></div></div>
+<a name="fusion.container.conversion.metafunctions.as_vector.description"></a><h6>
+<a name="id557839"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of as_vector.
+ </p>
+<a name="fusion.container.conversion.metafunctions.as_vector.synopsis"></a><h6>
+<a name="id557888"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">as_vector</span><span class="special">;</span>
+</pre>
+<a name="fusion.container.conversion.metafunctions.as_vector.parameters"></a><h6>
+<a name="id557970"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A fusion Sequence
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to convert.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.conversion.metafunctions.as_vector.expression_semantics"></a><h6>
+<a name="id558084"></a>
+ <a href="as_vector.html#fusion.container.conversion.metafunctions.as_vector.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_vector</span><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">;</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A vector with same elements as
+ the input sequence, <tt class="computeroutput"><span class="identifier">Sequence</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Convert a fusion sequence,
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>, to a vector.
+ </p>
+<a name="fusion.container.conversion.metafunctions.as_vector.header"></a><h6>
+<a name="id558242"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">vector</span><span class="special">/</span><span class="identifier">convert</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">as_vector</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.conversion.metafunctions.as_vector.example"></a><h6>
+<a name="id558413"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">as_vector</span><span class="special">&lt;</span>list<span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="as_list.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="as_set.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,54 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generation</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../container.html" title="Container">
+<link rel="prev" href="map.html" title="map">
+<link rel="next" href="generation/functions.html" title="Functions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="map.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="generation/functions.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.container.generation"></a>Generation</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">MetaFunctions</span></dt>
+</dl></div>
+<p>
+ These are the functions that you can use to generate various forms of Container from elemental values.
+ </p>
+<a name="fusion.container.generation.header"></a><h4>
+<a name="id534905"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">generation</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">generation</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="map.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="generation/functions.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/functions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/functions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,50 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Functions</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../generation.html" title="Generation">
+<link rel="prev" href="../generation.html" title="Generation">
+<link rel="next" href="functions/make_list.html" title="make_list">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../generation.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../generation.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/make_list.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.container.generation.functions"></a>Functions</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">make_list</span></dt>
+<dt><span class="section">make_cons</span></dt>
+<dt><span class="section">make_vector</span></dt>
+<dt><span class="section">make_set</span></dt>
+<dt><span class="section">make_map</span></dt>
+<dt><span class="section">Tiers</span></dt>
+<dt><span class="section">list_tie</span></dt>
+<dt><span class="section">vector_tie</span></dt>
+<dt><span class="section">map_tie</span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../generation.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../generation.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/make_list.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/functions/list_tie.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/functions/list_tie.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,145 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>list_tie</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="tiers.html" title="Tiers">
+<link rel="next" href="vector_tie.html" title="vector_tie">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="tiers.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="vector_tie.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.generation.functions.list_tie"></a>list_tie</h5></div></div></div>
+<a name="fusion.container.generation.functions.list_tie.description"></a><h6>
+<a name="id542119"></a>
+ Description
+ </h6>
+<p>
+ Constructs a tie using a list sequence.
+ </p>
+<a name="fusion.container.generation.functions.list_tie.synopsis"></a><h6>
+<a name="id542168"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">&gt;</span>
+list<span class="special">&lt;</span><span class="identifier">T0</span><span class="special">&amp;,</span> <span class="identifier">T1</span><span class="special">&amp;,...</span> <span class="identifier">TN</span><span class="special">&amp;&gt;</span>
+<span class="identifier">list_tie</span><span class="special">(</span><span class="identifier">T0</span><span class="special">&amp;</span> <span class="identifier">x0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">&amp;</span> <span class="identifier">x1</span><span class="special">...</span> <span class="identifier">TN</span><span class="special">&amp;</span> <span class="identifier">xN</span><span class="special">);</span>
+</pre>
+<p>
+ The variadic function accepts <tt class="computeroutput"><span class="number">0</span></tt>
+ to <tt class="computeroutput"><span class="identifier">FUSION_MAX_LIST_SIZE</span></tt>
+ elements, where <tt class="computeroutput"><span class="identifier">FUSION_MAX_LIST_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>. You may define the preprocessor constant
+ <tt class="computeroutput"><span class="identifier">FUSION_MAX_LIST_SIZE</span></tt>
+ before including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_LIST_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.generation.functions.list_tie.parameters"></a><h6>
+<a name="id542486"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">x0</span><span class="special">,</span>
+ <span class="identifier">x1</span><span class="special">,...</span>
+ <span class="identifier">xN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Instances of <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The arguments to <tt class="computeroutput"><span class="identifier">list_tie</span></tt>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.generation.functions.list_tie.expression_semantics"></a><h6>
+<a name="id542662"></a>
+ <a href="list_tie.html#fusion.container.generation.functions.list_tie.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">list_tie</span><span class="special">(</span><span class="identifier">x0</span><span class="special">,</span> <span class="identifier">x1</span><span class="special">,...</span> <span class="identifier">xN</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: list&lt;T0&amp;, T1&amp;,...
+ TN&amp;&gt;
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Create a list of references from <tt class="computeroutput"><span class="identifier">x0</span><span class="special">,</span> <span class="identifier">x1</span><span class="special">,...</span> <span class="identifier">xN</span></tt>.
+ </p>
+<a name="fusion.container.generation.functions.list_tie.header"></a><h6>
+<a name="id542832"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">list_tie</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">list_tie</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.generation.functions.list_tie.example"></a><h6>
+<a name="id543002"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">int</span> <span class="identifier">i</span> <span class="special">=</span> <span class="number">123</span><span class="special">;</span>
+<span class="keyword">double</span> <span class="identifier">d</span> <span class="special">=</span> <span class="number">123.456</span><span class="special">;</span>
+<span class="identifier">list_tie</span><span class="special">(</span><span class="identifier">i</span><span class="special">,</span> <span class="identifier">d</span><span class="special">)</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="tiers.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="vector_tie.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/functions/make_cons.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/functions/make_cons.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,164 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>make_cons</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="make_list.html" title="make_list">
+<link rel="next" href="make_vector.html" title="make_vector">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_list.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_vector.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.generation.functions.make_cons"></a>make_cons</h5></div></div></div>
+<a name="fusion.container.generation.functions.make_cons.description"></a><h6>
+<a name="id536247"></a>
+ Description
+ </h6>
+<p>
+ Create a cons
+ from <tt class="computeroutput"><span class="identifier">car</span></tt> (<span class="emphasis"><em>head</em></span>)
+ and optional <tt class="computeroutput"><span class="identifier">cdr</span></tt> (<span class="emphasis"><em>tail</em></span>).
+ </p>
+<a name="fusion.container.generation.functions.make_cons.synopsis"></a><h6>
+<a name="id536327"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Car</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::make_cons<span class="special">&lt;</span><span class="identifier">Car</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">make_cons</span><span class="special">(</span><span class="identifier">Car</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">car</span><span class="special">);</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Car</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Cdr</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::make_cons<span class="special">&lt;</span><span class="identifier">Car</span><span class="special">,</span> <span class="identifier">Cdr</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">make_cons</span><span class="special">(</span><span class="identifier">Car</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">car</span><span class="special">,</span> <span class="identifier">Cdr</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">cdr</span><span class="special">);</span>
+</pre>
+<a name="fusion.container.generation.functions.make_cons.parameters"></a><h6>
+<a name="id536662"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">car</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Instance of <tt class="computeroutput"><span class="identifier">Car</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The list's head
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">cdr</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Instance of <tt class="computeroutput"><span class="identifier">Cdr</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The list's tail (optional)
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.container.generation.functions.make_cons.expression_semantics"></a><h6>
+<a name="id536829"></a>
+ <a href="make_cons.html#fusion.container.generation.functions.make_cons.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">make_cons</span><span class="special">(</span><span class="identifier">car</span><span class="special">,</span> <span class="identifier">cdr</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: result_of::make_cons<tt class="computeroutput"><span class="special">&lt;</span><span class="identifier">Car</span><span class="special">,</span> <span class="identifier">Cdr</span><span class="special">&gt;::</span><span class="identifier">type</span></tt> or result_of::make_cons<tt class="computeroutput"><span class="special">&lt;</span><span class="identifier">Car</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Create a cons from <tt class="computeroutput"><span class="identifier">car</span></tt>
+ (<span class="emphasis"><em>head</em></span>) and optional <tt class="computeroutput"><span class="identifier">cdr</span></tt>
+ (<span class="emphasis"><em>tail</em></span>).
+ </p>
+<a name="fusion.container.generation.functions.make_cons.header"></a><h6>
+<a name="id537083"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_cons</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_cons</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.generation.functions.make_cons.example"></a><h6>
+<a name="id537253"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">make_cons</span><span class="special">(</span><span class="char">'x'</span><span class="special">,</span> <span class="identifier">make_cons</span><span class="special">(</span><span class="number">123</span><span class="special">))</span>
+</pre>
+<a name="fusion.container.generation.functions.make_cons.see_also"></a><h6>
+<a name="id537329"></a>
+ <a href="make_cons.html#fusion.container.generation.functions.make_cons.see_also">See
+ also</a>
+ </h6>
+<p>
+ boost::ref
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_list.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_vector.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/functions/make_list.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/functions/make_list.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,151 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>make_list</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="../functions.html" title="Functions">
+<link rel="next" href="make_cons.html" title="make_cons">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_cons.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.generation.functions.make_list"></a>make_list</h5></div></div></div>
+<a name="fusion.container.generation.functions.make_list.description"></a><h6>
+<a name="id535104"></a>
+ Description
+ </h6>
+<p>
+ Create a list
+ from one or more values.
+ </p>
+<a name="fusion.container.generation.functions.make_list.synopsis"></a><h6>
+<a name="id535153"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::make_list<span class="special">&lt;</span><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">make_list</span><span class="special">(</span><span class="identifier">T0</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">x0</span><span class="special">,</span> <span class="identifier">T1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">x1</span><span class="special">...</span> <span class="identifier">TN</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">xN</span><span class="special">);</span>
+</pre>
+<p>
+ The variadic function accepts <tt class="computeroutput"><span class="number">0</span></tt>
+ to <tt class="computeroutput"><span class="identifier">FUSION_MAX_LIST_SIZE</span></tt>
+ elements, where <tt class="computeroutput"><span class="identifier">FUSION_MAX_LIST_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>. You may define the preprocessor constant
+ <tt class="computeroutput"><span class="identifier">FUSION_MAX_LIST_SIZE</span></tt>
+ before including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_LIST_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.generation.functions.make_list.parameters"></a><h6>
+<a name="id535518"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">x0</span><span class="special">,</span>
+ <span class="identifier">x1</span><span class="special">,...</span>
+ <span class="identifier">xN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Instances of <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The arguments to <tt class="computeroutput"><span class="identifier">make_list</span></tt>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.generation.functions.make_list.expression_semantics"></a><h6>
+<a name="id535695"></a>
+ <a href="make_list.html#fusion.container.generation.functions.make_list.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">make_list</span><span class="special">(</span><span class="identifier">x0</span><span class="special">,</span> <span class="identifier">x1</span><span class="special">,...</span> <span class="identifier">xN</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: result_of::make_list<tt class="computeroutput"><span class="special">&lt;</span><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Create a list from <tt class="computeroutput"><span class="identifier">x0</span><span class="special">,</span> <span class="identifier">x1</span><span class="special">,...</span> <span class="identifier">xN</span></tt>.
+ </p>
+<a name="fusion.container.generation.functions.make_list.header"></a><h6>
+<a name="id535920"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_list</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_list</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.generation.functions.make_list.example"></a><h6>
+<a name="id536090"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">make_list</span><span class="special">(</span><span class="number">123</span><span class="special">,</span> <span class="string">"hello"</span><span class="special">,</span> <span class="number">12.5</span><span class="special">)</span>
+</pre>
+<a name="fusion.container.generation.functions.make_list.see_also"></a><h6>
+<a name="id536167"></a>
+ <a href="make_list.html#fusion.container.generation.functions.make_list.see_also">See
+ also</a>
+ </h6>
+<p>
+ boost::ref
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_cons.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/functions/make_map.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/functions/make_map.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,192 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>make_map</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="make_set.html" title="make_set">
+<link rel="next" href="tiers.html" title="Tiers">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_set.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tiers.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.generation.functions.make_map"></a>make_map</h5></div></div></div>
+<a name="fusion.container.generation.functions.make_map.description"></a><h6>
+<a name="id539731"></a>
+ Description
+ </h6>
+<p>
+ Create a map
+ from one or more key/data pairs.
+ </p>
+<a name="fusion.container.generation.functions.make_map.synopsis"></a><h6>
+<a name="id539780"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">K0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">K1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">KN</span>
+ <span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::make_map<span class="special">&lt;</span><span class="identifier">K0</span><span class="special">,</span> <span class="identifier">K0</span><span class="special">,...</span> <span class="identifier">KN</span><span class="special">,</span> <span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">make_map</span><span class="special">(</span><span class="identifier">T0</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">x0</span><span class="special">,</span> <span class="identifier">T1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">x1</span><span class="special">...</span> <span class="identifier">TN</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">xN</span><span class="special">);</span>
+</pre>
+<p>
+ The variadic function accepts <tt class="computeroutput"><span class="number">0</span></tt>
+ to <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ <sup>[<a name="id540156" href="#ftn.id540156">9</a>]</sup>
+ elements, where <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>. You may define the preprocessor constant
+ <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ before including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_VECTOR_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.generation.functions.make_map.parameters"></a><h6>
+<a name="id540262"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">K0</span><span class="special">,</span>
+ <span class="identifier">K1</span><span class="special">,...</span>
+ <span class="identifier">KN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The key types
+ </p>
+ </td>
+<td>
+ <p>
+ Keys associated with <tt class="computeroutput"><span class="identifier">x0</span><span class="special">,</span> <span class="identifier">x1</span><span class="special">,...</span> <span class="identifier">xN</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">x0</span><span class="special">,</span>
+ <span class="identifier">x1</span><span class="special">,...</span>
+ <span class="identifier">xN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Instances of <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The arguments to <tt class="computeroutput"><span class="identifier">make_map</span></tt>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.container.generation.functions.make_map.expression_semantics"></a><h6>
+<a name="id540529"></a>
+ <a href="make_map.html#fusion.container.generation.functions.make_map.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">make_map</span><span class="special">&lt;</span><span class="identifier">K0</span><span class="special">,</span> <span class="identifier">K1</span><span class="special">,...</span> <span class="identifier">KN</span><span class="special">&gt;(</span><span class="identifier">x0</span><span class="special">,</span> <span class="identifier">x1</span><span class="special">,...</span> <span class="identifier">xN</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: result_of::make_map<tt class="computeroutput"><span class="special">&lt;</span><span class="identifier">K0</span><span class="special">,</span> <span class="identifier">K0</span><span class="special">,...</span> <span class="identifier">KN</span><span class="special">,</span> <span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Create a map from <tt class="computeroutput"><span class="identifier">K0</span><span class="special">,</span> <span class="identifier">K1</span><span class="special">,...</span> <span class="identifier">KN</span></tt>
+ keys and <tt class="computeroutput"><span class="identifier">x0</span><span class="special">,</span>
+ <span class="identifier">x1</span><span class="special">,...</span>
+ <span class="identifier">xN</span></tt> data.
+ </p>
+<p>
+ <span class="bold"><b>Precondition</b></span>: There may be no duplicate
+ key types.
+ </p>
+<a name="fusion.container.generation.functions.make_map.header"></a><h6>
+<a name="id540865"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_map</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_map</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.generation.functions.make_map.example"></a><h6>
+<a name="id541035"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">make_map</span><span class="special">(</span>
+ make_pair<span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;(</span><span class="char">'X'</span><span class="special">)</span>
+ <span class="special">,</span> make_pair<span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;(</span><span class="string">"Men"</span><span class="special">))</span>
+</pre>
+<a name="fusion.container.generation.functions.make_map.see_also"></a><h6>
+<a name="id541167"></a>
+ <a href="make_map.html#fusion.container.generation.functions.make_map.see_also">See
+ also</a>
+ </h6>
+<p>
+ boost::ref,
+ fusion::pair
+ </p>
+<div class="footnotes">
+<br><hr width="100" align="left">
+<div class="footnote"><p><sup>[<a name="ftn.id540156" href="#id540156">9</a>] </sup>
+ <tt class="computeroutput"><span class="identifier">map</span></tt> is implemented
+ in terms of the vector. That is why we reuse <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ </p></div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_set.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tiers.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/functions/make_set.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/functions/make_set.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,163 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>make_set</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="make_vector.html" title="make_vector">
+<link rel="next" href="make_map.html" title="make_map">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_vector.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_map.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.generation.functions.make_set"></a>make_set</h5></div></div></div>
+<a name="fusion.container.generation.functions.make_set.description"></a><h6>
+<a name="id538548"></a>
+ Description
+ </h6>
+<p>
+ Create a set
+ from one or more values.
+ </p>
+<a name="fusion.container.generation.functions.make_set.synopsis"></a><h6>
+<a name="id538597"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::make_set<span class="special">&lt;</span><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">make_set</span><span class="special">(</span><span class="identifier">T0</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">x0</span><span class="special">,</span> <span class="identifier">T1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">x1</span><span class="special">...</span> <span class="identifier">TN</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">xN</span><span class="special">);</span>
+</pre>
+<p>
+ The variadic function accepts <tt class="computeroutput"><span class="number">0</span></tt>
+ to <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ <sup>[<a name="id538886" href="#ftn.id538886">8</a>]</sup>
+ elements, where <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>. You may define the preprocessor constant
+ <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ before including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_VECTOR_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.generation.functions.make_set.parameters"></a><h6>
+<a name="id538991"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">x0</span><span class="special">,</span>
+ <span class="identifier">x1</span><span class="special">,...</span>
+ <span class="identifier">xN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Instances of <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The arguments to <tt class="computeroutput"><span class="identifier">make_set</span></tt>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.generation.functions.make_set.expression_semantics"></a><h6>
+<a name="id539167"></a>
+ <a href="make_set.html#fusion.container.generation.functions.make_set.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">make_set</span><span class="special">(</span><span class="identifier">x0</span><span class="special">,</span> <span class="identifier">x1</span><span class="special">,...</span> <span class="identifier">xN</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: result_of::make_set<tt class="computeroutput"><span class="special">&lt;</span><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Create a set from <tt class="computeroutput"><span class="identifier">x0</span><span class="special">,</span> <span class="identifier">x1</span><span class="special">,...</span> <span class="identifier">xN</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Precondition</b></span>: There may be no duplicate
+ key types.
+ </p>
+<a name="fusion.container.generation.functions.make_set.header"></a><h6>
+<a name="id539404"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_set</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_set</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.generation.functions.make_set.example"></a><h6>
+<a name="id539574"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">make_set</span><span class="special">(</span><span class="number">123</span><span class="special">,</span> <span class="string">"hello"</span><span class="special">,</span> <span class="number">12.5</span><span class="special">)</span>
+</pre>
+<a name="fusion.container.generation.functions.make_set.see_also"></a><h6>
+<a name="id539652"></a>
+ <a href="make_set.html#fusion.container.generation.functions.make_set.see_also">See
+ also</a>
+ </h6>
+<p>
+ boost::ref
+ </p>
+<div class="footnotes">
+<br><hr width="100" align="left">
+<div class="footnote"><p><sup>[<a name="ftn.id538886" href="#id538886">8</a>] </sup>
+ <tt class="computeroutput"><span class="identifier">set</span></tt> is implemented
+ in terms of the vector. That is why we reuse <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ </p></div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_vector.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_map.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/functions/make_vector.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/functions/make_vector.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,151 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>make_vector</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="make_cons.html" title="make_cons">
+<link rel="next" href="make_set.html" title="make_set">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_cons.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_set.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.generation.functions.make_vector"></a>make_vector</h5></div></div></div>
+<a name="fusion.container.generation.functions.make_vector.description"></a><h6>
+<a name="id537407"></a>
+ Description
+ </h6>
+<p>
+ Create a vector
+ from one or more values.
+ </p>
+<a name="fusion.container.generation.functions.make_vector.synopsis"></a><h6>
+<a name="id537454"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::make_vector<span class="special">&lt;</span><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">make_vector</span><span class="special">(</span><span class="identifier">T0</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">x0</span><span class="special">,</span> <span class="identifier">T1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">x1</span><span class="special">...</span> <span class="identifier">TN</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">xN</span><span class="special">);</span>
+</pre>
+<p>
+ The variadic function accepts <tt class="computeroutput"><span class="number">0</span></tt>
+ to <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ elements, where <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>. You may define the preprocessor constant
+ <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ before including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_VECTOR_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.generation.functions.make_vector.parameters"></a><h6>
+<a name="id537818"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">x0</span><span class="special">,</span>
+ <span class="identifier">x1</span><span class="special">,...</span>
+ <span class="identifier">xN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Instances of <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The arguments to <tt class="computeroutput"><span class="identifier">make_vector</span></tt>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.generation.functions.make_vector.expression_semantics"></a><h6>
+<a name="id537994"></a>
+ <a href="make_vector.html#fusion.container.generation.functions.make_vector.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">make_vector</span><span class="special">(</span><span class="identifier">x0</span><span class="special">,</span> <span class="identifier">x1</span><span class="special">,...</span> <span class="identifier">xN</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: result_of::make_vector<tt class="computeroutput"><span class="special">&lt;</span><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Create a vector from <tt class="computeroutput"><span class="identifier">x0</span><span class="special">,</span> <span class="identifier">x1</span><span class="special">,...</span> <span class="identifier">xN</span></tt>.
+ </p>
+<a name="fusion.container.generation.functions.make_vector.header"></a><h6>
+<a name="id538221"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_vector</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_vector</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.generation.functions.make_vector.example"></a><h6>
+<a name="id538392"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">make_vector</span><span class="special">(</span><span class="number">123</span><span class="special">,</span> <span class="string">"hello"</span><span class="special">,</span> <span class="number">12.5</span><span class="special">)</span>
+</pre>
+<a name="fusion.container.generation.functions.make_vector.see_also"></a><h6>
+<a name="id538469"></a>
+ <a href="make_vector.html#fusion.container.generation.functions.make_vector.see_also">See
+ also</a>
+ </h6>
+<p>
+ boost::ref
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_cons.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_set.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/functions/map_tie.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/functions/map_tie.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,171 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>map_tie</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="vector_tie.html" title="vector_tie">
+<link rel="next" href="../metafunctions.html" title="MetaFunctions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="vector_tie.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.generation.functions.map_tie"></a>map_tie</h5></div></div></div>
+<a name="fusion.container.generation.functions.map_tie.description"></a><h6>
+<a name="id544178"></a>
+ Description
+ </h6>
+<p>
+ Constructs a tie using a map sequence.
+ </p>
+<a name="fusion.container.generation.functions.map_tie.synopsis"></a><h6>
+<a name="id544227"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">K0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">K1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">KN</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">D0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">D1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">DN</span><span class="special">&gt;</span>
+map<span class="special">&lt;</span>pair<span class="special">&lt;</span><span class="identifier">K0</span><span class="special">,</span> <span class="identifier">D0</span><span class="special">&amp;&gt;,</span> pair<span class="special">&lt;</span><span class="identifier">K1</span><span class="special">,</span> <span class="identifier">D1</span><span class="special">&amp;&gt;,...</span> pair<span class="special">&lt;</span><span class="identifier">KN</span><span class="special">,</span> <span class="identifier">DN</span><span class="special">&amp;&gt;</spa
n> <span class="special">&gt;</span>
+<span class="identifier">map_tie</span><span class="special">(</span><span class="identifier">D0</span><span class="special">&amp;</span> <span class="identifier">d0</span><span class="special">,</span> <span class="identifier">D1</span><span class="special">&amp;</span> <span class="identifier">d1</span><span class="special">...</span> <span class="identifier">DN</span><span class="special">&amp;</span> <span class="identifier">dN</span><span class="special">);</span>
+</pre>
+<p>
+ The variadic function accepts <tt class="computeroutput"><span class="number">0</span></tt>
+ to <tt class="computeroutput"><span class="identifier">FUSION_MAX_MAP_SIZE</span></tt>
+ elements, where <tt class="computeroutput"><span class="identifier">FUSION_MAX_MAP_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>, and a corresponding number of key types.
+ You may define the preprocessor constant <tt class="computeroutput"><span class="identifier">FUSION_MAX_MAP_SIZE</span></tt>
+ before including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_MAP_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.generation.functions.map_tie.parameters"></a><h6>
+<a name="id544698"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">K0</span><span class="special">,</span>
+ <span class="identifier">K1</span><span class="special">,...</span>
+ <span class="identifier">KN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The key types associated with each of the <tt class="computeroutput"><span class="identifier">x1</span><span class="special">,</span><span class="identifier">x2</span><span class="special">,...,</span><span class="identifier">xN</span></tt>
+ values
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">x0</span><span class="special">,</span>
+ <span class="identifier">x1</span><span class="special">,...</span>
+ <span class="identifier">xN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Instances of <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The arguments to <tt class="computeroutput"><span class="identifier">map_tie</span></tt>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.container.generation.functions.map_tie.expression_semantics"></a><h6>
+<a name="id544964"></a>
+ <a href="map_tie.html#fusion.container.generation.functions.map_tie.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">map_tie</span><span class="special">&lt;</span><span class="identifier">K0</span><span class="special">,</span> <span class="identifier">K1</span><span class="special">,...</span> <span class="identifier">KN</span><span class="special">&gt;(</span><span class="identifier">x0</span><span class="special">,</span> <span class="identifier">x1</span><span class="special">,...</span> <span class="identifier">xN</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: map&lt;pair&lt;K0, D0&amp;&gt;, pair&lt;K1,
+ D1&amp;&gt;,... pair&lt;KN,
+ DN&amp;&gt; &gt;
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Create a map of references from <tt class="computeroutput"><span class="identifier">x0</span><span class="special">,</span> <span class="identifier">x1</span><span class="special">,...</span> <span class="identifier">xN</span></tt> with keys <tt class="computeroutput"><span class="identifier">K0</span><span class="special">,</span> <span class="identifier">K1</span><span class="special">,...</span> <span class="identifier">KN</span></tt>
+ </p>
+<a name="fusion.container.generation.functions.map_tie.header"></a><h6>
+<a name="id545249"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">map_tie</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">map_tie</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.generation.functions.map_tie.example"></a><h6>
+<a name="id545418"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">int_key</span><span class="special">;</span>
+<span class="keyword">struct</span> <span class="identifier">double_key</span><span class="special">;</span>
+<span class="special">...</span>
+<span class="keyword">int</span> <span class="identifier">i</span> <span class="special">=</span> <span class="number">123</span><span class="special">;</span>
+<span class="keyword">double</span> <span class="identifier">d</span> <span class="special">=</span> <span class="number">123.456</span><span class="special">;</span>
+<span class="identifier">map_tie</span><span class="special">&lt;</span><span class="identifier">int_key</span><span class="special">,</span> <span class="identifier">double_key</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">,</span> <span class="identifier">d</span><span class="special">)</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="vector_tie.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/functions/tiers.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/functions/tiers.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,101 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Tiers</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="make_map.html" title="make_map">
+<link rel="next" href="list_tie.html" title="list_tie">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_map.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="list_tie.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.generation.functions.tiers"></a>Tiers</h5></div></div></div>
+<p>
+ Tiers are sequences, where all elements are non-const reference types.
+ They are constructed with a call to a couple of <span class="emphasis"><em>tie</em></span>
+ function templates. The succeeding sections document the various <span class="emphasis"><em>tier</em></span>
+ flavors.
+ </p>
+<div class="itemizedlist"><ul type="disc">
+<li>list_tie</li>
+<li>vector_tie</li>
+<li>map_tie</li>
+</ul></div>
+<p>
+ Example:
+ </p>
+<pre class="programlisting">
+<span class="keyword">int</span> <span class="identifier">i</span><span class="special">;</span> <span class="keyword">char</span> <span class="identifier">c</span><span class="special">;</span> <span class="keyword">double</span> <span class="identifier">d</span><span class="special">;</span>
+ <span class="special">...</span>
+vector_tie<span class="special">(</span><span class="identifier">i</span><span class="special">,</span> <span class="identifier">c</span><span class="special">,</span> <span class="identifier">a</span><span class="special">);</span>
+</pre>
+<p>
+ The vector_tie function creates
+ a vector
+ of type <tt class="computeroutput">vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">&amp;,</span> <span class="keyword">char</span><span class="special">&amp;,</span> <span class="keyword">double</span><span class="special">&amp;&gt;</span></tt>. The same result could be achieved
+ with the call make_vector(ref(i), ref(c), ref(a))
+ <sup>[<a name="id541640" href="#ftn.id541640">10</a>]</sup>
+ .
+ </p>
+<p>
+ A <span class="emphasis"><em>tie</em></span> can be used to 'unpack' another tuple into
+ variables. E.g.:
+ </p>
+<pre class="programlisting">
+<span class="keyword">int</span> <span class="identifier">i</span><span class="special">;</span> <span class="keyword">char</span> <span class="identifier">c</span><span class="special">;</span> <span class="keyword">double</span> <span class="identifier">d</span><span class="special">;</span>
+vector_tie<span class="special">(</span><span class="identifier">i</span><span class="special">,</span> <span class="identifier">c</span><span class="special">,</span> <span class="identifier">d</span><span class="special">)</span> <span class="special">=</span> make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="char">'a'</span><span class="special">,</span> <span class="number">5.5</span><span class="special">);</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">i</span> <span class="special">&lt;&lt;</span> <span class="string">" "</span> <span class="special">&lt;&lt;</span> <span class="identifier">c</span> <span class="special">&lt;&lt;</span> <span class="string">" "</span> <span class="special">&lt;&lt;</span> <span class="identifier">d</span><span class="special">;</span>
+</pre>
+<p>
+ This code prints 1 a 5.5 to the standard output stream. A sequence unpacking
+ operation like this is found for example in ML and Python. It is convenient
+ when calling functions which return sequences.
+ </p>
+<a name="fusion.container.generation.functions.tiers.ignore"></a><h6>
+<a name="id541946"></a>
+ Ignore
+ </h6>
+<p>
+ There is also an object called <span class="emphasis"><em>ignore</em></span> which allows
+ you to ignore an element assigned by a sequence. The idea is that a function
+ may return a sequence, only part of which you are interested in. For
+ example:
+ </p>
+<pre class="programlisting">
+<span class="keyword">char</span> <span class="identifier">c</span><span class="special">;</span>
+vector_tie<span class="special">(</span><span class="identifier">ignore</span><span class="special">,</span> <span class="identifier">c</span><span class="special">)</span> <span class="special">=</span> make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'a'</span><span class="special">);</span>
+</pre>
+<div class="footnotes">
+<br><hr width="100" align="left">
+<div class="footnote"><p><sup>[<a name="ftn.id541640" href="#id541640">10</a>] </sup>
+ see Boost.Ref
+ for details about <tt class="computeroutput"><span class="identifier">ref</span></tt>
+ </p></div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_map.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="list_tie.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/functions/vector_tie.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/functions/vector_tie.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,145 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>vector_tie</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="list_tie.html" title="list_tie">
+<link rel="next" href="map_tie.html" title="map_tie">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="list_tie.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="map_tie.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.generation.functions.vector_tie"></a>vector_tie</h5></div></div></div>
+<a name="fusion.container.generation.functions.vector_tie.description"></a><h6>
+<a name="id543147"></a>
+ Description
+ </h6>
+<p>
+ Constructs a tie using a vector sequence.
+ </p>
+<a name="fusion.container.generation.functions.vector_tie.synopsis"></a><h6>
+<a name="id543196"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">&gt;</span>
+vector<span class="special">&lt;</span><span class="identifier">T0</span><span class="special">&amp;,</span> <span class="identifier">T1</span><span class="special">&amp;,...</span> <span class="identifier">TN</span><span class="special">&amp;&gt;</span>
+<span class="identifier">vector_tie</span><span class="special">(</span><span class="identifier">T0</span><span class="special">&amp;</span> <span class="identifier">x0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">&amp;</span> <span class="identifier">x1</span><span class="special">...</span> <span class="identifier">TN</span><span class="special">&amp;</span> <span class="identifier">xN</span><span class="special">);</span>
+</pre>
+<p>
+ The variadic function accepts <tt class="computeroutput"><span class="number">0</span></tt>
+ to <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ elements, where <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>. You may define the preprocessor constant
+ <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ before including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_VECTOR_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.generation.functions.vector_tie.parameters"></a><h6>
+<a name="id543516"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">x0</span><span class="special">,</span>
+ <span class="identifier">x1</span><span class="special">,...</span>
+ <span class="identifier">xN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Instances of <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The arguments to <tt class="computeroutput"><span class="identifier">vector_tie</span></tt>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.generation.functions.vector_tie.expression_semantics"></a><h6>
+<a name="id543692"></a>
+ <a href="vector_tie.html#fusion.container.generation.functions.vector_tie.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">vector_tie</span><span class="special">(</span><span class="identifier">x0</span><span class="special">,</span> <span class="identifier">x1</span><span class="special">,...</span> <span class="identifier">xN</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: vector&lt;T0&amp;, T1&amp;,...
+ TN&amp;&gt;
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Create a vector of references from <tt class="computeroutput"><span class="identifier">x0</span><span class="special">,</span> <span class="identifier">x1</span><span class="special">,...</span> <span class="identifier">xN</span></tt>.
+ </p>
+<a name="fusion.container.generation.functions.vector_tie.header"></a><h6>
+<a name="id543861"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">vector_tie</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">vector_tie</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.generation.functions.vector_tie.example"></a><h6>
+<a name="id544032"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">int</span> <span class="identifier">i</span> <span class="special">=</span> <span class="number">123</span><span class="special">;</span>
+<span class="keyword">double</span> <span class="identifier">d</span> <span class="special">=</span> <span class="number">123.456</span><span class="special">;</span>
+<span class="identifier">vector_tie</span><span class="special">(</span><span class="identifier">i</span><span class="special">,</span> <span class="identifier">d</span><span class="special">)</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="list_tie.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="map_tie.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,49 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>MetaFunctions</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../generation.html" title="Generation">
+<link rel="prev" href="functions/map_tie.html" title="map_tie">
+<link rel="next" href="metafunctions/make_list.html" title="make_list">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/map_tie.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../generation.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/make_list.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.container.generation.metafunctions"></a>MetaFunctions</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">make_list</span></dt>
+<dt><span class="section">make_cons</span></dt>
+<dt><span class="section">make_vector</span></dt>
+<dt><span class="section">make_set</span></dt>
+<dt><span class="section">make_map</span></dt>
+<dt><span class="section">list_tie</span></dt>
+<dt><span class="section">vector_tie</span></dt>
+<dt><span class="section">map_tie</span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/map_tie.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../generation.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/make_list.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/list_tie.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/list_tie.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,142 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>list_tie</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="MetaFunctions">
+<link rel="prev" href="make_map.html" title="make_map">
+<link rel="next" href="vector_tie.html" title="vector_tie">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_map.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="vector_tie.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.generation.metafunctions.list_tie"></a>list_tie</h5></div></div></div>
+<a name="fusion.container.generation.metafunctions.list_tie.description"></a><h6>
+<a name="id550492"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of list_tie.
+ </p>
+<a name="fusion.container.generation.metafunctions.list_tie.synopsis"></a><h6>
+<a name="id550541"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">list_tie</span><span class="special">;</span>
+</pre>
+<p>
+ The variadic function accepts <tt class="computeroutput"><span class="number">0</span></tt>
+ to <tt class="computeroutput"><span class="identifier">FUSION_MAX_LIST_SIZE</span></tt>
+ elements, where <tt class="computeroutput"><span class="identifier">FUSION_MAX_LIST_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>. You may define the preprocessor constant
+ <tt class="computeroutput"><span class="identifier">FUSION_MAX_LIST_SIZE</span></tt>
+ before including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_LIST_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.generation.metafunctions.list_tie.parameters"></a><h6>
+<a name="id550749"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span>
+ <span class="identifier">T1</span><span class="special">,...</span>
+ <span class="identifier">TN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The arguments to <tt class="computeroutput"><span class="identifier">list_tie</span></tt>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.generation.metafunctions.list_tie.expression_semantics"></a><h6>
+<a name="id550892"></a>
+ <a href="list_tie.html#fusion.container.generation.metafunctions.list_tie.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">list_tie</span><span class="special">&lt;</span><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">;</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: list&lt;T0&amp;, T1&amp;,...
+ TN&amp;&gt;
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Create a list of references from <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span></tt>.
+ </p>
+<a name="fusion.container.generation.metafunctions.list_tie.header"></a><h6>
+<a name="id551081"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">list_tie</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">list_tie</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.generation.metafunctions.list_tie.example"></a><h6>
+<a name="id551252"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">list_tie</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_map.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="vector_tie.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/make_cons.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/make_cons.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,151 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>make_cons</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="MetaFunctions">
+<link rel="prev" href="make_list.html" title="make_list">
+<link rel="next" href="make_vector.html" title="make_vector">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_list.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_vector.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.generation.metafunctions.make_cons"></a>make_cons</h5></div></div></div>
+<a name="fusion.container.generation.metafunctions.make_cons.description"></a><h6>
+<a name="id546545"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of make_cons.
+ </p>
+<a name="fusion.container.generation.metafunctions.make_cons.synopsis"></a><h6>
+<a name="id546595"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Car</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Cdr</span> <span class="special">=</span> <span class="identifier">nil</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">make_cons</span><span class="special">;</span>
+</pre>
+<a name="fusion.container.generation.metafunctions.make_cons.parameters"></a><h6>
+<a name="id546706"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Car</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The list's head type
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Cdr</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A <tt class="computeroutput"><span class="identifier">cons</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The list's tail type (optional)
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.container.generation.metafunctions.make_cons.expression_semantics"></a><h6>
+<a name="id546861"></a>
+ <a href="make_cons.html#fusion.container.generation.metafunctions.make_cons.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">make_cons</span><span class="special">&lt;</span><span class="identifier">Car</span><span class="special">,</span> <span class="identifier">Cdr</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A cons with head element, <tt class="computeroutput"><span class="identifier">Car</span></tt>, of type converted following the
+ rules for <a href="../../../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
+ conversion</em></span></a>, and tail, <tt class="computeroutput"><span class="identifier">Cdr</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Create a cons from <tt class="computeroutput"><span class="identifier">Car</span></tt>
+ (<span class="emphasis"><em>head</em></span>) and optional <tt class="computeroutput"><span class="identifier">Cdr</span></tt>
+ (<span class="emphasis"><em>tail</em></span>).
+ </p>
+<a name="fusion.container.generation.metafunctions.make_cons.header"></a><h6>
+<a name="id547066"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_cons</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_cons</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.generation.metafunctions.make_cons.example"></a><h6>
+<a name="id547237"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">make_cons</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">make_cons</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_list.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_vector.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/make_list.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/make_list.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,143 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>make_list</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="MetaFunctions">
+<link rel="prev" href="../metafunctions.html" title="MetaFunctions">
+<link rel="next" href="make_cons.html" title="make_cons">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_cons.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.generation.metafunctions.make_list"></a>make_list</h5></div></div></div>
+<a name="fusion.container.generation.metafunctions.make_list.description"></a><h6>
+<a name="id545648"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of make_list.
+ </p>
+<a name="fusion.container.generation.metafunctions.make_list.synopsis"></a><h6>
+<a name="id545697"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">make_list</span><span class="special">;</span>
+</pre>
+<p>
+ The variadic function accepts <tt class="computeroutput"><span class="number">0</span></tt>
+ to <tt class="computeroutput"><span class="identifier">FUSION_MAX_LIST_SIZE</span></tt>
+ elements, where <tt class="computeroutput"><span class="identifier">FUSION_MAX_LIST_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>. You may define the preprocessor constant
+ <tt class="computeroutput"><span class="identifier">FUSION_MAX_LIST_SIZE</span></tt>
+ before including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_LIST_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.generation.metafunctions.make_list.parameters"></a><h6>
+<a name="id545904"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span>
+ <span class="identifier">T1</span><span class="special">,...</span>
+ <span class="identifier">TN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Template arguments to <tt class="computeroutput"><span class="identifier">make_list</span></tt>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.generation.metafunctions.make_list.expression_semantics"></a><h6>
+<a name="id546048"></a>
+ <a href="make_list.html#fusion.container.generation.metafunctions.make_list.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">make_list</span><span class="special">&lt;</span><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A list with elements of types
+ converted following the rules for <a href="../../../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
+ conversion</em></span></a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Create a list from <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span></tt>.
+ </p>
+<a name="fusion.container.generation.metafunctions.make_list.header"></a><h6>
+<a name="id546243"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_list</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_list</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.generation.metafunctions.make_list.example"></a><h6>
+<a name="id546414"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">make_list</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">const</span> <span class="keyword">char</span><span class="special">(&amp;)[</span><span class="number">7</span><span class="special">],</span> <span class="keyword">double</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_cons.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/make_map.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/make_map.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,186 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>make_map</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="MetaFunctions">
+<link rel="prev" href="make_set.html" title="make_set">
+<link rel="next" href="list_tie.html" title="list_tie">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_set.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="list_tie.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.generation.metafunctions.make_map"></a>make_map</h5></div></div></div>
+<a name="fusion.container.generation.metafunctions.make_map.description"></a><h6>
+<a name="id549192"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of make_map.
+ </p>
+<a name="fusion.container.generation.metafunctions.make_map.synopsis"></a><h6>
+<a name="id549242"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">K0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">K1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">KN</span>
+ <span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">make_map</span><span class="special">;</span>
+</pre>
+<p>
+ The variadic function accepts <tt class="computeroutput"><span class="number">0</span></tt>
+ to <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ <sup>[<a name="id549431" href="#ftn.id549431">12</a>]</sup>
+ elements, where <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>. You may define the preprocessor constant
+ <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ before including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_VECTOR_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.generation.metafunctions.make_map.parameters"></a><h6>
+<a name="id549538"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">K0</span><span class="special">,</span>
+ <span class="identifier">K1</span><span class="special">,...</span>
+ <span class="identifier">KN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Keys associated with <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span>
+ <span class="identifier">T1</span><span class="special">,...</span>
+ <span class="identifier">TN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Data associated with keys <tt class="computeroutput"><span class="identifier">K0</span><span class="special">,</span> <span class="identifier">K1</span><span class="special">,...</span> <span class="identifier">KN</span></tt>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.container.generation.metafunctions.make_map.expression_semantics"></a><h6>
+<a name="id549795"></a>
+ <a href="make_map.html#fusion.container.generation.metafunctions.make_map.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">resulf_of</span><span class="special">::</span><span class="identifier">make_map</span><span class="special">&lt;</span><span class="identifier">K0</span><span class="special">,</span> <span class="identifier">K1</span><span class="special">,...</span> <span class="identifier">KN</span><span class="special">,</span> <span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">;</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: result_of::make_map<tt class="computeroutput"><span class="special">&lt;</span><span class="identifier">K0</span><span class="special">,</span> <span class="identifier">K0</span><span class="special">,...</span> <span class="identifier">KN</span><span class="special">,</span> <span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: A map with fusion::pair elements where the <tt class="computeroutput"><span class="identifier">second_type</span></tt> is converted following
+ the rules for <a href="../../../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
+ conversion</em></span></a>.
+ </p>
+<p>
+ <span class="bold"><b>Precondition</b></span>: There may be no duplicate
+ key types.
+ </p>
+<a name="fusion.container.generation.metafunctions.make_map.header"></a><h6>
+<a name="id550134"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_map</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_map</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.generation.metafunctions.make_map.example"></a><h6>
+<a name="id550305"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">make_map</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">double</span><span class="special">,</span> <span class="keyword">char</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<a name="fusion.container.generation.metafunctions.make_map.see_also"></a><h6>
+<a name="id550410"></a>
+ <a href="make_map.html#fusion.container.generation.metafunctions.make_map.see_also">See
+ also</a>
+ </h6>
+<p>
+ fusion::pair
+ </p>
+<div class="footnotes">
+<br><hr width="100" align="left">
+<div class="footnote"><p><sup>[<a name="ftn.id549431" href="#id549431">12</a>] </sup>
+ <tt class="computeroutput"><span class="identifier">map</span></tt> is implemented
+ in terms of the vector. That is why we reuse <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ </p></div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_set.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="list_tie.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/make_set.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/make_set.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,155 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>make_set</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="MetaFunctions">
+<link rel="prev" href="make_vector.html" title="make_vector">
+<link rel="next" href="make_map.html" title="make_map">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_vector.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_map.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.generation.metafunctions.make_set"></a>make_set</h5></div></div></div>
+<a name="fusion.container.generation.metafunctions.make_set.description"></a><h6>
+<a name="id548271"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of make_set.
+ </p>
+<a name="fusion.container.generation.metafunctions.make_set.synopsis"></a><h6>
+<a name="id548320"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">make_set</span><span class="special">;</span>
+</pre>
+<p>
+ The variadic function accepts <tt class="computeroutput"><span class="number">0</span></tt>
+ to <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ <sup>[<a name="id548454" href="#ftn.id548454">11</a>]</sup>
+ elements, where <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>. You may define the preprocessor constant
+ <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ before including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_VECTOR_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.generation.metafunctions.make_set.parameters"></a><h6>
+<a name="id548559"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span>
+ <span class="identifier">T1</span><span class="special">,...</span>
+ <span class="identifier">TN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The arguments to <tt class="computeroutput"><span class="identifier">make_set</span></tt>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.generation.metafunctions.make_set.expression_semantics"></a><h6>
+<a name="id548702"></a>
+ <a href="make_set.html#fusion.container.generation.metafunctions.make_set.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">make_set</span><span class="special">&lt;</span><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A set with elements of types converted
+ following the rules for <a href="../../../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
+ conversion</em></span></a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Create a set from <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Precondition</b></span>: There may be no duplicate
+ key types.
+ </p>
+<a name="fusion.container.generation.metafunctions.make_set.header"></a><h6>
+<a name="id548906"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_set</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_set</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.generation.metafunctions.make_set.example"></a><h6>
+<a name="id549077"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">make_set</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<div class="footnotes">
+<br><hr width="100" align="left">
+<div class="footnote"><p><sup>[<a name="ftn.id548454" href="#id548454">11</a>] </sup>
+ <tt class="computeroutput"><span class="identifier">set</span></tt> is implemented
+ in terms of the vector. That is why we reuse <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ </p></div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_vector.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_map.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/make_vector.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/make_vector.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,143 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>make_vector</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="MetaFunctions">
+<link rel="prev" href="make_cons.html" title="make_cons">
+<link rel="next" href="make_set.html" title="make_set">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_cons.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_set.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.generation.metafunctions.make_vector"></a>make_vector</h5></div></div></div>
+<a name="fusion.container.generation.metafunctions.make_vector.description"></a><h6>
+<a name="id547373"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of make_vector.
+ </p>
+<a name="fusion.container.generation.metafunctions.make_vector.synopsis"></a><h6>
+<a name="id547423"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">make_vector</span><span class="special">;</span>
+</pre>
+<p>
+ The variadic function accepts <tt class="computeroutput"><span class="number">0</span></tt>
+ to <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ elements, where <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>. You may define the preprocessor constant
+ <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ before including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_VECTOR_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.generation.metafunctions.make_vector.parameters"></a><h6>
+<a name="id547632"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span>
+ <span class="identifier">T1</span><span class="special">,...</span>
+ <span class="identifier">TN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Template arguments to <tt class="computeroutput"><span class="identifier">make_vector</span></tt>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.generation.metafunctions.make_vector.expression_semantics"></a><h6>
+<a name="id547775"></a>
+ <a href="make_vector.html#fusion.container.generation.metafunctions.make_vector.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">make_vector</span><span class="special">&lt;</span><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A vector with elements of types
+ converted following the rules for <a href="../../../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
+ conversion</em></span></a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Create a vector from <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span></tt>.
+ </p>
+<a name="fusion.container.generation.metafunctions.make_vector.header"></a><h6>
+<a name="id547969"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_list</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_list</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.generation.metafunctions.make_vector.example"></a><h6>
+<a name="id548140"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">make_vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">const</span> <span class="keyword">char</span><span class="special">(&amp;)[</span><span class="number">7</span><span class="special">],</span> <span class="keyword">double</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="make_cons.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="make_set.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/map_tie.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/map_tie.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,167 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>map_tie</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="MetaFunctions">
+<link rel="prev" href="vector_tie.html" title="vector_tie">
+<link rel="next" href="../../conversion.html" title="Conversion">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="vector_tie.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../conversion.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.generation.metafunctions.map_tie"></a>map_tie</h5></div></div></div>
+<a name="fusion.container.generation.metafunctions.map_tie.description"></a><h6>
+<a name="id552227"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of map_tie.
+ </p>
+<a name="fusion.container.generation.metafunctions.map_tie.synopsis"></a><h6>
+<a name="id552277"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">K0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">K1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">KN</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">D0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">D1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">DN</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">map_tie</span><span class="special">;</span>
+</pre>
+<p>
+ The variadic function accepts <tt class="computeroutput"><span class="number">0</span></tt>
+ to <tt class="computeroutput"><span class="identifier">FUSION_MAX_MAP_SIZE</span></tt>
+ elements, where <tt class="computeroutput"><span class="identifier">FUSION_MAX_MAP_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>. You may define the preprocessor constant
+ <tt class="computeroutput"><span class="identifier">FUSION_MAX_MAP_SIZE</span></tt> before
+ including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_MAP_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.generation.metafunctions.map_tie.parameters"></a><h6>
+<a name="id552538"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">K0</span><span class="special">,</span>
+ <span class="identifier">K1</span><span class="special">,...</span>
+ <span class="identifier">KN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The key types for <tt class="computeroutput"><span class="identifier">map_tie</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">D0</span><span class="special">,</span>
+ <span class="identifier">D1</span><span class="special">,...</span>
+ <span class="identifier">DN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The arguments types for <tt class="computeroutput"><span class="identifier">map_tie</span></tt>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.container.generation.metafunctions.map_tie.expression_semantics"></a><h6>
+<a name="id552751"></a>
+ <a href="map_tie.html#fusion.container.generation.metafunctions.map_tie.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">map_tie</span><span class="special">&lt;</span><span class="identifier">K0</span><span class="special">,</span> <span class="identifier">K1</span><span class="special">,...</span> <span class="identifier">KN</span><span class="special">,</span> <span class="identifier">D0</span><span class="special">,</span> <span class="identifier">D1</span><span class="special">,...</span> <span class="identifier">DN</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">;</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: map&lt;pair&lt;K0, D0&amp;&gt;, pair&lt;K1,
+ D1&amp;&gt;,... pair&lt;KN,
+ DN&amp;&gt; &gt;
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Create a map of references from <tt class="computeroutput"><span class="identifier">D0</span><span class="special">,</span> <span class="identifier">D1</span><span class="special">,...</span> <span class="identifier">DN</span></tt> with keys <tt class="computeroutput"><span class="identifier">K0</span><span class="special">,</span> <span class="identifier">K1</span><span class="special">,...</span> <span class="identifier">KN</span></tt>
+ </p>
+<a name="fusion.container.generation.metafunctions.map_tie.header"></a><h6>
+<a name="id553056"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">map_tie</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">map_tie</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.generation.metafunctions.map_tie.example"></a><h6>
+<a name="id553226"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">int_key</span><span class="special">;</span>
+<span class="keyword">struct</span> <span class="identifier">double_key</span><span class="special">;</span>
+<span class="special">...</span>
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">map_tie</span><span class="special">&lt;</span><span class="identifier">int_key</span><span class="special">,</span> <span class="identifier">double_key</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="vector_tie.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../conversion.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/vector_tie.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/generation/metafunctions/vector_tie.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,142 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>vector_tie</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="MetaFunctions">
+<link rel="prev" href="list_tie.html" title="list_tie">
+<link rel="next" href="map_tie.html" title="map_tie">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="list_tie.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="map_tie.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.container.generation.metafunctions.vector_tie"></a>vector_tie</h5></div></div></div>
+<a name="fusion.container.generation.metafunctions.vector_tie.description"></a><h6>
+<a name="id551359"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of vector_tie.
+ </p>
+<a name="fusion.container.generation.metafunctions.vector_tie.synopsis"></a><h6>
+<a name="id551409"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">vector_tie</span><span class="special">;</span>
+</pre>
+<p>
+ The variadic function accepts <tt class="computeroutput"><span class="number">0</span></tt>
+ to <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ elements, where <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>. You may define the preprocessor constant
+ <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ before including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_VECTOR_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.generation.metafunctions.vector_tie.parameters"></a><h6>
+<a name="id551616"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span>
+ <span class="identifier">T1</span><span class="special">,...</span>
+ <span class="identifier">TN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The arguments to <tt class="computeroutput"><span class="identifier">vector_tie</span></tt>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.generation.metafunctions.vector_tie.expression_semantics"></a><h6>
+<a name="id551760"></a>
+ <a href="vector_tie.html#fusion.container.generation.metafunctions.vector_tie.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">vector_tie</span><span class="special">&lt;</span><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">;</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: vector&lt;T0&amp;, T1&amp;,...
+ TN&amp;&gt;
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Create a vector of references from <tt class="computeroutput"><span class="identifier">T0</span><span class="special">,</span> <span class="identifier">T1</span><span class="special">,...</span> <span class="identifier">TN</span></tt>.
+ </p>
+<a name="fusion.container.generation.metafunctions.vector_tie.header"></a><h6>
+<a name="id551950"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">vector_tie</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">vector_tie</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.generation.metafunctions.vector_tie.example"></a><h6>
+<a name="id552120"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">vector_tie</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="list_tie.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="map_tie.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/list.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/list.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,287 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>list</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../container.html" title="Container">
+<link rel="prev" href="cons.html" title="cons">
+<link rel="next" href="set.html" title="set">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="cons.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="set.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.container.list"></a>list</h3></div></div></div>
+<a name="fusion.container.list.description"></a><h4>
+<a name="id529259"></a>
+ Description
+ </h4>
+<p>
+ <tt class="computeroutput"><span class="identifier">list</span></tt> is a <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a> of heterogenous typed data built on top of cons. It is more efficient than
+ vector
+ when the target sequence is constructed piecemeal (a data at a time). The
+ runtime cost of access to each element is peculiarly constant (see Recursive Inlined Functions).
+ </p>
+<a name="fusion.container.list.header"></a><h4>
+<a name="id529357"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">list</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">list</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">list</span><span class="special">/</span><span class="identifier">list_fwd</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">list_fwd</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.list.synopsis"></a><h4>
+<a name="id529649"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">T0</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span>
+ <span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span>
+ <span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span>
+ <span class="special">...</span>
+ <span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">TN</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span>
+<span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">list</span><span class="special">;</span>
+</pre>
+<p>
+ The variadic class interface accepts <tt class="computeroutput"><span class="number">0</span></tt>
+ to <tt class="computeroutput"><span class="identifier">FUSION_MAX_LIST_SIZE</span></tt> elements,
+ where <tt class="computeroutput"><span class="identifier">FUSION_MAX_LIST_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>.
+ Example:
+ </p>
+<pre class="programlisting">
+<span class="identifier">list</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span>
+</pre>
+<p>
+ You may define the preprocessor constant <tt class="computeroutput"><span class="identifier">FUSION_MAX_LIST_SIZE</span></tt>
+ before including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_LIST_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.list.template_parameters"></a><h4>
+<a name="id529980"></a>
+ Template parameters
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T0</span></tt>...<tt class="computeroutput"><span class="identifier">TN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Element types
+ </p>
+ </td>
+<td>
+ <p>
+ <span class="emphasis"><em>unspecified-type</em></span>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.list.model_of"></a><h4>
+<a name="id530100"></a>
+ Model of
+ </h4>
+<div class="itemizedlist"><ul type="disc"><li><a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a></li></ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">L</span></tt></span></dt>
+<dd><p>
+ A <tt class="computeroutput"><span class="identifier">list</span></tt> type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">l</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">list</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">e0</span></tt>...<tt class="computeroutput"><span class="identifier">en</span></tt></span></dt>
+<dd><p>
+ Heterogeneous values
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
+<dd><p>
+ A <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">N</span></tt></span></dt>
+<dd><p>
+ An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.container.list.expression_semantics"></a><h4>
+<a name="id530312"></a>
+ Expression Semantics
+ </h4>
+<p>
+ Semantics of an expression is defined only where it differs from, or is not
+ defined in <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">L</span><span class="special">()</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a list with default constructed elements.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">L</span><span class="special">(</span><span class="identifier">e0</span><span class="special">,</span> <span class="identifier">e1</span><span class="special">,...</span>
+ <span class="identifier">en</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a list with elements <tt class="computeroutput"><span class="identifier">e0</span></tt>...<tt class="computeroutput"><span class="identifier">en</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">L</span><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Copy constructs a list from a <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>, <tt class="computeroutput"><span class="identifier">s</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">l</span> <span class="special">=</span>
+ <span class="identifier">s</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Assigns to a list, <tt class="computeroutput"><span class="identifier">l</span></tt>,
+ from a <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>, <tt class="computeroutput"><span class="identifier">s</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">at<span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">l</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The Nth element from the beginning of the sequence; see at.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<div class="sidebar"><p>
+ <span class="inlinemediaobject"><img src="../../images/note.png" alt="note"></span> <tt class="computeroutput">at<span class="special">&lt;</span><span class="identifier">n</span><span class="special">&gt;(</span><span class="identifier">l</span><span class="special">)</span></tt> is provided
+ for convenience and compatibility with the original Boost.Tuple
+ library, despite <tt class="computeroutput"><span class="identifier">list</span></tt> being
+ a <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a>
+ only (at is supposed to be a <a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> requirement). The runtime complexity of at is constant (see <a href="../notes.html#fusion.notes.recursive_inlined_functions">Recursive
+ Inlined Functions</a>).
+ </p></div>
+<a name="fusion.container.list.example"></a><h4>
+<a name="id530889"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="identifier">list</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">l</span><span class="special">(</span><span class="number">12</span><span class="special">,</span> <span class="number">5.5f</span><span class="special">);</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> at_c<span class="special">&lt;</span><span class="number">0</span><span class="special">&gt;(</span><span class="identifier">l</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> at_c<span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;(</span><span class="identifier">l</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="cons.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="set.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/map.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/map.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,276 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>map</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../container.html" title="Container">
+<link rel="prev" href="set.html" title="set">
+<link rel="next" href="generation.html" title="Generation">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="set.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="generation.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.container.map"></a>map</h3></div></div></div>
+<a name="fusion.container.map.description"></a><h4>
+<a name="id532939"></a>
+ Description
+ </h4>
+<p>
+ map is an <a href="../sequence/concepts/associative_sequence.html" title="Associative
+ Sequence">Associative
+ Sequence</a> of heteregenous typed data elements. Each element is a key/data
+ pair (see fusion::pair)
+ where the key has no data (type only). Type identity is used to impose an
+ equivalence relation on keys. A map may contain at most one element for each
+ key. Membership testing and element key lookup has constant runtime complexity
+ (see Overloaded Functions).
+ </p>
+<a name="fusion.container.map.header"></a><h4>
+<a name="id533019"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">map</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">map</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">map_fwd</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">map_fwd</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.map.synopsis"></a><h4>
+<a name="id533302"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">T0</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span>
+ <span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span>
+ <span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span>
+ <span class="special">...</span>
+ <span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">TN</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span>
+<span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">map</span><span class="special">;</span>
+</pre>
+<p>
+ The variadic class interface accepts <tt class="computeroutput"><span class="number">0</span></tt>
+ to <tt class="computeroutput"><span class="identifier">FUSION_MAX_MAP_SIZE</span></tt> elements,
+ where <tt class="computeroutput"><span class="identifier">FUSION_MAX_MAP_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>.
+ Example:
+ </p>
+<pre class="programlisting">
+<span class="identifier">map</span><span class="special">&lt;</span>pair<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;,</span> pair<span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;,</span> pair<span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="special">&gt;</span>
+</pre>
+<p>
+ You may define the preprocessor constant <tt class="computeroutput"><span class="identifier">FUSION_MAX_MAP_SIZE</span></tt>
+ before including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_MAP_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.map.template_parameters"></a><h4>
+<a name="id533731"></a>
+ Template parameters
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T0</span></tt>...<tt class="computeroutput"><span class="identifier">TN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Element types
+ </p>
+ </td>
+<td>
+ <p>
+ <span class="emphasis"><em>unspecified-type</em></span>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.map.model_of"></a><h4>
+<a name="id533851"></a>
+ Model of
+ </h4>
+<div class="itemizedlist"><ul type="disc">
+<li><a href="../sequence/concepts/associative_sequence.html" title="Associative
+ Sequence">Associative
+ Sequence</a></li>
+<li><a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a></li>
+</ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">M</span></tt></span></dt>
+<dd><p>
+ A <tt class="computeroutput"><span class="identifier">map</span></tt> type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">m</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">map</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">e0</span></tt>...<tt class="computeroutput"><span class="identifier">en</span></tt></span></dt>
+<dd><p>
+ Heterogeneous key/value pairs (see fusion::pair)
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
+<dd><p>
+ A <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.container.map.expression_semantics"></a><h4>
+<a name="id534074"></a>
+ Expression Semantics
+ </h4>
+<p>
+ Semantics of an expression is defined only where it differs from, or is not
+ defined in <a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> and <a href="../sequence/concepts/associative_sequence.html" title="Associative
+ Sequence">Associative
+ Sequence</a>.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">M</span><span class="special">()</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a map with default constructed elements.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">M</span><span class="special">(</span><span class="identifier">e0</span><span class="special">,</span> <span class="identifier">e1</span><span class="special">,...</span>
+ <span class="identifier">en</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a map with element pairs <tt class="computeroutput"><span class="identifier">e0</span></tt>...<tt class="computeroutput"><span class="identifier">en</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">M</span><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Copy constructs a map from a <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a> <tt class="computeroutput"><span class="identifier">s</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">m</span> <span class="special">=</span>
+ <span class="identifier">s</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Assigns to a map, <tt class="computeroutput"><span class="identifier">m</span></tt>,
+ from a <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a> <tt class="computeroutput"><span class="identifier">s</span></tt>.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.container.map.example"></a><h4>
+<a name="id534422"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="keyword">typedef</span> <span class="identifier">map</span><span class="special">&lt;</span>
+ pair<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span>
+ <span class="special">,</span> pair<span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;</span> <span class="special">&gt;</span>
+<span class="identifier">map_type</span><span class="special">;</span>
+
+<span class="identifier">map_type</span> <span class="identifier">m</span><span class="special">(</span>
+ make_pair<span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;(</span><span class="char">'X'</span><span class="special">)</span>
+ <span class="special">,</span> make_pair<span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;(</span><span class="string">"Men"</span><span class="special">));</span>
+
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> at_key<span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;(</span><span class="identifier">m</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> at_key<span class="special">&lt;</span><span class="keyword">double</span><span class="special">&gt;(</span><span class="identifier">m</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="set.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="generation.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/set.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/set.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,269 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>set</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../container.html" title="Container">
+<link rel="prev" href="list.html" title="list">
+<link rel="next" href="map.html" title="map">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="list.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="map.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.container.set"></a>set</h3></div></div></div>
+<a name="fusion.container.set.description"></a><h4>
+<a name="id531183"></a>
+ Description
+ </h4>
+<p>
+ set is an <a href="../sequence/concepts/associative_sequence.html" title="Associative
+ Sequence">Associative
+ Sequence</a> of heteregenous typed data elements. Type identity is used
+ to impose an equivalence relation on keys. The element's type is its key.
+ A set may contain at most one element for each key. Membership testing and
+ element key lookup has constant runtime complexity (see <a href="../notes.html#fusion.notes.overloaded_functions">Overloaded
+ Functions</a>).
+ </p>
+<a name="fusion.container.set.header"></a><h4>
+<a name="id531238"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">set</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">set</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">set_fwd</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">set_fwd</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.set.synopsis"></a><h4>
+<a name="id531520"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">T0</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span>
+ <span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span>
+ <span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span>
+ <span class="special">...</span>
+ <span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">TN</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span>
+<span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">set</span><span class="special">;</span>
+</pre>
+<p>
+ The variadic class interface accepts <tt class="computeroutput"><span class="number">0</span></tt>
+ to <tt class="computeroutput"><span class="identifier">FUSION_MAX_SET_SIZE</span></tt> elements,
+ where <tt class="computeroutput"><span class="identifier">FUSION_MAX_SET_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>.
+ Example:
+ </p>
+<pre class="programlisting">
+<span class="identifier">set</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span>
+</pre>
+<p>
+ You may define the preprocessor constant <tt class="computeroutput"><span class="identifier">FUSION_MAX_SET_SIZE</span></tt>
+ before including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_SET_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.set.template_parameters"></a><h4>
+<a name="id531852"></a>
+ Template parameters
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T0</span></tt>...<tt class="computeroutput"><span class="identifier">TN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Element types
+ </p>
+ </td>
+<td>
+ <p>
+ <span class="emphasis"><em>unspecified-type</em></span>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.set.model_of"></a><h4>
+<a name="id531972"></a>
+ Model of
+ </h4>
+<div class="itemizedlist"><ul type="disc">
+<li><a href="../sequence/concepts/associative_sequence.html" title="Associative
+ Sequence">Associative
+ Sequence</a></li>
+<li><a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a></li>
+</ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">S</span></tt></span></dt>
+<dd><p>
+ A <tt class="computeroutput"><span class="identifier">set</span></tt> type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">set</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">e0</span></tt>...<tt class="computeroutput"><span class="identifier">en</span></tt></span></dt>
+<dd><p>
+ Heterogeneous values
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">fs</span></tt></span></dt>
+<dd><p>
+ A <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.container.set.expression_semantics"></a><h4>
+<a name="id532167"></a>
+ Expression Semantics
+ </h4>
+<p>
+ Semantics of an expression is defined only where it differs from, or is not
+ defined in <a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> and <a href="../sequence/concepts/associative_sequence.html" title="Associative
+ Sequence">Associative
+ Sequence</a>.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">S</span><span class="special">()</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a set with default constructed elements.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">S</span><span class="special">(</span><span class="identifier">e0</span><span class="special">,</span> <span class="identifier">e1</span><span class="special">,...</span>
+ <span class="identifier">en</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a set with elements <tt class="computeroutput"><span class="identifier">e0</span></tt>...<tt class="computeroutput"><span class="identifier">en</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">S</span><span class="special">(</span><span class="identifier">fs</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Copy constructs a set from a <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a> <tt class="computeroutput"><span class="identifier">fs</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">s</span> <span class="special">=</span>
+ <span class="identifier">fs</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Assigns to a set, <tt class="computeroutput"><span class="identifier">s</span></tt>,
+ from a <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a> <tt class="computeroutput"><span class="identifier">fs</span></tt>.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.container.set.example"></a><h4>
+<a name="id532515"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="keyword">typedef</span> <span class="identifier">set</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">S</span><span class="special">;</span>
+<span class="identifier">S</span> <span class="identifier">s</span><span class="special">(</span><span class="number">12</span><span class="special">,</span> <span class="number">5.5f</span><span class="special">);</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> at_key<span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> at_key<span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> result_of::has_key<span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;::</span><span class="identifier">value</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="list.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="map.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/container/vector.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/container/vector.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,303 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>vector</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../container.html" title="Container">
+<link rel="prev" href="../container.html" title="Container">
+<link rel="next" href="cons.html" title="cons">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../container.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="cons.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.container.vector"></a>vector</h3></div></div></div>
+<a name="fusion.container.vector.description"></a><h4>
+<a name="id524691"></a>
+ Description
+ </h4>
+<p>
+ <tt class="computeroutput"><span class="identifier">vector</span></tt> is a <a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> of heterogenous typed data structured as a simple
+ <tt class="computeroutput"><span class="keyword">struct</span></tt> where each element is
+ held as a member variable. <tt class="computeroutput"><span class="identifier">vector</span></tt>
+ is the simplest of the Fusion sequence container, and in many cases the most
+ efficient.
+ </p>
+<a name="fusion.container.vector.header"></a><h4>
+<a name="id524769"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">vector</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">vector</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">vector</span><span class="special">/</span><span class="identifier">vector_fwd</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">vector_fwd</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+
+<span class="comment">// numbered forms
+</span><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">vector</span><span class="special">/</span><span class="identifier">vector10</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">vector10</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">vector</span><span class="special">/</span><span class="identifier">vector20</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">vector20</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">vector</span><span class="special">/</span><span class="identifier">vector30</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">vector30</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">vector</span><span class="special">/</span><span class="identifier">vector40</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">vector40</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">vector</span><span class="special">/</span><span class="identifier">vector50</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">vector50</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.container.vector.synopsis"></a><h4>
+<a name="id525747"></a>
+ Synopsis
+ </h4>
+<p>
+ <span class="bold"><b>Numbered forms</b></span>
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">vector0</span><span class="special">;</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T0</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">vector1</span><span class="special">;</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">vector2</span><span class="special">;</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">vector3</span><span class="special">;</span>
+
+<span class="special">...</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span><span class="special">...,</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">vectorN</span><span class="special">;</span>
+</pre>
+<p>
+ <span class="bold"><b>Variadic form</b></span>
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">T0</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span>
+ <span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span>
+ <span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span>
+ <span class="special">...</span>
+ <span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">TN</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span>
+<span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">vector</span><span class="special">;</span>
+</pre>
+<p>
+ The numbered form accepts the exact number of elements. Example:
+ </p>
+<pre class="programlisting">
+<span class="identifier">vector3</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span>
+</pre>
+<p>
+ The variadic form accepts <tt class="computeroutput"><span class="number">0</span></tt> to
+ <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt> elements,
+ where <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ is a user definable predefined maximum that defaults to <tt class="computeroutput"><span class="number">10</span></tt>.
+ Example:
+ </p>
+<pre class="programlisting">
+<span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span>
+</pre>
+<p>
+ You may define the preprocessor constant <tt class="computeroutput"><span class="identifier">FUSION_MAX_VECTOR_SIZE</span></tt>
+ before including any Fusion header to change the default. Example:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#define</span> <span class="identifier">FUSION_MAX_VECTOR_SIZE</span> <span class="number">20</span>
+</pre>
+<a name="fusion.container.vector.template_parameters"></a><h4>
+<a name="id526491"></a>
+ Template parameters
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T0</span></tt>...<tt class="computeroutput"><span class="identifier">TN</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Element types
+ </p>
+ </td>
+<td>
+ <p>
+ <span class="emphasis"><em>unspecified</em></span>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.container.vector.model_of"></a><h4>
+<a name="id526610"></a>
+ Model of
+ </h4>
+<div class="itemizedlist"><ul type="disc"><li><a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a></li></ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">v</span></tt></span></dt>
+<dd><p>
+ Instance of <tt class="computeroutput"><span class="identifier">vector</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">V</span></tt></span></dt>
+<dd><p>
+ A <tt class="computeroutput"><span class="identifier">vector</span></tt> type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">e0</span></tt>...<tt class="computeroutput"><span class="identifier">en</span></tt></span></dt>
+<dd><p>
+ Heterogeneous values
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
+<dd><p>
+ A <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.container.vector.expression_semantics"></a><h4>
+<a name="id526794"></a>
+ Expression Semantics
+ </h4>
+<p>
+ Semantics of an expression is defined only where it differs from, or is not
+ defined in <a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a>.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">V</span><span class="special">()</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a vector with default constructed elements.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">V</span><span class="special">(</span><span class="identifier">e0</span><span class="special">,</span> <span class="identifier">e1</span><span class="special">,...</span>
+ <span class="identifier">en</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a vector with elements <tt class="computeroutput"><span class="identifier">e0</span></tt>...<tt class="computeroutput"><span class="identifier">en</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">V</span><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Copy constructs a vector from a <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>, <tt class="computeroutput"><span class="identifier">s</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">v</span> <span class="special">=</span>
+ <span class="identifier">s</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Assigns to a vector, <tt class="computeroutput"><span class="identifier">v</span></tt>,
+ from a <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>, <tt class="computeroutput"><span class="identifier">s</span></tt>.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.container.vector.example"></a><h4>
+<a name="id527133"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">12</span><span class="special">,</span> <span class="number">5.5f</span><span class="special">);</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> at_c<span class="special">&lt;</span><span class="number">0</span><span class="special">&gt;(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> at_c<span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../container.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="cons.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/extension.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/extension.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,49 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Extension</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="tuple/pairs.html" title="Pairs">
+<link rel="next" href="extension/ext_full.html" title=" The Full Extension Mechanism">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="tuple/pairs.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="extension/ext_full.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.extension"></a>Extension</h2></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section"> The Full Extension Mechanism</span></dt>
+<dt><span class="section">Sequence Facade</span></dt>
+<dt><span class="section">Iterator Facade</span></dt>
+<dt><span class="section">Macros</span></dt>
+<dd><dl>
+<dt><span class="section"> BOOST_FUSION_ADAPT_STRUCT</span></dt>
+<dt><span class="section"> BOOST_FUSION_ADAPT_ASSOC_STRUCT</span></dt>
+</dl></dd>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="tuple/pairs.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="extension/ext_full.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/extension/ext_full.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/extension/ext_full.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,541 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title> The Full Extension Mechanism</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../extension.html" title="Extension">
+<link rel="prev" href="../extension.html" title="Extension">
+<link rel="next" href="sequence_facade.html" title="Sequence Facade">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../extension.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../extension.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="sequence_facade.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.extension.ext_full"></a> The Full Extension Mechanism</h3></div></div></div>
+<p>
+ The Fusion library is designed to be extensible, new sequences types can
+ easily be added. In fact, the library support for <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></tt>,
+ <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></tt> and MPL
+ sequences is entirely provided using the extension mechanism.
+ </p>
+<p>
+ The process for adding a new sequence type to Fusion is:
+ </p>
+<div class="orderedlist"><ol type="1">
+<li>
+ Enable the tag dispatching
+ mechanism used by Fusion for your sequence type
+ </li>
+<li>
+ Design an iterator type for the sequence
+ </li>
+<li>
+ Provide specialized behaviour for the intrinsic operations of the new Fusion
+ sequence
+ </li>
+</ol></div>
+<a name="fusion.extension.ext_full.our_example"></a><h4>
+<a name="id639986"></a>
+ Our example
+ </h4>
+<p>
+ In order to illustrate enabling a new sequence type for use with Fusion,
+ we are going to use the type:
+ </p>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">example</span>
+<span class="special">{</span>
+ <span class="keyword">struct</span> <span class="identifier">example_struct</span>
+ <span class="special">{</span>
+ <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">name</span><span class="special">;</span>
+ <span class="keyword">int</span> <span class="identifier">age</span><span class="special">;</span>
+ <span class="identifier">example_struct</span><span class="special">(</span>
+ <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;</span> <span class="identifier">n</span><span class="special">,</span>
+ <span class="keyword">int</span> <span class="identifier">a</span><span class="special">)</span>
+ <span class="special">:</span> <span class="identifier">name</span><span class="special">(</span><span class="identifier">n</span><span class="special">),</span> <span class="identifier">age</span><span class="special">(</span><span class="identifier">a</span><span class="special">)</span>
+ <span class="special">{}</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+</pre>
+<p>
+ We are going to pretend that this type has been provided by a 3rd party library,
+ and therefore cannot be modified. We shall work through all the necessary
+ steps to enable <tt class="computeroutput"><span class="identifier">example_struct</span></tt>
+ to serve as an <a href="../sequence/concepts/associative_sequence.html" title="Associative
+ Sequence">Associative
+ Sequence</a> as described in the <a href="../quick_start.html" title="Quick Start">Quick
+ Start</a> guide.
+ </p>
+<a name="fusion.extension.ext_full.enabling_tag_dispatching"></a><h4>
+<a name="id640275"></a>
+ <a href="ext_full.html#fusion.extension.ext_full.enabling_tag_dispatching">Enabling
+ Tag Dispatching</a>
+ </h4>
+<p>
+ The Fusion extensibility mechanism uses <a href="../notes.html#fusion.notes.tag_dispatching"><span class="emphasis"><em>tag
+ dispatching</em></span></a> to call the correct code for a given sequence
+ type. In order to exploit the tag dispatching mechanism we must first declare
+ a new tag type for the mechanism to use. For example:
+ </p>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">example</span> <span class="special">{</span>
+ <span class="keyword">struct</span> <span class="identifier">example_sequence_tag</span><span class="special">;</span> <span class="comment">// Only definition needed
+</span><span class="special">}</span>
+</pre>
+<p>
+ Next we need to enable the <tt class="computeroutput"><span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span></tt>
+ metafunction to return our newly chosen tag type for operations involving
+ our sequence. This is done by specializing <tt class="computeroutput"><span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span></tt>
+ for our sequence type.
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">support</span><span class="special">/</span><span class="identifier">tag_of_fwd</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">tag_of_fwd</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+
+<span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">fusion</span> <span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">traits</span> <span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">tag_of</span><span class="special">&lt;</span><span class="identifier">example_struct</span><span class="special">&gt;</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="identifier">example</span><span class="special">::</span><span class="identifier">example_sequence_tag</span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}}}</span>
+</pre>
+<p>
+ <tt class="computeroutput"><span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span></tt> also has a second template argument,
+ that can be used in conjuction with <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">enable_if</span></tt>
+ to provide tag support for groups of related types. This feature is not necessary
+ for our sequence, but for an example see the code in:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">adapted</span><span class="special">/</span><span class="identifier">array</span><span class="special">/</span><span class="identifier">tag_of</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">tag_of</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.extension.ext_full.designing_a_suitable_iterator"></a><h4>
+<a name="id640901"></a>
+ <a href="ext_full.html#fusion.extension.ext_full.designing_a_suitable_iterator">Designing
+ a suitable iterator</a>
+ </h4>
+<p>
+ We need an iterator to describe positions, and provide access to the data
+ within our sequence. As it is straightforward to do, we are going to provide
+ a random access iterator in our example.
+ </p>
+<p>
+ We will use a simple design, in which the 2 members of <tt class="computeroutput"><span class="identifier">example_struct</span></tt>
+ are given numbered indices, 0 for <tt class="computeroutput"><span class="identifier">name</span></tt>
+ and 1 for <tt class="computeroutput"><span class="identifier">age</span></tt> respectively.
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Struct</span><span class="special">,</span> <span class="keyword">int</span> <span class="identifier">Pos</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">example_struct_iterator</span>
+ <span class="special">:</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">fusion</span><span class="special">::</span><span class="identifier">iterator_base</span><span class="special">&lt;</span><span class="identifier">example_struct_iterator</span><span class="special">&lt;</span><span class="identifier">Struct</span><span class="special">,</span> <span class="identifier">Pos</span><span class="special">&gt;</span> <span class="special">&gt;</span>
+<span class="special">{</span>
+ <span class="identifier">BOOST_STATIC_ASSERT</span><span class="special">(</span><span class="identifier">Pos</span> <span class="special">&gt;=</span><span class="number">0</span> <span class="special">&amp;&amp;</span> <span class="identifier">Pos</span> <span class="special">&lt;</span> <span class="number">3</span><span class="special">);</span>
+ <span class="keyword">typedef</span> <span class="identifier">Struct</span> <span class="identifier">struct_type</span><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span><span class="identifier">Pos</span><span class="special">&gt;</span> <span class="identifier">index</span><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">fusion</span><span class="special">::</span><span class="identifier">random_access_traversal_tag</span> <span class="identifier">category</span><span class="special">;</span>
+
+ <span class="identifier">example_struct_iterator</span><span class="special">(</span><span class="identifier">Struct</span><span class="special">&amp;</span> <span class="identifier">str</span><span class="special">)</span>
+ <span class="special">:</span> <span class="identifier">struct_</span><span class="special">(</span><span class="identifier">str</span><span class="special">)</span> <span class="special">{}</span>
+
+ <span class="identifier">Struct</span><span class="special">&amp;</span> <span class="identifier">struct_</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<p>
+ A quick summary of the details of our iterator:
+ </p>
+<div class="orderedlist"><ol type="1">
+<li>
+ The iterator is parameterized by the type it is iterating over, and the
+ index of the current element.
+ </li>
+<li>
+ The typedefs <tt class="computeroutput"><span class="identifier">struct_type</span></tt>
+ and <tt class="computeroutput"><span class="identifier">index</span></tt> provide convenient
+ access to information we will need later in the implementation.
+ </li>
+<li>
+ The typedef <tt class="computeroutput"><span class="identifier">category</span></tt> allows
+ the <tt class="computeroutput"><span class="identifier">traits</span><span class="special">::</span>category_of</tt>
+ metafunction to establish the traversal category of the iterator.
+ </li>
+<li>
+ The constructor stores a reference to the <tt class="computeroutput"><span class="identifier">example_struct</span></tt>
+ being iterated over.
+ </li>
+</ol></div>
+<p>
+ We also need to enable <a href="../notes.html#fusion.notes.tag_dispatching"><span class="emphasis"><em>tag
+ dispatching</em></span></a> for our iterator type, with another specialization
+ of <tt class="computeroutput"><span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span></tt>.
+ </p>
+<p>
+ In isolation, the iterator implementation is pretty dry. Things should become
+ clearer as we add features to our implementation.
+ </p>
+<a name="fusion.extension.ext_full.a_first_couple_of_instructive_features"></a><h4>
+<a name="id641561"></a>
+ <a href="ext_full.html#fusion.extension.ext_full.a_first_couple_of_instructive_features">A
+ first couple of instructive features</a>
+ </h4>
+<p>
+ To start with, we will get the result_of::value_of metafunction working. To
+ do this, we provide a specialization of the <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">fusion</span><span class="special">::</span><span class="identifier">extension</span><span class="special">::</span><span class="identifier">value_of_impl</span></tt>
+ template for our iterator's tag type.
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">value_of_impl</span><span class="special">&lt;</span><span class="identifier">example</span><span class="special">::</span><span class="identifier">example_struct_iterator_tag</span><span class="special">&gt;</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Iterator</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">apply</span><span class="special">;</span>
+
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Struct</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">apply</span><span class="special">&lt;</span><span class="identifier">example</span><span class="special">::</span><span class="identifier">example_struct_iterator</span><span class="special">&lt;</span><span class="identifier">Struct</span><span class="special">,</span> <span class="number">0</span><span class="special">&gt;</span> <span class="special">&gt;</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Struct</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">apply</span><span class="special">&lt;</span><span class="identifier">example</span><span class="special">::</span><span class="identifier">example_struct_iterator</span><span class="special">&lt;</span><span class="identifier">Struct</span><span class="special">,</span> <span class="number">1</span><span class="special">&gt;</span> <span class="special">&gt;</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">int</span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">};</span>
+</pre>
+<p>
+ The implementation itself is pretty simple, it just uses 2 partial specializations
+ to provide the type of the 2 different members of <tt class="computeroutput"><span class="identifier">example_struct</span></tt>,
+ based on the index of the iterator.
+ </p>
+<p>
+ To understand how <tt class="computeroutput"><span class="identifier">value_of_impl</span></tt>
+ is used by the library we will look at the implementation of value_of:
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Iterator</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> value_of
+ <span class="special">:</span> <span class="identifier">extension</span><span class="special">::</span><span class="identifier">value_of_impl</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">tag_of</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span>
+ <span class="keyword">template</span> <span class="identifier">apply</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span>
+<span class="special">{};</span>
+</pre>
+<p>
+ So value_of
+ uses tag dispatching
+ to select an <a href="http://www.boost.org/libs/mpl/doc/refmanual/metafunction-class.html" target="_top">MPL
+ Metafunction Class</a> to provide its functionality. You will notice
+ this pattern throughout the implementation of Fusion.
+ </p>
+<p>
+ Ok, lets enable dereferencing of our iterator. In this case we must provide
+ a suitable specialization of <tt class="computeroutput"><span class="identifier">deref_impl</span></tt>.
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">deref_impl</span><span class="special">&lt;</span><span class="identifier">example</span><span class="special">::</span><span class="identifier">example_struct_iterator_tag</span><span class="special">&gt;</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Iterator</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">apply</span><span class="special">;</span>
+
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Struct</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">apply</span><span class="special">&lt;</span><span class="identifier">example</span><span class="special">::</span><span class="identifier">example_struct_iterator</span><span class="special">&lt;</span><span class="identifier">Struct</span><span class="special">,</span> <span class="number">0</span><span class="special">&gt;</span> <span class="special">&gt;</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">if_</span><span class="special">&lt;</span>
+ <span class="identifier">is_const</span><span class="special">&lt;</span><span class="identifier">Struct</span><span class="special">&gt;,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="keyword">const</span><span class="special">&amp;,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;&gt;::</span><span class="identifier">type</span> <span class="identifier">type</span><span class="special">;</span>
+
+ <span class="keyword">static</span> <span class="identifier">type</span>
+ <span class="identifier">call</span><span class="special">(</span><span class="identifier">example</span><span class="special">::</span><span class="identifier">example_struct_iterator</span><span class="special">&lt;</span><span class="identifier">Struct</span><span class="special">,</span> <span class="number">0</span><span class="special">&gt;</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">it</span><span class="special">)</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">it</span><span class="special">.</span><span class="identifier">struct_</span><span class="special">.</span><span class="identifier">name</span><span class="special">;</span>
+ <span class="special">}</span>
+ <span class="special">};</span>
+
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Struct</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">apply</span><span class="special">&lt;</span><span class="identifier">example</span><span class="special">::</span><span class="identifier">example_struct_iterator</span><span class="special">&lt;</span><span class="identifier">Struct</span><span class="special">,</span> <span class="number">1</span><span class="special">&gt;</span> <span class="special">&gt;</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">if_</span><span class="special">&lt;</span>
+ <span class="identifier">is_const</span><span class="special">&lt;</span><span class="identifier">Struct</span><span class="special">&gt;,</span> <span class="keyword">int</span> <span class="keyword">const</span><span class="special">&amp;,</span> <span class="keyword">int</span><span class="special">&amp;&gt;::</span><span class="identifier">type</span> <span class="identifier">type</span><span class="special">;</span>
+
+ <span class="keyword">static</span> <span class="identifier">type</span>
+ <span class="identifier">call</span><span class="special">(</span><span class="identifier">example</span><span class="special">::</span><span class="identifier">example_struct_iterator</span><span class="special">&lt;</span><span class="identifier">Struct</span><span class="special">,</span> <span class="number">1</span><span class="special">&gt;</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">it</span><span class="special">)</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">it</span><span class="special">.</span><span class="identifier">struct_</span><span class="special">.</span><span class="identifier">age</span><span class="special">;</span>
+ <span class="special">}</span>
+ <span class="special">};</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+</pre>
+<p>
+ The use of <tt class="computeroutput"><span class="identifier">deref_impl</span></tt> is
+ very similar to that of <tt class="computeroutput"><span class="identifier">value_of_impl</span></tt>,
+ but it also provides some runtime functionality this time via the <tt class="computeroutput"><span class="identifier">call</span></tt> static member function. To see how
+ <tt class="computeroutput"><span class="identifier">deref_impl</span></tt> is used, lets
+ have a look at the implementation of deref:
+ </p>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">result_of</span>
+<span class="special">{</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Iterator</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> deref
+ <span class="special">:</span> <span class="identifier">extension</span><span class="special">::</span><span class="identifier">deref_impl</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">tag_of</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span>
+ <span class="keyword">template</span> <span class="identifier">apply</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span>
+ <span class="special">{};</span>
+<span class="special">}</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Iterator</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">deref</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;::</span><span class="identifier">type</span>
+deref<span class="special">(</span><span class="identifier">Iterator</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">i</span><span class="special">)</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">deref</span><span class="special">&lt;</span><span class="identifier">Iterator</span><span class="special">&gt;</span> <span class="identifier">deref_meta</span><span class="special">;</span>
+ <span class="keyword">return</span> <span class="identifier">deref_meta</span><span class="special">::</span><span class="identifier">call</span><span class="special">(</span><span class="identifier">i</span><span class="special">);</span>
+<span class="special">}</span>
+</pre>
+<p>
+ So again result_of::deref uses <a href="../notes.html#fusion.notes.tag_dispatching"><span class="emphasis"><em>tag
+ dispatching</em></span></a> in exactly the same way as the value_of implementation. The runtime
+ functionality used by deref is provided by the <tt class="computeroutput"><span class="identifier">call</span></tt> static function of the selected <a href="http://www.boost.org/libs/mpl/doc/refmanual/metafunction-class.html" target="_top">MPL
+ Metafunction Class</a>.
+ </p>
+<p>
+ The actual implementation of <tt class="computeroutput"><span class="identifier">deref_impl</span></tt>
+ is slightly more complex than that of <tt class="computeroutput"><span class="identifier">value_of_impl</span></tt>.
+ We also need to implement the <tt class="computeroutput"><span class="identifier">call</span></tt>
+ function, which returns a reference to the appropriate member of the underlying
+ sequence. We also require a little bit of metaprogramming to return <tt class="computeroutput"><span class="keyword">const</span></tt> references if the underlying sequence
+ is const.
+ </p>
+<div class="note"><table border="0" summary="Note">
+<tr>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../doc/html/images/note.png"></td>
+<th align="left">Note</th>
+</tr>
+<tr><td colspan="2" align="left" valign="top"><p>
+ Although there is a fair amount of left to do to produce a fully fledged
+ Fusion sequence, value_of and deref illustrate all the signficant
+ concepts required. The remainder of the process is very repetitive, simply
+ requiring implementation of a suitable <tt class="computeroutput"><span class="identifier">xxxx_impl</span></tt>
+ for each feature <tt class="computeroutput"><span class="identifier">xxxx</span></tt>.
+ </p></td></tr>
+</table></div>
+<a name="fusion.extension.ext_full.implementing_the_remaining_iterator_functionality"></a><h4>
+<a name="id643873"></a>
+ <a href="ext_full.html#fusion.extension.ext_full.implementing_the_remaining_iterator_functionality">Implementing
+ the remaining iterator functionality</a>
+ </h4>
+<p>
+ Ok, now we have seen the way value_of and deref work, everything else will
+ work in pretty much the same way. Lets start with forward iteration, by providing
+ a <tt class="computeroutput"><span class="identifier">next_impl</span></tt>:
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">next_impl</span><span class="special">&lt;</span><span class="identifier">example</span><span class="special">::</span><span class="identifier">example_struct_iterator_tag</span><span class="special">&gt;</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Iterator</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">apply</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">Iterator</span><span class="special">::</span><span class="identifier">struct_type</span> <span class="identifier">struct_type</span><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">Iterator</span><span class="special">::</span><span class="identifier">index</span> <span class="identifier">index</span><span class="special">;</span>
+ <span class="keyword">typedef</span> <span class="identifier">example</span><span class="special">::</span><span class="identifier">example_struct_iterator</span><span class="special">&lt;</span><span class="identifier">struct_type</span><span class="special">,</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">value</span> <span class="special">+</span> <span class="number">1</span><span class="special">&gt;</span> <span class="identifier">type</span><span class="special">;</span>
+
+ <span class="keyword">static</span> <span class="identifier">type</span>
+ <span class="identifier">call</span><span class="special">(</span><span class="identifier">Iterator</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">i</span><span class="special">)</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">type</span><span class="special">(</span><span class="identifier">i</span><span class="special">.</span><span class="identifier">struct_</span><span class="special">);</span>
+ <span class="special">}</span>
+ <span class="special">};</span>
+<span class="special">};</span>
+</pre>
+<p>
+ This should be very familiar from our <tt class="computeroutput"><span class="identifier">deref_impl</span></tt>
+ implementation, we will be using this approach again and again now. Our design
+ is simply to increment the <tt class="computeroutput"><span class="identifier">index</span></tt>
+ counter to move on to the next element. The various other iterator manipulations
+ we need to perform will all just involve simple calculations with the <tt class="computeroutput"><span class="identifier">index</span></tt> variables.
+ </p>
+<p>
+ We also need to provide a suitable <tt class="computeroutput"><span class="identifier">equal_to_impl</span></tt>
+ so that iterators can be correctly compared. A <a href="../iterator/concepts/bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a> will also need an implementation of <tt class="computeroutput"><span class="identifier">prior_impl</span></tt>.
+ For a <a href="../iterator/concepts/random_access_iterator.html" title="Random
+ Access Iterator">Random
+ Access Iterator</a> <tt class="computeroutput"><span class="identifier">distance_impl</span></tt>
+ and <tt class="computeroutput"><span class="identifier">advance_impl</span></tt> also need
+ to be provided in order to satisfy the necessary complexity guarantees. As
+ our iterator is a <a href="../iterator/concepts/random_access_iterator.html" title="Random
+ Access Iterator">Random
+ Access Iterator</a> we will have to implement all of these functions.
+ </p>
+<p>
+ Full implementations of <tt class="computeroutput"><span class="identifier">prior_impl</span></tt>,
+ <tt class="computeroutput"><span class="identifier">advance_impl</span></tt>, <tt class="computeroutput"><span class="identifier">distance_impl</span></tt> and <tt class="computeroutput"><span class="identifier">equal_to_impl</span></tt>
+ are provided in the example code.
+ </p>
+<a name="fusion.extension.ext_full.implementing_the_intrinsic_functions_of_the_sequence"></a><h4>
+<a name="id644526"></a>
+ <a href="ext_full.html#fusion.extension.ext_full.implementing_the_intrinsic_functions_of_the_sequence">Implementing
+ the intrinsic functions of the sequence</a>
+ </h4>
+<p>
+ In order that Fusion can correctly identify our sequence as a Fusion sequence,
+ we need to enable <tt class="computeroutput"><span class="identifier">is_sequence</span></tt>
+ for our sequence type. As usual we just create an <tt class="computeroutput"><span class="identifier">impl</span></tt>
+ type specialized for our sequence tag:
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">is_sequence_impl</span><span class="special">&lt;</span><span class="identifier">example</span><span class="special">::</span><span class="identifier">example_sequence_tag</span><span class="special">&gt;</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">apply</span> <span class="special">:</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span> <span class="special">{};</span>
+<span class="special">};</span>
+</pre>
+<p>
+ We've some similar formalities to complete, providing <tt class="computeroutput"><span class="identifier">category_of_impl</span></tt>
+ so Fusion can correctly identify our sequence type, and <tt class="computeroutput"><span class="identifier">is_view_impl</span></tt>
+ so Fusion can correctly identify our sequence as not being a View
+ type. Implementations are provide in the example code.
+ </p>
+<p>
+ Now we've completed some formalities, on to more interesting features. Lets
+ get begin working so that we can get
+ an iterator to start accessing the data in our sequence.
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">begin_impl</span><span class="special">&lt;</span><span class="identifier">example</span><span class="special">::</span><span class="identifier">example_sequence_tag</span><span class="special">&gt;</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">apply</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="identifier">example</span><span class="special">::</span><span class="identifier">example_struct_iterator</span><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="number">0</span><span class="special">&gt;</span> <span class="identifier">type</span><span class="special">;</span>
+
+ <span class="keyword">static</span> <span class="identifier">type</span>
+ <span class="identifier">call</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">)</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">type</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
+ <span class="special">}</span>
+ <span class="special">};</span>
+<span class="special">};</span>
+</pre>
+<p>
+ The implementation uses the same ideas we have applied throughout, in this
+ case we are just creating one of the iterators we developed earlier, pointing
+ to the first element in the sequence. The implementation of end is very similar, and is provided
+ in the example code.
+ </p>
+<p>
+ For our <a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> we will also need to implement <tt class="computeroutput"><span class="identifier">size_impl</span></tt>,
+ <tt class="computeroutput"><span class="identifier">value_at_impl</span></tt> and <tt class="computeroutput"><span class="identifier">at_impl</span></tt>.
+ </p>
+<a name="fusion.extension.ext_full.enabling_our_type_as_an_associative_container"></a><h4>
+<a name="id645134"></a>
+ <a href="ext_full.html#fusion.extension.ext_full.enabling_our_type_as_an_associative_container">Enabling
+ our type as an associative container</a>
+ </h4>
+<p>
+ In order for <tt class="computeroutput"><span class="identifier">example_struct</span></tt>
+ to serve as an associative container, we need to enable 3 lookup features,
+ at_key, value_at_key and has_key. We also need to provide
+ an implementation of the <tt class="computeroutput"><span class="identifier">is_associative</span></tt>
+ trait so that our sequence can be correctly identified as an associative
+ container.
+ </p>
+<p>
+ To implement <tt class="computeroutput"><span class="identifier">at_key_impl</span></tt>
+ we need to associate the <tt class="computeroutput"><span class="identifier">fields</span><span class="special">::</span><span class="identifier">age</span></tt> and
+ <tt class="computeroutput"><span class="identifier">fields</span><span class="special">::</span><span class="identifier">age</span></tt> types described in the <a href="../quick_start.html" title="Quick Start">Quick
+ Start</a> guide with the appropriate members of <tt class="computeroutput"><span class="identifier">example_struct</span></tt>.
+ Our implementation is as follows:
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">at_key_impl</span><span class="special">&lt;</span><span class="identifier">example</span><span class="special">::</span><span class="identifier">example_sequence_tag</span><span class="special">&gt;</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Key</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">apply</span><span class="special">;</span>
+
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">apply</span><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">fields</span><span class="special">::</span><span class="identifier">name</span><span class="special">&gt;</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">if_</span><span class="special">&lt;</span>
+ <span class="identifier">is_const</span><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;,</span>
+ <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="keyword">const</span><span class="special">&amp;,</span>
+ <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&amp;&gt;::</span><span class="identifier">type</span> <span class="identifier">type</span><span class="special">;</span>
+
+ <span class="keyword">static</span> <span class="identifier">type</span>
+ <span class="identifier">call</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">)</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">seq</span><span class="special">.</span><span class="identifier">name</span><span class="special">;</span>
+ <span class="special">};</span>
+ <span class="special">};</span>
+
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">apply</span><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">fields</span><span class="special">::</span><span class="identifier">age</span><span class="special">&gt;</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">if_</span><span class="special">&lt;</span>
+ <span class="identifier">is_const</span><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;,</span>
+ <span class="keyword">int</span> <span class="keyword">const</span><span class="special">&amp;,</span>
+ <span class="keyword">int</span><span class="special">&amp;&gt;::</span><span class="identifier">type</span> <span class="identifier">type</span><span class="special">;</span>
+
+ <span class="keyword">static</span> <span class="identifier">type</span>
+ <span class="identifier">call</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">)</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">seq</span><span class="special">.</span><span class="identifier">age</span><span class="special">;</span>
+ <span class="special">};</span>
+ <span class="special">};</span>
+<span class="special">};</span>
+</pre>
+<p>
+ Its all very similar to the implementations we've seen previously, such as
+ <tt class="computeroutput"><span class="identifier">deref_impl</span></tt> and <tt class="computeroutput"><span class="identifier">value_of_impl</span></tt>. Instead of identifying the
+ members by index or position, we are now selecting them using the types
+ <tt class="computeroutput"><span class="identifier">fields</span><span class="special">::</span><span class="identifier">name</span></tt> and <tt class="computeroutput"><span class="identifier">fields</span><span class="special">::</span><span class="identifier">age</span></tt>.
+ The implementations of <tt class="computeroutput"><span class="identifier">value_at_key_impl</span></tt>
+ and <tt class="computeroutput"><span class="identifier">has_key_impl</span></tt> are equally
+ straightforward, and are provided in the example code, along with an implementation
+ of <tt class="computeroutput"><span class="identifier">is_associative_impl</span></tt>.
+ </p>
+<a name="fusion.extension.ext_full.summary"></a><h4>
+<a name="id646142"></a>
+ Summary
+ </h4>
+<p>
+ We've now worked through the entire process for adding a new random access
+ sequence and we've also enabled our type to serve as an associative container.
+ The implementation was slightly longwinded, but followed a simple repeating
+ pattern.
+ </p>
+<p>
+ The support for <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></tt>, MPL
+ sequences, and <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></tt> all use the same approach, and provide
+ additional examples of the approach for a variety of types.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../extension.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../extension.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="sequence_facade.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/extension/iterator_facade.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/extension/iterator_facade.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,386 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Iterator Facade</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../extension.html" title="Extension">
+<link rel="prev" href="sequence_facade.html" title="Sequence Facade">
+<link rel="next" href="macros.html" title="Macros">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="sequence_facade.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../extension.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="macros.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.extension.iterator_facade"></a>Iterator Facade</h3></div></div></div>
+<a name="fusion.extension.iterator_facade.description"></a><h4>
+<a name="id647564"></a>
+ Description
+ </h4>
+<p>
+ The iterator_facade
+ template provides an intrusive mechanism for producing a conforming Fusion
+ iterator.
+ </p>
+<a name="fusion.extension.iterator_facade.synopsis"></a><h4>
+<a name="id647613"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Derived</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">TravesalTag</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">iterator_facade</span><span class="special">;</span>
+</pre>
+<a name="fusion.extension.iterator_facade.usage"></a><h4>
+<a name="id647708"></a>
+ Usage
+ </h4>
+<p>
+ The user of iterator_facade derives his iterator type from a specialization
+ of iterator_facade and passes the derived iterator type as the first template
+ parameter. The second template parameter should be the traversal category
+ of the iterator being implemented.
+ </p>
+<p>
+ The user must the implement the key expressions required by their iterator
+ type.
+ </p>
+<div class="table">
+<a name="id647734"></a><p class="title"><b>Table 1.93. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Name
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">iterator</span></tt>, <tt class="computeroutput"><span class="identifier">It</span></tt>, <tt class="computeroutput"><span class="identifier">It1</span></tt>,
+ <tt class="computeroutput"><span class="identifier">It2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A type derived from iterator_facade
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">N</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="table">
+<a name="id647892"></a><p class="title"><b>Table 1.94. Key Expressions</b></p>
+<table class="table" summary="Key Expressions">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Result
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">iterator</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">value_of</span><span class="special">&lt;</span><span class="identifier">It</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The element stored at iterator position <tt class="computeroutput"><span class="identifier">It</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ None
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">iterator</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">deref</span><span class="special">&lt;</span><span class="identifier">It</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The type returned when dereferencing an iterator of type <tt class="computeroutput"><span class="identifier">It</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ None
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">iterator</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">deref</span><span class="special">&lt;</span><span class="identifier">It</span><span class="special">&gt;::</span><span class="identifier">call</span><span class="special">(</span><span class="identifier">it</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Dereferences iterator <tt class="computeroutput"><span class="identifier">it</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ None
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">iterator</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">next</span><span class="special">&lt;</span><span class="identifier">It</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The type of the next element from <tt class="computeroutput"><span class="identifier">It</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ None
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">iterator</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">next</span><span class="special">&lt;</span><span class="identifier">It</span><span class="special">&gt;::</span><span class="identifier">call</span><span class="special">(</span><span class="identifier">it</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The next iterator after <tt class="computeroutput"><span class="identifier">it</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ None
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">iterator</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">prior</span><span class="special">&lt;</span><span class="identifier">It</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The type of the next element from <tt class="computeroutput"><span class="identifier">It</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ None
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">iterator</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">prior</span><span class="special">&lt;</span><span class="identifier">It</span><span class="special">&gt;::</span><span class="identifier">call</span><span class="special">(</span><span class="identifier">it</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The next iterator after <tt class="computeroutput"><span class="identifier">it</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ None
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">iterator</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">advance</span><span class="special">&lt;</span><span class="identifier">It</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The type of an iterator advanced <tt class="computeroutput"><span class="identifier">N</span></tt>
+ elements from <tt class="computeroutput"><span class="identifier">It</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Implemented in terms of <tt class="computeroutput"><span class="identifier">next</span></tt>
+ and <tt class="computeroutput"><span class="identifier">prior</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">iterator</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">advance</span><span class="special">&lt;</span><span class="identifier">It</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">call</span><span class="special">(</span><span class="identifier">it</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An iterator advanced <tt class="computeroutput"><span class="identifier">N</span></tt>
+ elements from <tt class="computeroutput"><span class="identifier">it</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Implemented in terms of <tt class="computeroutput"><span class="identifier">next</span></tt>
+ and <tt class="computeroutput"><span class="identifier">prior</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">iterator</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">distance</span><span class="special">&lt;</span><span class="identifier">It1</span><span class="special">,</span> <span class="identifier">It2</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The distance between iterators of type <tt class="computeroutput"><span class="identifier">It1</span></tt>
+ and <tt class="computeroutput"><span class="identifier">It2</span></tt> as an <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>
+ </p>
+ </td>
+<td>
+ <p>
+ None
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">iterator</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">distance</span><span class="special">&lt;</span><span class="identifier">It1</span><span class="special">,</span> <span class="identifier">It2</span><span class="special">&gt;::</span><span class="identifier">call</span><span class="special">(</span><span class="identifier">it1</span><span class="special">,</span> <span class="identifier">it2</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The distance between iterator <tt class="computeroutput"><span class="identifier">it1</span></tt>
+ and <tt class="computeroutput"><span class="identifier">it2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ None
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">iterator</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">equal_to</span><span class="special">&lt;</span><span class="identifier">It1</span><span class="special">,</span> <span class="identifier">It2</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The distance between iterators of type <tt class="computeroutput"><span class="identifier">It1</span></tt>
+ and <tt class="computeroutput"><span class="identifier">It2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">same_type</span><span class="special">&lt;</span><span class="identifier">It1</span><span class="special">,</span> <span class="identifier">It2</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">iterator</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">equal_to</span><span class="special">&lt;</span><span class="identifier">It1</span><span class="special">,</span> <span class="identifier">It2</span><span class="special">&gt;::</span><span class="identifier">call</span><span class="special">(</span><span class="identifier">it1</span><span class="special">,</span> <span class="identifier">it2</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The distance between iterators <tt class="computeroutput"><span class="identifier">it1</span></tt>
+ and <tt class="computeroutput"><span class="identifier">it2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">same_type</span><span class="special">&lt;</span><span class="identifier">It1</span><span class="special">,</span> <span class="identifier">It2</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">()</span></tt>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.extension.iterator_facade.header"></a><h4>
+<a name="id649451"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">iterator</span><span class="special">/</span><span class="identifier">iterator_facade</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">iterator_facade</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="sequence_facade.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../extension.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="macros.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/extension/macros.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/extension/macros.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,43 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Macros</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../extension.html" title="Extension">
+<link rel="prev" href="iterator_facade.html" title="Iterator Facade">
+<link rel="next" href="macros/adapt_struct.html" title=" BOOST_FUSION_ADAPT_STRUCT">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="iterator_facade.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../extension.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="macros/adapt_struct.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.extension.macros"></a>Macros</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section"> BOOST_FUSION_ADAPT_STRUCT</span></dt>
+<dt><span class="section"> BOOST_FUSION_ADAPT_ASSOC_STRUCT</span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="iterator_facade.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../extension.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="macros/adapt_struct.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/extension/macros/adapt_assoc.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/extension/macros/adapt_assoc.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,123 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title> BOOST_FUSION_ADAPT_ASSOC_STRUCT</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../macros.html" title="Macros">
+<link rel="prev" href="adapt_struct.html" title=" BOOST_FUSION_ADAPT_STRUCT">
+<link rel="next" href="../../functional.html" title="Functional">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="adapt_struct.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../macros.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../functional.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.extension.macros.adapt_assoc"></a> BOOST_FUSION_ADAPT_ASSOC_STRUCT</h4></div></div></div>
+<a name="fusion.extension.macros.adapt_assoc.description"></a><h5>
+<a name="id650263"></a>
+ Description
+ </h5>
+<p>
+ BOOST_FUSION_ADAPT_ASSOC_STRUCT is a macro that can be used to generate
+ all the necessary boilerplate to make an arbitrary struct into a model
+ of <a href="../../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> and <a href="../../sequence/concepts/associative_sequence.html" title="Associative
+ Sequence">Associative
+ Sequence</a>.
+ </p>
+<a name="fusion.extension.macros.adapt_assoc.synopsis"></a><h5>
+<a name="id650314"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="identifier">BOOST_FUSION_ADAPT_ASSOC_STRUCT</span><span class="special">(</span>
+ <span class="identifier">struct_name</span>
+ <span class="special">(</span><span class="identifier">member_type0</span><span class="special">,</span> <span class="identifier">member_name0</span><span class="special">,</span> <span class="identifier">key_type0</span><span class="special">)</span>
+ <span class="special">(</span><span class="identifier">member_type1</span><span class="special">,</span> <span class="identifier">member_name1</span><span class="special">,</span> <span class="identifier">key_type1</span><span class="special">)</span>
+ <span class="special">...</span>
+ <span class="special">)</span>
+</pre>
+<a name="fusion.extension.macros.adapt_assoc.semantics"></a><h5>
+<a name="id650455"></a>
+ Semantics
+ </h5>
+<pre class="programlisting">
+<span class="identifier">BOOST_FUSION_ADAPT_ASSOC_STRUCT</span><span class="special">(</span>
+ <span class="identifier">struct_name</span>
+ <span class="special">(</span><span class="identifier">member_type0</span><span class="special">,</span> <span class="identifier">member_name0</span><span class="special">,</span> <span class="identifier">key_type0</span><span class="special">)</span>
+ <span class="special">(</span><span class="identifier">member_type1</span><span class="special">,</span> <span class="identifier">member_name1</span><span class="special">,</span> <span class="identifier">key_type1</span><span class="special">)</span>
+ <span class="special">...</span>
+ <span class="special">)</span>
+</pre>
+<p>
+ The above macro generates the necessary code to adapt <tt class="computeroutput"><span class="identifier">struct_name</span></tt>
+ as a model of <a href="../../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> and <a href="../../sequence/concepts/associative_sequence.html" title="Associative
+ Sequence">Associative
+ Sequence</a>. The sequence of <tt class="computeroutput"><span class="special">(</span><span class="identifier">member_typeN</span><span class="special">,</span>
+ <span class="identifier">member_nameN</span><span class="special">,</span>
+ <span class="identifier">key_typeN</span><span class="special">)</span></tt>
+ triples declare the type, name and key type of each of the struct members
+ that will be part of the sequence.
+ </p>
+<p>
+ The macro should be used at global scope, and <tt class="computeroutput"><span class="identifier">struct_name</span></tt>
+ should be the fully namespace qualified name of the struct to be converted.
+ </p>
+<p>
+ /adapted/struct/adapt_assoc_struct.hpp&gt;
+ </p>
+<a name="fusion.extension.macros.adapt_assoc.example"></a><h5>
+<a name="id650703"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">demo</span>
+<span class="special">{</span>
+ <span class="keyword">struct</span> <span class="identifier">employee</span>
+ <span class="special">{</span>
+ <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">name</span><span class="special">;</span>
+ <span class="keyword">int</span> <span class="identifier">age</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+
+<span class="keyword">namespace</span> <span class="identifier">keys</span>
+<span class="special">{</span>
+ <span class="keyword">struct</span> <span class="identifier">name</span><span class="special">;</span>
+ <span class="keyword">struct</span> <span class="identifier">age</span><span class="special">;</span>
+<span class="special">}</span>
+
+<span class="comment">// demo::employee is now a Fusion sequence
+</span><span class="comment">// It is also an associative sequence with
+</span><span class="comment">// keys keys::name and keys::age present.
+</span><span class="identifier">BOOST_FUSION_ADAPT_ASSOC_STRUCT</span><span class="special">(</span>
+ <span class="identifier">demo</span><span class="special">::</span><span class="identifier">employee</span>
+ <span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">,</span> <span class="identifier">name</span><span class="special">,</span> <span class="identifier">keys</span><span class="special">::</span><span class="identifier">name</span><span class="special">)</span>
+ <span class="special">(</span><span class="keyword">int</span><span class="special">,</span> <span class="identifier">age</span><span class="special">,</span> <span class="identifier">keys</span><span class="special">::</span><span class="identifier">age</span><span class="special">))</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="adapt_struct.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../macros.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../functional.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/extension/macros/adapt_struct.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/extension/macros/adapt_struct.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,109 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title> BOOST_FUSION_ADAPT_STRUCT</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../macros.html" title="Macros">
+<link rel="prev" href="../macros.html" title="Macros">
+<link rel="next" href="adapt_assoc.html" title=" BOOST_FUSION_ADAPT_ASSOC_STRUCT">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../macros.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../macros.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="adapt_assoc.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.extension.macros.adapt_struct"></a> BOOST_FUSION_ADAPT_STRUCT</h4></div></div></div>
+<a name="fusion.extension.macros.adapt_struct.description"></a><h5>
+<a name="id649650"></a>
+ Description
+ </h5>
+<p>
+ BOOST_FUSION_ADAPT_STRUCT is a macro that can be used to generate all the
+ necessary boilerplate to make an arbitrary struct into a <a href="../../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a>.
+ </p>
+<a name="fusion.extension.macros.adapt_struct.synopsis"></a><h5>
+<a name="id649692"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="identifier">BOOST_FUSION_ADAPT_STRUCT</span><span class="special">(</span>
+ <span class="identifier">struct_name</span>
+ <span class="special">(</span><span class="identifier">member_type0</span><span class="special">,</span> <span class="identifier">member_name0</span><span class="special">)</span>
+ <span class="special">(</span><span class="identifier">member_type1</span><span class="special">,</span> <span class="identifier">member_name1</span><span class="special">)</span>
+ <span class="special">...</span>
+ <span class="special">)</span>
+</pre>
+<a name="fusion.extension.macros.adapt_struct.semantics"></a><h5>
+<a name="id649812"></a>
+ Semantics
+ </h5>
+<pre class="programlisting">
+<span class="identifier">BOOST_FUSION_ADAPT_STRUCT</span><span class="special">(</span>
+ <span class="identifier">struct_name</span><span class="special">,</span>
+ <span class="special">(</span><span class="identifier">member_type0</span><span class="special">,</span> <span class="identifier">member_name0</span><span class="special">)</span>
+ <span class="special">(</span><span class="identifier">member_type1</span><span class="special">,</span> <span class="identifier">member_name1</span><span class="special">)</span>
+ <span class="special">...</span>
+ <span class="special">)</span>
+</pre>
+<p>
+ The above macro generates the necessary code to adapt <tt class="computeroutput"><span class="identifier">struct_name</span></tt>
+ as a model of <a href="../../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a>. The sequence of <tt class="computeroutput"><span class="special">(</span><span class="identifier">member_typeN</span><span class="special">,</span>
+ <span class="identifier">member_nameN</span><span class="special">)</span></tt>
+ pairs declare the type and names of each of the struct members that will
+ be part of the sequence.
+ </p>
+<p>
+ The macro should be used at global scope, and <tt class="computeroutput"><span class="identifier">struct_name</span></tt>
+ should be the fully namespace qualified name of the struct to be converted.
+ </p>
+<p>
+ /adapted/struct/adapt_struct.hpp&gt;
+ </p>
+<a name="fusion.extension.macros.adapt_struct.example"></a><h5>
+<a name="id650020"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">demo</span>
+<span class="special">{</span>
+ <span class="keyword">struct</span> <span class="identifier">employee</span>
+ <span class="special">{</span>
+ <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">name</span><span class="special">;</span>
+ <span class="keyword">int</span> <span class="identifier">age</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+
+<span class="comment">// demo::employee is now a Fusion sequence
+</span><span class="identifier">BOOST_FUSION_ADAPT_STRUCT</span><span class="special">(</span>
+ <span class="identifier">demo</span><span class="special">::</span><span class="identifier">employee</span>
+ <span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">,</span> <span class="identifier">name</span><span class="special">)</span>
+ <span class="special">(</span><span class="keyword">int</span><span class="special">,</span> <span class="identifier">age</span><span class="special">))</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../macros.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../macros.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="adapt_assoc.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/extension/sequence_facade.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/extension/sequence_facade.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,259 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Sequence Facade</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../extension.html" title="Extension">
+<link rel="prev" href="ext_full.html" title=" The Full Extension Mechanism">
+<link rel="next" href="iterator_facade.html" title="Iterator Facade">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="ext_full.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../extension.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="iterator_facade.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.extension.sequence_facade"></a>Sequence Facade</h3></div></div></div>
+<a name="fusion.extension.sequence_facade.description"></a><h4>
+<a name="id646253"></a>
+ Description
+ </h4>
+<p>
+ The sequence_facade
+ template provides an intrusive mechanism for producing a conforming Fusion
+ iterator.
+ </p>
+<a name="fusion.extension.sequence_facade.synopsis"></a><h4>
+<a name="id646302"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Derived</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">TravesalTag</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">IsView</span> <span class="special">=</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">sequence_facade</span><span class="special">;</span>
+</pre>
+<a name="fusion.extension.sequence_facade.usage"></a><h4>
+<a name="id646438"></a>
+ Usage
+ </h4>
+<p>
+ The user of sequence_facade derives his sequence
+ type from a specialization of sequence_facade and passes the derived
+ sequence type as the first template parameter. The second template parameter
+ should be the traversal category of the sequence being implemented. The 3rd
+ parameter should be set to <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>
+ if the sequence is a view.
+ </p>
+<p>
+ The user must the implement the key expressions required by their sequence
+ type.
+ </p>
+<div class="table">
+<a name="id646526"></a><p class="title"><b>Table 1.91. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Name
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">sequence</span></tt>, <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A type derived from sequence_facade
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">N</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="table">
+<a name="id646660"></a><p class="title"><b>Table 1.92. Key Expressions</b></p>
+<table class="table" summary="Key Expressions">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Result
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">sequence</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">begin</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The type of an iterator to the beginning of a sequence of type <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">sequence</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">begin</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">call</span><span class="special">(</span><span class="identifier">seq</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An iterator to the beginning of sequence <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">sequence</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">end</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The type of an iterator to the end of a sequence of type <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">sequence</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">end</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">call</span><span class="special">(</span><span class="identifier">seq</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An iterator to the end of sequence <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">sequence</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">size</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The size of a sequence of type <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ as an <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">sequence</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">size</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">call</span><span class="special">(</span><span class="identifier">seq</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The size of sequence <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">sequence</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">at</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The type of element <tt class="computeroutput"><span class="identifier">N</span></tt>
+ in a sequence of type <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">sequence</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">at</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">call</span><span class="special">(</span><span class="identifier">seq</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Element <tt class="computeroutput"><span class="identifier">N</span></tt> in sequence
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">sequence</span><span class="special">::</span><span class="keyword">template</span> <span class="identifier">value_at</span><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The type of the <tt class="computeroutput"><span class="identifier">N</span></tt>th
+ element in a sequence of type <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<p>
+ /sequence/sequence_facade.hpp&gt;
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="ext_full.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../extension.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="iterator_facade.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,161 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Functional</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="extension/macros/adapt_assoc.html" title=" BOOST_FUSION_ADAPT_ASSOC_STRUCT">
+<link rel="next" href="functional/concepts.html" title="Concepts">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="extension/macros/adapt_assoc.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functional/concepts.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.functional"></a>Functional</h2></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">Concepts</span></dt>
+<dd><dl>
+<dt><span class="section"> Callable Object</span></dt>
+<dt><span class="section"><a href="functional/concepts/reg_callable.html"> Regular Callable
+ Object</a></span></dt>
+<dt><span class="section"><a href="functional/concepts/def_callable.html"> Deferred
+ Callable Object</a></span></dt>
+<dt><span class="section"><a href="functional/concepts/poly.html"> Polymorphic Function
+ Object</a></span></dt>
+</dl></dd>
+<dt><span class="section">Invocation</span></dt>
+<dd><dl>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
+</dl></dd>
+<dt><span class="section"> Adapters</span></dt>
+<dd><dl>
+<dt><span class="section">fused</span></dt>
+<dt><span class="section">fused_procedure</span></dt>
+<dt><span class="section">fused_function_object</span></dt>
+<dt><span class="section">unfused_generic</span></dt>
+<dt><span class="section">unfused_lvalue_args</span></dt>
+<dt><span class="section">unfused_rvalue_args</span></dt>
+<dt><span class="section">unfused_typed</span></dt>
+</dl></dd>
+<dt><span class="section">Generation</span></dt>
+<dd><dl>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
+</dl></dd>
+</dl></div>
+<p>
+ Components to call functions and function objects and to make Fusion code callable
+ through a function object interface.
+ </p>
+<p>
+ /functional.hpp&gt;
+ </p>
+<a name="fusion.functional.fused_and_unfused_forms"></a><h3>
+<a name="id651071"></a>
+ <a href="functional.html#fusion.functional.fused_and_unfused_forms">Fused and unfused
+ forms</a>
+ </h3>
+<p>
+ What is a function call?
+ </p>
+<pre class="programlisting">
+<span class="identifier">f</span> <span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">,</span><span class="identifier">c</span><span class="special">)</span>
+</pre>
+<p>
+ It is a name and a tuple written next to each other, left-to-right.
+ </p>
+<p>
+ Although the C++ syntax does not allow to replace <tt class="literal">(a,b,c)</tt>
+ with some Fusion Sequence, introducing
+ yet another function provides a solution:
+ </p>
+<pre class="programlisting">
+<span class="identifier">invoke</span><span class="special">(</span><span class="identifier">f</span><span class="special">,</span><span class="identifier">my_sequence</span><span class="special">)</span>
+</pre>
+<p>
+ Alternatively it is possible to apply a simple transformation to <tt class="literal">f</tt>
+ in order to achieve the same effect:
+ </p>
+<pre class="programlisting">
+<span class="identifier">f</span> <span class="identifier">tuple</span> <span class="special">&lt;=&gt;</span> f' <span class="special">(</span><span class="identifier">tuple</span><span class="special">)</span>
+</pre>
+<p>
+ Now, <tt class="literal">f'</tt> is an unary function that takes the arguments to
+ <tt class="computeroutput"><span class="identifier">f</span></tt> as a tuple; <tt class="literal">f'</tt>
+ is the <span class="emphasis"><em>fused</em></span> form of <tt class="computeroutput"><span class="identifier">f</span></tt>.
+ Reading the above equivalence right-to-left to get the inverse transformation,
+ <tt class="computeroutput"><span class="identifier">f</span></tt> is the <span class="emphasis"><em>unfused</em></span>
+ form of <tt class="literal">f'</tt>.
+ </p>
+<a name="fusion.functional.calling_functions_and_function_objects"></a><h3>
+<a name="id651336"></a>
+ <a href="functional.html#fusion.functional.calling_functions_and_function_objects">Calling
+ functions and function objects</a>
+ </h3>
+<p>
+ Having generic C++ code call back arbitrary functions provided by the client
+ used to be a heavily repetitive task, as different functions can differ in
+ arity, invocation syntax and other properties that might be part of the type.
+ Transporting arguments as Fusion sequences and factoring out the invocation
+ makes Fusion algorithms applicable to function arguments and also reduces the
+ problem to one invocation syntax and a fixed arity (instead of an arbitrary
+ number of arbitrary arguments times several syntactic variants times additional
+ properties).
+ </p>
+<p>
+ Transforming an unfused function into its fused counterpart allows n-ary calls
+ from an algorithm that invokes an unary <a href="functional/concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a> with Sequence
+ arguments.
+ </p>
+<p>
+ The library provides several function templates to invoke different kinds of
+ functions and adapters to transform them into fused form, respectively. Every
+ variant has a corresponding generator function template that returns an adapter
+ instance for the given argument.
+ </p>
+<a name="fusion.functional.making_fusion_code_callable_through_a_function_object_interface"></a><h3>
+<a name="id651412"></a>
+ <a href="functional.html#fusion.functional.making_fusion_code_callable_through_a_function_object_interface">Making
+ Fusion code callable through a function object interface</a>
+ </h3>
+<p>
+ Transforming a fused function into its unfused counterpart allows to create
+ function objects to accept arbitrary calls. In other words, an unary function
+ object can be implemented instead of (maybe heavily overloaded) function templates
+ or function call operators.
+ </p>
+<p>
+ The library provides several adapter variants that implement this transformation,
+ ranging from strictly typed to fully generic. The latter provides a reusable,
+ approximate solution to <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2002/n1385.htm" target="_top">The
+ Forwarding Problem</a>. Every generic variant has a corresponding generator
+ function template that returns an adapter instance for the given argument.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="extension/macros/adapt_assoc.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functional/concepts.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/adapters.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/adapters.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,52 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title> Adapters</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functional.html" title="Functional">
+<link rel="prev" href="invocation/metafunctions/invoke_fobj.html" title="
+ invoke_function_object">
+<link rel="next" href="adapters/fused.html" title="fused">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="invocation/metafunctions/invoke_fobj.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functional.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="adapters/fused.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.functional.adapters"></a> Adapters</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">fused</span></dt>
+<dt><span class="section">fused_procedure</span></dt>
+<dt><span class="section">fused_function_object</span></dt>
+<dt><span class="section">unfused_generic</span></dt>
+<dt><span class="section">unfused_lvalue_args</span></dt>
+<dt><span class="section">unfused_rvalue_args</span></dt>
+<dt><span class="section">unfused_typed</span></dt>
+</dl></div>
+<p>
+ Function object templates to transform a particular target function.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="invocation/metafunctions/invoke_fobj.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functional.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="adapters/fused.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/adapters/fused.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/adapters/fused.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,245 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>fused</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../adapters.html" title=" Adapters">
+<link rel="prev" href="../adapters.html" title=" Adapters">
+<link rel="next" href="fused_procedure.html" title="fused_procedure">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../adapters.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="fused_procedure.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.functional.adapters.fused"></a>fused</h4></div></div></div>
+<a name="fusion.functional.adapters.fused.description"></a><h5>
+<a name="id659038"></a>
+ Description
+ </h5>
+<p>
+ An unary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic Function
+ Object</a> adapter template for <a href="../concepts/def_callable.html" title=" Deferred
+ Callable Object">Deferred
+ Callable Object</a> target functions. It takes a <a href="../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a> that contains the arguments for the target function.
+ </p>
+<p>
+ The type of the target function is allowed to be const qualified or a reference.
+ Const qualification is preserved and propagated appropriately (in other
+ words, only const versions of <tt class="literal">operator()</tt> can be used
+ for a target function object that is const or, if the target function object
+ is held by value, the adapter is const - these semantics have nothing to
+ do with the const qualification of a member function, which is referring
+ to the type of object pointed to by <tt class="literal">this</tt> which is specified
+ with the first element in the sequence passed to the adapter).
+ </p>
+<p>
+ If the target function is a pointer to a class members, the corresponding
+ object can be specified as a reference, pointer, or smart pointer. In case
+ of the latter, a freestanding <tt class="literal">get_pointer</tt> function must
+ be defined (Boost provides this function for <tt class="literal">std::auto_ptr</tt>
+ and boost::shared_ptr).
+ </p>
+<p>
+ /functional/adapter/fused.hpp&gt;
+ </p>
+<a name="fusion.functional.adapters.fused.synopsis"></a><h5>
+<a name="id659174"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">&gt;</span>
+<span class="keyword">class</span> <span class="identifier">fused</span><span class="special">;</span>
+</pre>
+<a name="fusion.functional.adapters.fused.template_parameters"></a><h5>
+<a name="id659253"></a>
+ <a href="fused.html#fusion.functional.adapters.fused.template_parameters">Template
+ parameters</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Function</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A <a href="../concepts/def_callable.html" title=" Deferred
+ Callable Object">Deferred
+ Callable Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.functional.adapters.fused.model_of"></a><h5>
+<a name="id659368"></a>
+ Model of
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li><a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic Function
+ Object</a></li>
+<li><a href="../concepts/def_callable.html" title=" Deferred
+ Callable Object">Deferred Callable
+ Object</a></li>
+</ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">R</span></tt></span></dt>
+<dd><p>
+ A possibly const qualified <a href="../concepts/def_callable.html" title=" Deferred
+ Callable Object">Deferred
+ Callable Object</a> type or reference type thereof
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">r</span></tt></span></dt>
+<dd><p>
+ An object convertible to <tt class="computeroutput"><span class="identifier">R</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
+<dd><p>
+ A Sequence of arguments that
+ are accepted by <tt class="computeroutput"><span class="identifier">r</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">f</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">fused</span><span class="special">&lt;</span><span class="identifier">R</span><span class="special">&gt;</span></tt>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.functional.adapters.fused.expression_semantics"></a><h5>
+<a name="id659589"></a>
+ <a href="fused.html#fusion.functional.adapters.fused.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">fused</span><span class="special">&lt;</span><span class="identifier">R</span><span class="special">&gt;(</span><span class="identifier">r</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a fused function as described above, initializes the target
+ function with <tt class="computeroutput"><span class="identifier">r</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">fused</span><span class="special">&lt;</span><span class="identifier">R</span><span class="special">&gt;()</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a fused function as described above, attempts to use <tt class="computeroutput"><span class="identifier">R</span></tt>'s default constructor.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Calls <tt class="computeroutput"><span class="identifier">r</span></tt> with the
+ elements in <tt class="computeroutput"><span class="identifier">s</span></tt> as
+ its arguments.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.functional.adapters.fused.example"></a><h5>
+<a name="id659843"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="identifier">fused</span><span class="special">&lt;</span> std::plus<span class="special">&lt;</span><span class="keyword">long</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="identifier">f</span><span class="special">;</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">f</span><span class="special">(</span>make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2l</span><span class="special">))</span> <span class="special">==</span> <span class="number">3l</span><span class="special">);</span>
+</pre>
+<a name="fusion.functional.adapters.fused.see_also"></a><h5>
+<a name="id660020"></a>
+ See also
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>fused_procedure</li>
+<li>fused_function_object</li>
+<li>invoke</li>
+<li>deduce</li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../adapters.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="fused_procedure.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/adapters/fused_function_object.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/adapters/fused_function_object.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,268 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>fused_function_object</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../adapters.html" title=" Adapters">
+<link rel="prev" href="fused_procedure.html" title="fused_procedure">
+<link rel="next" href="unfused_generic.html" title="unfused_generic">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="fused_procedure.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="unfused_generic.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.functional.adapters.fused_function_object"></a>fused_function_object</h4></div></div></div>
+<a name="fusion.functional.adapters.fused_function_object.description"></a><h5>
+<a name="id661713"></a>
+ Description
+ </h5>
+<p>
+ An unary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic Function
+ Object</a> adapter template for a <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a> target function. It takes a <a href="../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a> that contains the arguments for the target function.
+ </p>
+<p>
+ The type of the target function is allowed to be const qualified or a reference.
+ Const qualification is preserved and propagated appropriately (in other
+ words, only const versions of <tt class="literal">operator()</tt> can be used
+ for an target function object that is const or, if the target function
+ object is held by value, the adapter is const).
+ </p>
+<p>
+ /functional/adapter/fused_function_object.hpp&gt;
+ </p>
+<a name="fusion.functional.adapters.fused_function_object.synopsis"></a><h5>
+<a name="id661794"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Function</span><span class="special">&gt;</span>
+<span class="keyword">class</span> <span class="identifier">fused_function_object</span><span class="special">;</span>
+</pre>
+<a name="fusion.functional.adapters.fused_function_object.template_parameters"></a><h5>
+<a name="id661877"></a>
+ <a href="fused_function_object.html#fusion.functional.adapters.fused_function_object.template_parameters">Template
+ parameters</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Function</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic Function
+ Object</a> type
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.functional.adapters.fused_function_object.model_of"></a><h5>
+<a name="id661994"></a>
+ <a href="fused_function_object.html#fusion.functional.adapters.fused_function_object.model_of">Model
+ of</a>
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li><a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic Function
+ Object</a></li>
+<li><a href="../concepts/def_callable.html" title=" Deferred
+ Callable Object">Deferred Callable
+ Object</a></li>
+</ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">R</span></tt></span></dt>
+<dd><p>
+ A possibly const qualified <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a> type or reference type thereof
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">r</span></tt></span></dt>
+<dd><p>
+ An object convertible to <tt class="computeroutput"><span class="identifier">R</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
+<dd><p>
+ A Sequence of arguments that
+ are accepted by <tt class="computeroutput"><span class="identifier">r</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">f</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">fused</span><span class="special">&lt;</span><span class="identifier">R</span><span class="special">&gt;</span></tt>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.functional.adapters.fused_function_object.expression_semantics"></a><h5>
+<a name="id662215"></a>
+ <a href="fused_function_object.html#fusion.functional.adapters.fused_function_object.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">fused_function_object</span><span class="special">&lt;</span><span class="identifier">R</span><span class="special">&gt;(</span><span class="identifier">r</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a fused function as described above, initializes the target
+ function with <tt class="computeroutput"><span class="identifier">r</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">fused_function_object</span><span class="special">&lt;</span><span class="identifier">R</span><span class="special">&gt;()</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a fused function as described above, attempts to use <tt class="computeroutput"><span class="identifier">R</span></tt>'s default constructor.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Calls <tt class="computeroutput"><span class="identifier">r</span></tt> with the
+ elements in <tt class="computeroutput"><span class="identifier">s</span></tt> as
+ its arguments.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.functional.adapters.fused_function_object.example"></a><h5>
+<a name="id662471"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">SeqOfSeqs</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Func</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::transform<span class="special">&lt;</span> <span class="identifier">zip_view</span><span class="special">&lt;</span><span class="identifier">SeqOfSeqs</span><span class="special">&gt;</span> <span class="keyword">const</span><span class="special">,</span>
+ <span class="identifier">fused_function_object</span><span class="special">&lt;</span><span class="identifier">Func</span> <span class="keyword">const</span> <span class="special">&amp;&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">n_ary_transform</span><span class="special">(</span><span class="identifier">SeqOfSeqs</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">s</span><span class="special">,</span> <span class="identifier">Func</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">f</span><span class="special">)</span>
+<span class="special">{</span>
+ <span class="keyword">return</span> transform<span class="special">(</span><span class="identifier">zip_view</span><span class="special">&lt;</span><span class="identifier">SeqOfSeqs</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">),</span>
+ <span class="identifier">fused_function_object</span><span class="special">&lt;</span><span class="identifier">Func</span> <span class="keyword">const</span> <span class="special">&amp;&gt;(</span><span class="identifier">f</span><span class="special">));</span>
+<span class="special">}</span>
+
+<span class="keyword">struct</span> <span class="identifier">sub</span>
+<span class="special">{</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sig</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">result</span><span class="special">;</span>
+
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Self</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">result</span><span class="special">&lt;</span> <span class="identifier">Self</span><span class="special">(</span><span class="identifier">T</span><span class="special">,</span><span class="identifier">T</span><span class="special">)</span> <span class="special">&gt;</span>
+ <span class="special">{</span> <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">remove_reference</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">type</span><span class="special">;</span> <span class="special">};</span>
+
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="identifier">T</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">T</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="identifier">rhs</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">lhs</span> <span class="special">-</span> <span class="identifier">rhs</span><span class="special">;</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+
+<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
+<span class="special">{</span>
+ vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">a</span><span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">2.0f</span><span class="special">);</span>
+ vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">b</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">1.5f</span><span class="special">);</span>
+ vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">c</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">0.5f</span><span class="special">);</span>
+ <span class="identifier">assert</span><span class="special">(</span><span class="identifier">c</span> <span class="special">==</span> <span class="identifier">n_ary_transform</span><span class="special">(</span>vector_tie<span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">),</span> <span class="identifier">sub</span><span class="special">()));</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.adapters.fused_function_object.see_also"></a><h5>
+<a name="id663529"></a>
+ <a href="fused_function_object.html#fusion.functional.adapters.fused_function_object.see_also">See
+ also</a>
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>fused</li>
+<li>fused_procedure</li>
+<li><a href="../invocation/functions/invoke_fobj.html" title="
+ invoke_function_object"><tt class="computeroutput"><span class="identifier">invoke_function_object</span></tt></a></li>
+<li>deduce</li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="fused_procedure.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="unfused_generic.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/adapters/fused_procedure.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/adapters/fused_procedure.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,265 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>fused_procedure</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../adapters.html" title=" Adapters">
+<link rel="prev" href="fused.html" title="fused">
+<link rel="next" href="fused_function_object.html" title="fused_function_object">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="fused.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="fused_function_object.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.functional.adapters.fused_procedure"></a>fused_procedure</h4></div></div></div>
+<a name="fusion.functional.adapters.fused_procedure.description"></a><h5>
+<a name="id660152"></a>
+ Description
+ </h5>
+<p>
+ An unary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic Function
+ Object</a> adapter template for <a href="../concepts/callable.html" title=" Callable Object">Callable
+ Object</a> target functions. It takes a <a href="../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a> that contains the arguments for the target function.
+ </p>
+<p>
+ The result is discared and the adapter's return type is <tt class="computeroutput"><span class="keyword">void</span></tt>.
+ </p>
+<p>
+ The type of the target function is allowed to be const qualified or a reference.
+ Const qualification is preserved and propagated appropriately (in other
+ words, only const versions of <tt class="literal">operator()</tt> can be used
+ for a target function object that is const or, if the target function object
+ is held by value, the adapter is const - these semantics have nothing to
+ do with the const qualification of a member function, which is referring
+ to the type of object pointed to by <tt class="literal">this</tt> which is specified
+ with the first element in the sequence passed to the adapter).
+ </p>
+<p>
+ If the target function is a pointer to a members function, the corresponding
+ object can be specified as a reference, pointer, or smart pointer. In case
+ of the latter, a freestanding <tt class="literal">get_pointer</tt> function must
+ be defined (Boost provides this function for <tt class="literal">std::auto_ptr</tt>
+ and boost::shared_ptr).
+ </p>
+<p>
+ The target function must not be a pointer to a member object (dereferencing
+ such a pointer without returning anything does not make sense, so this
+ case is not implemented).
+ </p>
+<p>
+ /functional/adapter/fused_procedure.hpp&gt;
+ </p>
+<a name="fusion.functional.adapters.fused_procedure.synopsis"></a><h5>
+<a name="id660316"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">&gt;</span>
+<span class="keyword">class</span> <span class="identifier">fused_procedure</span><span class="special">;</span>
+</pre>
+<a name="fusion.functional.adapters.fused_procedure.template_parameters"></a><h5>
+<a name="id660397"></a>
+ <a href="fused_procedure.html#fusion.functional.adapters.fused_procedure.template_parameters">Template
+ parameters</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Function</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Callable Object
+ type
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.functional.adapters.fused_procedure.model_of"></a><h5>
+<a name="id660512"></a>
+ <a href="fused_procedure.html#fusion.functional.adapters.fused_procedure.model_of">Model
+ of</a>
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li><a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic Function
+ Object</a></li>
+<li><a href="../concepts/def_callable.html" title=" Deferred
+ Callable Object">Deferred Callable
+ Object</a></li>
+</ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">R</span></tt></span></dt>
+<dd><p>
+ A possibly const qualified <a href="../concepts/callable.html" title=" Callable Object">Callable
+ Object</a> type or reference type thereof
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">r</span></tt></span></dt>
+<dd><p>
+ An object convertible to <tt class="computeroutput"><span class="identifier">R</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
+<dd><p>
+ A Sequence of arguments that
+ are accepted by <tt class="computeroutput"><span class="identifier">r</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">f</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">fused</span><span class="special">&lt;</span><span class="identifier">R</span><span class="special">&gt;</span></tt>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.functional.adapters.fused_procedure.expression_semantics"></a><h5>
+<a name="id660732"></a>
+ <a href="fused_procedure.html#fusion.functional.adapters.fused_procedure.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">fused_procedure</span><span class="special">&lt;</span><span class="identifier">R</span><span class="special">&gt;(</span><span class="identifier">r</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a fused function as described above, initializes the target
+ function with <tt class="computeroutput"><span class="identifier">r</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">fused_procedure</span><span class="special">&lt;</span><span class="identifier">R</span><span class="special">&gt;()</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a fused function as described above, attempts to use <tt class="computeroutput"><span class="identifier">R</span></tt>'s default constructor.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Calls <tt class="computeroutput"><span class="identifier">r</span></tt> with the
+ elements in <tt class="computeroutput"><span class="identifier">s</span></tt> as
+ its arguments.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.functional.adapters.fused_procedure.example"></a><h5>
+<a name="id660989"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">SequenceOfSequences</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Func</span><span class="special">&gt;</span>
+<span class="keyword">void</span> <span class="identifier">n_ary_for_each</span><span class="special">(</span><span class="identifier">SequenceOfSequences</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">s</span><span class="special">,</span> <span class="identifier">Func</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">f</span><span class="special">)</span>
+<span class="special">{</span>
+ for_each<span class="special">(</span>zip_view<span class="special">&lt;</span><span class="identifier">SequenceOfSequences</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">),</span>
+ <span class="identifier">fused_procedure</span><span class="special">&lt;</span><span class="identifier">Func</span> <span class="keyword">const</span> <span class="special">&amp;&gt;(</span><span class="identifier">f</span><span class="special">));</span>
+<span class="special">}</span>
+
+<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
+<span class="special">{</span>
+ vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">a</span><span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">2.0f</span><span class="special">);</span>
+ vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">b</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">1.5f</span><span class="special">);</span>
+ <span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">lambda</span><span class="special">;</span>
+ <span class="identifier">n_ary_for_each</span><span class="special">(</span>vector_tie<span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">),</span> <span class="identifier">_1</span> <span class="special">-=</span> <span class="identifier">_2</span><span class="special">);</span>
+ <span class="identifier">assert</span><span class="special">(</span><span class="identifier">a</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">0.5f</span><span class="special">));</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.adapters.fused_procedure.see_also"></a><h5>
+<a name="id661597"></a>
+ <a href="fused_procedure.html#fusion.functional.adapters.fused_procedure.see_also">See
+ also</a>
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>fused</li>
+<li>fused_function_object</li>
+<li><a href="../invocation/functions/invoke_proc.html" title="
+ invoke_procedure"><tt class="computeroutput"><span class="identifier">invoke_procedure</span></tt></a></li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="fused.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="fused_function_object.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/adapters/unfused_generic.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/adapters/unfused_generic.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,294 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>unfused_generic</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../adapters.html" title=" Adapters">
+<link rel="prev" href="fused_function_object.html" title="fused_function_object">
+<link rel="next" href="unfused_lvalue_args.html" title="unfused_lvalue_args">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="fused_function_object.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="unfused_lvalue_args.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.functional.adapters.unfused_generic"></a>unfused_generic</h4></div></div></div>
+<a name="fusion.functional.adapters.unfused_generic.description"></a><h5>
+<a name="id663664"></a>
+ Description
+ </h5>
+<p>
+ An n-ary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic Function
+ Object</a> adapter template for an unary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a> target function. When called, its arguments are
+ bundled to a <a href="../../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> of references that is passed to the target function.
+ Non-const LValue arguments are transported as references to non-const,
+ otherwise references to const are used.
+ </p>
+<div class="sidebar"><p>
+ <span class="inlinemediaobject"><img src="../../../images/tip.png" alt="tip"></span> Detecting mutable LValues on a per-argument basis
+ is currently a compile time expensive operation (see <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2002/n1385.htm" target="_top">The
+ Forwarding Problem</a> for details). Therefore, there are two, lightweight
+ and more restricted variants of this class template, unfused_lvalue_args and unfused_rvalue_args.
+ </p></div>
+<p>
+ The type of the target function is allowed to be const qualified or a reference.
+ Const qualification is preserved and propagated appropriately (in other
+ words, only const versions of <tt class="literal">operator()</tt> can be used
+ if the target function object is const - or, in case the target function
+ object is held by value, the adapter is const).
+ </p>
+<p>
+ /functional/adapter/unfused_generic.hpp&gt;
+ </p>
+<a name="fusion.functional.adapters.unfused_generic.synopsis"></a><h5>
+<a name="id663821"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Function</span><span class="special">&gt;</span>
+<span class="keyword">class</span> <span class="identifier">unfused_generic</span><span class="special">;</span>
+</pre>
+<a name="fusion.functional.adapters.unfused_generic.template_parameters"></a><h5>
+<a name="id663902"></a>
+ <a href="unfused_generic.html#fusion.functional.adapters.unfused_generic.template_parameters">Template
+ parameters</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Function</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An unary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.functional.adapters.unfused_generic.model_of"></a><h5>
+<a name="id664018"></a>
+ <a href="unfused_generic.html#fusion.functional.adapters.unfused_generic.model_of">Model
+ of</a>
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li><a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic Function
+ Object</a></li>
+<li><a href="../concepts/def_callable.html" title=" Deferred
+ Callable Object">Deferred Callable
+ Object</a></li>
+</ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">F</span></tt></span></dt>
+<dd><p>
+ A possibly const qualified, unary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a> type or reference type thereof
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">f</span></tt></span></dt>
+<dd><p>
+ An object convertible to <tt class="computeroutput"><span class="identifier">F</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">UG</span></tt></span></dt>
+<dd><p>
+ The type <tt class="computeroutput"><span class="identifier">unfused_generic</span><span class="special">&lt;</span><span class="identifier">F</span><span class="special">&gt;</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">ug</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">UG</span></tt>,
+ initialized with <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">a0</span></tt>...<tt class="computeroutput"><span class="identifier">aN</span></tt></span></dt>
+<dd><p>
+ Arguments to <tt class="computeroutput"><span class="identifier">ug</span></tt>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.functional.adapters.unfused_generic.expression_semantics"></a><h5>
+<a name="id664286"></a>
+ <a href="unfused_generic.html#fusion.functional.adapters.unfused_generic.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">UG</span><span class="special">(</span><span class="identifier">f</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a fused function as described above, initializes the target
+ function with <tt class="computeroutput"><span class="identifier">f</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">UG</span><span class="special">()</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a fused function as described above, attempts to use <tt class="computeroutput"><span class="identifier">F</span></tt>'s default constructor.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">ug</span><span class="special">(</span><span class="identifier">a0</span></tt>...<tt class="computeroutput"><span class="identifier">aN</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Calls <tt class="computeroutput"><span class="identifier">f</span></tt> with a
+ Sequence that contains references
+ to the arguments <tt class="computeroutput"><span class="identifier">a0</span></tt>...<tt class="computeroutput"><span class="identifier">aN</span></tt>.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.functional.adapters.unfused_generic.example"></a><h5>
+<a name="id664552"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">class</span> <span class="identifier">fused_bound_1st</span>
+<span class="special">{</span>
+ <span class="keyword">typename</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">deduce</span><span class="special">&lt;</span><span class="identifier">Function</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">fnc_deferred</span><span class="special">;</span>
+ <span class="keyword">typename</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">deduce</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">xxx_bound</span><span class="special">;</span>
+<span class="keyword">public</span><span class="special">:</span>
+
+ <span class="identifier">fused_bound_1st</span><span class="special">(</span><span class="identifier">Function</span> <span class="identifier">deferred</span><span class="special">,</span> <span class="identifier">T</span> <span class="identifier">bound</span><span class="special">)</span>
+ <span class="special">:</span> <span class="identifier">fnc_deferred</span><span class="special">(</span><span class="identifier">deferred</span><span class="special">),</span> <span class="identifier">xxx_bound</span><span class="special">(</span><span class="identifier">bound</span><span class="special">)</span>
+ <span class="special">{</span> <span class="special">}</span>
+
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sig</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">result</span><span class="special">;</span>
+
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Self</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">result</span><span class="special">&lt;</span> <span class="identifier">Self</span><span class="special">(</span><span class="identifier">Seq</span><span class="special">)</span> <span class="special">&gt;</span>
+ <span class="special">:</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">invoke</span><span class="special">&lt;</span> <span class="identifier">Function</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">push_front</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">remove_reference</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="special">&gt;</span>
+ <span class="special">{</span> <span class="special">};</span>
+
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+ <span class="keyword">typename</span> <span class="identifier">result</span><span class="special">&lt;</span> <span class="keyword">void</span><span class="special">(</span><span class="identifier">Seq</span><span class="special">)</span> <span class="special">&gt;::</span><span class="identifier">type</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Seq</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">s</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">invoke</span><span class="special">(</span><span class="identifier">fnc_deferred</span><span class="special">,</span> <span class="identifier">push_front</span><span class="special">(</span><span class="identifier">s</span><span class="special">,</span><span class="identifier">xxx_bound</span><span class="special">));</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="identifier">unfused_generic</span><span class="special">&lt;</span> <span class="identifier">fused_bound_1st</span><span class="special">&lt;</span><span class="identifier">Function</span><span class="special">,</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&gt;</span>
+<span class="identifier">bind_1st</span><span class="special">(</span><span class="identifier">Function</span> <span class="identifier">f</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">x</span><span class="special">)</span>
+<span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">unfused_generic</span><span class="special">&lt;</span> <span class="identifier">fused_bound_1st</span><span class="special">&lt;</span><span class="identifier">Function</span><span class="special">,</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&gt;(</span>
+ <span class="identifier">fused_bound_1st</span><span class="special">&lt;</span><span class="identifier">Function</span><span class="special">,</span><span class="identifier">T</span><span class="special">&gt;(</span><span class="identifier">f</span><span class="special">,</span><span class="identifier">x</span><span class="special">)</span> <span class="special">);</span>
+<span class="special">}</span>
+
+<span class="keyword">int</span> <span class="identifier">test_func</span><span class="special">(</span><span class="keyword">int</span> <span class="identifier">a</span><span class="special">,</span> <span class="keyword">int</span> <span class="identifier">b</span><span class="special">,</span> <span class="keyword">int</span> <span class="identifier">c</span><span class="special">)</span>
+<span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">a</span><span class="special">+</span><span class="identifier">b</span><span class="special">+</span><span class="identifier">c</span><span class="special">;</span>
+<span class="special">}</span>
+
+<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
+<span class="special">{</span>
+ <span class="identifier">assert</span><span class="special">(</span><span class="identifier">bind_1st</span><span class="special">(&amp;</span> <span class="identifier">test_func</span><span class="special">,</span><span class="number">3</span><span class="special">)(-</span><span class="number">2</span><span class="special">,-</span><span class="number">1</span><span class="special">)</span> <span class="special">==</span> <span class="number">0</span><span class="special">);</span>
+ <span class="identifier">assert</span><span class="special">(</span><span class="identifier">bind_1st</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">plus</span><span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;(),</span> <span class="number">1</span><span class="special">)(</span><span class="number">0.5f</span><span class="special">)</span> <span class="special">==</span> <span class="number">1.5f</span><span class="special">);</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.adapters.unfused_generic.see_also"></a><h5>
+<a name="id665948"></a>
+ <a href="unfused_generic.html#fusion.functional.adapters.unfused_generic.see_also">See
+ also</a>
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>unfused_lvalue_args</li>
+<li>unfused_rvalue_args</li>
+<li>unfused_typed</li>
+<li>deduce</li>
+<li>deduce_sequence</li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="fused_function_object.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="unfused_lvalue_args.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/adapters/unfused_lvalue_args.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/adapters/unfused_lvalue_args.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,262 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>unfused_lvalue_args</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../adapters.html" title=" Adapters">
+<link rel="prev" href="unfused_generic.html" title="unfused_generic">
+<link rel="next" href="unfused_rvalue_args.html" title="unfused_rvalue_args">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="unfused_generic.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="unfused_rvalue_args.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.functional.adapters.unfused_lvalue_args"></a>unfused_lvalue_args</h4></div></div></div>
+<a name="fusion.functional.adapters.unfused_lvalue_args.description"></a><h5>
+<a name="id666106"></a>
+ Description
+ </h5>
+<p>
+ An n-ary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic Function
+ Object</a> adapter template for an unary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a> target function. When called, its arguments are
+ bundled to a <a href="../../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> of references that is passed to the target function
+ object. Only LValue arguments are accepted.
+ </p>
+<p>
+ The type of the target function is allowed to be const qualified or a reference.
+ Const qualification is preserved and propagated appropriately (in other
+ words, only const versions of <tt class="literal">operator()</tt> can be used
+ if the target function object is const - or, in case the target function
+ object is held by value, the adapter is const).
+ </p>
+<p>
+ /functional/adapter/unfused_lvalue_args.hpp&gt;
+ </p>
+<a name="fusion.functional.adapters.unfused_lvalue_args.synopsis"></a><h5>
+<a name="id666190"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Function</span><span class="special">&gt;</span>
+<span class="keyword">class</span> <span class="identifier">unfused_lvalue_args</span><span class="special">;</span>
+</pre>
+<a name="fusion.functional.adapters.unfused_lvalue_args.template_parameters"></a><h5>
+<a name="id666272"></a>
+ <a href="unfused_lvalue_args.html#fusion.functional.adapters.unfused_lvalue_args.template_parameters">Template
+ parameters</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Function</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A unary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.functional.adapters.unfused_lvalue_args.model_of"></a><h5>
+<a name="id666387"></a>
+ <a href="unfused_lvalue_args.html#fusion.functional.adapters.unfused_lvalue_args.model_of">Model
+ of</a>
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li><a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic Function
+ Object</a></li>
+<li><a href="../concepts/def_callable.html" title=" Deferred
+ Callable Object">Deferred Callable
+ Object</a></li>
+</ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">F</span></tt></span></dt>
+<dd><p>
+ A possibly const qualified, unary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a> type or reference type thereof
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">f</span></tt></span></dt>
+<dd><p>
+ An object convertible to <tt class="computeroutput"><span class="identifier">F</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">UL</span></tt></span></dt>
+<dd><p>
+ The type <tt class="computeroutput"><span class="identifier">unfused_lvalue_args</span><span class="special">&lt;</span><span class="identifier">F</span><span class="special">&gt;</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">ul</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">UL</span></tt>,
+ initialized with <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">a0</span></tt>...<tt class="computeroutput"><span class="identifier">aN</span></tt></span></dt>
+<dd><p>
+ Arguments to <tt class="computeroutput"><span class="identifier">ul</span></tt>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.functional.adapters.unfused_lvalue_args.expression_semantics"></a><h5>
+<a name="id666657"></a>
+ <a href="unfused_lvalue_args.html#fusion.functional.adapters.unfused_lvalue_args.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">UL</span><span class="special">(</span><span class="identifier">f</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a fused function as described above, initializes the target
+ function with <tt class="computeroutput"><span class="identifier">f</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">UL</span><span class="special">()</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a fused function as described above, attempts to use <tt class="computeroutput"><span class="identifier">F</span></tt>'s default constructor.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">ul</span><span class="special">(</span><span class="identifier">a0</span></tt>...<tt class="computeroutput"><span class="identifier">aN</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Calls <tt class="computeroutput"><span class="identifier">f</span></tt> with a
+ Sequence that contains references
+ to the arguments <tt class="computeroutput"><span class="identifier">a0</span></tt>...<tt class="computeroutput"><span class="identifier">aN</span></tt>.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.functional.adapters.unfused_lvalue_args.example"></a><h5>
+<a name="id666924"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">fused_incrementer</span>
+<span class="special">{</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">result</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">void</span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+ <span class="keyword">void</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Seq</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">s</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ for_each<span class="special">(</span><span class="identifier">s</span><span class="special">,++</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">lambda</span><span class="special">::</span><span class="identifier">_1</span><span class="special">);</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+
+<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
+<span class="special">{</span>
+ <span class="identifier">unfused_lvalue_args</span><span class="special">&lt;</span><span class="identifier">fused_incrementer</span><span class="special">&gt;</span> <span class="identifier">increment</span><span class="special">;</span>
+ <span class="keyword">int</span> <span class="identifier">a</span> <span class="special">=</span> <span class="number">2</span><span class="special">;</span> <span class="keyword">char</span> <span class="identifier">b</span> <span class="special">=</span> <span class="char">'X'</span><span class="special">;</span>
+ <span class="identifier">increment</span><span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">);</span>
+ <span class="identifier">assert</span><span class="special">(</span><span class="identifier">a</span> <span class="special">==</span> <span class="number">3</span> <span class="special">&amp;&amp;</span> <span class="identifier">b</span> <span class="special">==</span> <span class="char">'Y'</span><span class="special">);</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.adapters.unfused_lvalue_args.see_also"></a><h5>
+<a name="id667422"></a>
+ <a href="unfused_lvalue_args.html#fusion.functional.adapters.unfused_lvalue_args.see_also">See
+ also</a>
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>unfused_rvalue_args</li>
+<li>unfused_generic</li>
+<li>unfused_typed</li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="unfused_generic.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="unfused_rvalue_args.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/adapters/unfused_rvalue_args.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/adapters/unfused_rvalue_args.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,262 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>unfused_rvalue_args</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../adapters.html" title=" Adapters">
+<link rel="prev" href="unfused_lvalue_args.html" title="unfused_lvalue_args">
+<link rel="next" href="unfused_typed.html" title="unfused_typed">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="unfused_lvalue_args.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="unfused_typed.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.functional.adapters.unfused_rvalue_args"></a>unfused_rvalue_args</h4></div></div></div>
+<a name="fusion.functional.adapters.unfused_rvalue_args.description"></a><h5>
+<a name="id667536"></a>
+ Description
+ </h5>
+<p>
+ An n-ary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic Function
+ Object</a> adapter template for an unary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a> target function. When called, its arguments are
+ bundled to a <a href="../../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> of references that is passed to the target function
+ object. All referenced objects in the sequence are const qualified.
+ </p>
+<p>
+ The type of the target function is allowed to be const qualified or a reference.
+ Const qualification is preserved and propagated appropriately (in other
+ words, only const versions of <tt class="literal">operator()</tt> can be used
+ if the target function object is const - or, in case the target function
+ object is held by value, the adapter is const).
+ </p>
+<p>
+ /functional/adapter/unfused_rvalue_args.hpp&gt;
+ </p>
+<a name="fusion.functional.adapters.unfused_rvalue_args.synopsis"></a><h5>
+<a name="id667621"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Function</span><span class="special">&gt;</span>
+<span class="keyword">class</span> <span class="identifier">unfused_rvalue_args</span><span class="special">;</span>
+</pre>
+<a name="fusion.functional.adapters.unfused_rvalue_args.template_parameters"></a><h5>
+<a name="id667703"></a>
+ <a href="unfused_rvalue_args.html#fusion.functional.adapters.unfused_rvalue_args.template_parameters">Template
+ parameters</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Function</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A unary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.functional.adapters.unfused_rvalue_args.model_of"></a><h5>
+<a name="id667818"></a>
+ <a href="unfused_rvalue_args.html#fusion.functional.adapters.unfused_rvalue_args.model_of">Model
+ of</a>
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li><a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic Function
+ Object</a></li>
+<li><a href="../concepts/def_callable.html" title=" Deferred
+ Callable Object">Deferred Callable
+ Object</a></li>
+</ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">F</span></tt></span></dt>
+<dd><p>
+ A possibly const qualified, unary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a> type or reference type thereof
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">f</span></tt></span></dt>
+<dd><p>
+ An object convertible to <tt class="computeroutput"><span class="identifier">F</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">UR</span></tt></span></dt>
+<dd><p>
+ The type <tt class="computeroutput"><span class="identifier">unfused_rvalue_args</span><span class="special">&lt;</span><span class="identifier">F</span><span class="special">&gt;</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">ur</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">UR</span></tt>,
+ initialized with <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">a0</span></tt>...<tt class="computeroutput"><span class="identifier">aN</span></tt></span></dt>
+<dd><p>
+ Arguments to <tt class="computeroutput"><span class="identifier">ur</span></tt>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.functional.adapters.unfused_rvalue_args.expression_semantics"></a><h5>
+<a name="id668089"></a>
+ <a href="unfused_rvalue_args.html#fusion.functional.adapters.unfused_rvalue_args.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">UR</span><span class="special">(</span><span class="identifier">f</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a fused function as described above, initializes the target
+ function with <tt class="computeroutput"><span class="identifier">f</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">UR</span><span class="special">()</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a fused function as described above, attempts to use <tt class="computeroutput"><span class="identifier">F</span></tt>'s default constructor.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">ur</span><span class="special">(</span><span class="identifier">a0</span></tt>...<tt class="computeroutput"><span class="identifier">aN</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Calls <tt class="computeroutput"><span class="identifier">f</span></tt> with a
+ Sequence that contains references
+ to the arguments <tt class="computeroutput"><span class="identifier">a0</span></tt>...<tt class="computeroutput"><span class="identifier">aN</span></tt>.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.functional.adapters.unfused_rvalue_args.example"></a><h5>
+<a name="id668355"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">sequence_printer</span>
+<span class="special">{</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">result</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">void</span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+ <span class="keyword">void</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Seq</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">s</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">s</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+
+<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
+<span class="special">{</span>
+ <span class="identifier">unfused_rvalue_args</span><span class="special">&lt;</span><span class="identifier">sequence_printer</span><span class="special">&gt;</span> <span class="identifier">print</span><span class="special">;</span>
+ <span class="identifier">print</span><span class="special">(</span><span class="number">24</span><span class="special">,</span><span class="string">"bottles of beer in"</span><span class="special">,</span><span class="char">'a'</span><span class="special">,</span><span class="string">"box."</span><span class="special">);</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.adapters.unfused_rvalue_args.see_also"></a><h5>
+<a name="id668752"></a>
+ <a href="unfused_rvalue_args.html#fusion.functional.adapters.unfused_rvalue_args.see_also">See
+ also</a>
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>unfused_lvalue_args</li>
+<li>unfused_generic</li>
+<li>unfused_typed</li>
+<li>deduce</li>
+<li>deduce_sequence</li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="unfused_lvalue_args.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="unfused_typed.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/adapters/unfused_typed.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/adapters/unfused_typed.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,343 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>unfused_typed</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../adapters.html" title=" Adapters">
+<link rel="prev" href="unfused_rvalue_args.html" title="unfused_rvalue_args">
+<link rel="next" href="../generation.html" title="Generation">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="unfused_rvalue_args.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../generation.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.functional.adapters.unfused_typed"></a>unfused_typed</h4></div></div></div>
+<a name="fusion.functional.adapters.unfused_typed.description"></a><h5>
+<a name="id668906"></a>
+ Description
+ </h5>
+<p>
+ An n-ary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic Function
+ Object</a> adapter template for an unary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a> target function. When called, its arguments are
+ bundled to a <a href="../../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> that is passed to the target function object.
+ </p>
+<p>
+ The call operators of esulting function objects are strictly typed (in
+ other words, non-templatized) with the types from a Sequence.
+ </p>
+<p>
+ The type of the target function is allowed to be const qualified or a reference.
+ Const qualification is preserved and propagated appropriately (in other
+ words, only const versions of <tt class="literal">operator()</tt> can be used
+ if the target function object is const - or, in case the target function
+ object is held by value, the adapter is const).
+ </p>
+<div class="sidebar"><p>
+ <span class="inlinemediaobject"><img src="../../../images/note.png" alt="note"></span> For Microsoft Visual C++ 7.1 (Visual Studio 2003)
+ the detection of the Function Object's const qualification easily causes
+ an internal error. Therefore the adapter is always treated as if it was
+ const.
+ </p></div>
+<div class="sidebar"><p>
+ <span class="inlinemediaobject"><img src="../../../images/tip.png" alt="tip"></span> If the type sequence passed to this template contains
+ non-reference elements, the element is copied only once - the call operator's
+ signature is optimized automatically to avoid by-value parameters.
+ </p></div>
+<p>
+ /functional/adapter/unfused_typed.hpp&gt;
+ </p>
+<a name="fusion.functional.adapters.unfused_typed.synopsis"></a><h5>
+<a name="id669062"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Function</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">class</span> <span class="identifier">unfused_typed</span><span class="special">;</span>
+</pre>
+<a name="fusion.functional.adapters.unfused_typed.template_parameters"></a><h5>
+<a name="id669161"></a>
+ <a href="unfused_typed.html#fusion.functional.adapters.unfused_typed.template_parameters">Template
+ parameters</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Function</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A unary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A Sequence
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.functional.adapters.unfused_typed.model_of"></a><h5>
+<a name="id669318"></a>
+ <a href="unfused_typed.html#fusion.functional.adapters.unfused_typed.model_of">Model
+ of</a>
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li><a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic Function
+ Object</a></li>
+<li><a href="../concepts/def_callable.html" title=" Deferred
+ Callable Object">Deferred Callable
+ Object</a></li>
+</ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">F</span></tt></span></dt>
+<dd><p>
+ A possibly const qualified, unary <a href="../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a> type or reference type thereof
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">f</span></tt></span></dt>
+<dd><p>
+ An object convertible to <tt class="computeroutput"><span class="identifier">F</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">S</span></tt></span></dt>
+<dd><p>
+ A Sequence of parameter types
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">UT</span></tt></span></dt>
+<dd><p>
+ The type <tt class="computeroutput"><span class="identifier">unfused_typed</span><span class="special">&lt;</span><span class="identifier">F</span><span class="special">,</span><span class="identifier">S</span><span class="special">&gt;</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">ut</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">UT</span></tt>,
+ initialized with <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">a0</span></tt>...<tt class="computeroutput"><span class="identifier">aN</span></tt></span></dt>
+<dd><p>
+ Arguments to <tt class="computeroutput"><span class="identifier">ut</span></tt>, convertible
+ to the types in <tt class="computeroutput"><span class="identifier">S</span></tt>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.functional.adapters.unfused_typed.expression_semantics"></a><h5>
+<a name="id669642"></a>
+ <a href="unfused_typed.html#fusion.functional.adapters.unfused_typed.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">UT</span><span class="special">(</span><span class="identifier">f</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a fused function as described above, initializes the target
+ function with <tt class="computeroutput"><span class="identifier">f</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">UT</span><span class="special">()</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a fused function as described above, attempts to use <tt class="computeroutput"><span class="identifier">F</span></tt>'s default constructor.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">ut</span><span class="special">(</span><span class="identifier">a0</span></tt>...<tt class="computeroutput"><span class="identifier">aN</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Calls <tt class="computeroutput"><span class="identifier">f</span></tt> with an
+ instance of <tt class="computeroutput"><span class="identifier">S</span></tt> (or
+ a subsequence of <tt class="computeroutput"><span class="identifier">S</span></tt>
+ starting at the first element, if fewer arguments are given and
+ the overload hasn't been disabled) initialized with <tt class="computeroutput"><span class="identifier">a0</span></tt>...<tt class="computeroutput"><span class="identifier">aN</span></tt>.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.functional.adapters.unfused_typed.example"></a><h5>
+<a name="id669926"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">add_assign</span> <span class="comment">// applies operator+=
+</span><span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">void</span> <span class="identifier">result_type</span><span class="special">;</span> <span class="comment">// for simplicity
+</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">void</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">T</span> <span class="special">&amp;</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">rhs</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="identifier">lhs</span> <span class="special">+=</span> <span class="identifier">rhs</span><span class="special">;</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Tie</span><span class="special">&gt;</span>
+<span class="keyword">class</span> <span class="identifier">fused_parallel_adder</span>
+<span class="special">{</span>
+ <span class="identifier">Tie</span> <span class="identifier">tie_dest</span><span class="special">;</span>
+<span class="keyword">public</span><span class="special">:</span>
+ <span class="keyword">explicit</span> <span class="identifier">fused_parallel_adder</span><span class="special">(</span><span class="identifier">Tie</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">dest</span><span class="special">)</span>
+ <span class="special">:</span> <span class="identifier">tie_dest</span><span class="special">(</span><span class="identifier">dest</span><span class="special">)</span>
+ <span class="special">{</span> <span class="special">}</span>
+
+ <span class="keyword">typedef</span> <span class="keyword">void</span> <span class="identifier">result_type</span><span class="special">;</span>
+
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+ <span class="keyword">void</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Seq</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">s</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="identifier">for_each</span><span class="special">(</span> <span class="identifier">zip</span><span class="special">(</span><span class="identifier">tie_dest</span><span class="special">,</span><span class="identifier">s</span><span class="special">),</span> <span class="identifier">fused</span><span class="special">&lt;</span><span class="identifier">add_assign</span><span class="special">&gt;()</span> <span class="special">);</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+
+<span class="comment">// accepts a tie and creates a typed function object from it
+</span><span class="keyword">struct</span> <span class="identifier">fused_parallel_adder_maker</span>
+<span class="special">{</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sig</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">result</span><span class="special">;</span>
+
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Self</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">result</span><span class="special">&lt;</span> <span class="identifier">Self</span><span class="special">(</span><span class="identifier">Seq</span><span class="special">)</span> <span class="special">&gt;</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">remove_reference</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">seq</span><span class="special">;</span>
+
+ <span class="keyword">typedef</span> <span class="identifier">unfused_typed</span><span class="special">&lt;</span> <span class="identifier">fused_parallel_adder</span><span class="special">&lt;</span><span class="identifier">seq</span><span class="special">&gt;,</span>
+ <span class="keyword">typename</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">transform</span><span class="special">&lt;</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">remove_reference</span><span class="special">&lt;</span><span class="identifier">_</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span> <span class="special">&gt;</span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+ <span class="keyword">typename</span> <span class="identifier">result</span><span class="special">&lt;</span> <span class="keyword">void</span><span class="special">(</span><span class="identifier">Seq</span><span class="special">)</span> <span class="special">&gt;::</span><span class="identifier">type</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Seq</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">tie</span><span class="special">)</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="keyword">typename</span> <span class="identifier">result</span><span class="special">&lt;</span> <span class="keyword">void</span><span class="special">(</span><span class="identifier">Seq</span><span class="special">)</span> <span class="special">&gt;::</span><span class="identifier">type</span><span class="special">(</span>
+ <span class="identifier">fused_parallel_adder</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;(</span><span class="identifier">tie</span><span class="special">)</span> <span class="special">);</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+<span class="identifier">unfused_lvalue_args</span><span class="special">&lt;</span><span class="identifier">fused_parallel_adder_maker</span><span class="special">&gt;</span> <span class="identifier">parallel_add</span><span class="special">;</span>
+
+<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
+<span class="special">{</span>
+ <span class="keyword">int</span> <span class="identifier">a</span> <span class="special">=</span> <span class="number">2</span><span class="special">;</span> <span class="keyword">char</span> <span class="identifier">b</span> <span class="special">=</span> <span class="char">'X'</span><span class="special">;</span>
+ <span class="comment">// the second call is strictly typed with the types deduced from the
+</span> <span class="comment">// first call
+</span> <span class="identifier">parallel_add</span><span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">)(</span><span class="number">3</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
+ <span class="identifier">parallel_add</span><span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">)(</span><span class="number">3</span><span class="special">);</span>
+ <span class="identifier">parallel_add</span><span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">)();</span>
+ <span class="identifier">assert</span><span class="special">(</span><span class="identifier">a</span> <span class="special">==</span> <span class="number">8</span> <span class="special">&amp;&amp;</span> <span class="identifier">b</span> <span class="special">==</span> <span class="char">'Z'</span><span class="special">);</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.adapters.unfused_typed.see_also"></a><h5>
+<a name="id671416"></a>
+ See also
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>unfused_generic</li>
+<li>unfused_lvalue_args</li>
+<li>unfused_rvalue_args</li>
+<li>deduce</li>
+<li>deduce_sequence</li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="unfused_rvalue_args.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../generation.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/concepts.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/concepts.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,48 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Concepts</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functional.html" title="Functional">
+<link rel="prev" href="../functional.html" title="Functional">
+<link rel="next" href="concepts/callable.html" title=" Callable Object">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functional.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functional.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="concepts/callable.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.functional.concepts"></a>Concepts</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section"> Callable Object</span></dt>
+<dt><span class="section"><a href="concepts/reg_callable.html"> Regular Callable
+ Object</a></span></dt>
+<dt><span class="section"><a href="concepts/def_callable.html"> Deferred
+ Callable Object</a></span></dt>
+<dt><span class="section"><a href="concepts/poly.html"> Polymorphic Function
+ Object</a></span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functional.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functional.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="concepts/callable.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/concepts/callable.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/concepts/callable.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,80 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title> Callable Object</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../concepts.html" title="Concepts">
+<link rel="prev" href="../concepts.html" title="Concepts">
+<link rel="next" href="reg_callable.html" title=" Regular Callable
+ Object">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../concepts.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="reg_callable.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.functional.concepts.callable"></a> Callable Object</h4></div></div></div>
+<a name="fusion.functional.concepts.callable.description"></a><h5>
+<a name="id651511"></a>
+ Description
+ </h5>
+<p>
+ A pointer to a function, a pointer to member function, a pointer to member
+ data, or a class type whose objects can appear immediately to the left
+ of a function call operator.
+ </p>
+<a name="fusion.functional.concepts.callable.models"></a><h5>
+<a name="id651543"></a>
+ Models
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>
+ function pointer types
+ </li>
+<li>
+ member (function or data) pointer types
+ </li>
+<li>
+ all kinds of function objects
+ </li>
+</ul></div>
+<a name="fusion.functional.concepts.callable.examples"></a><h5>
+<a name="id651585"></a>
+ Examples
+ </h5>
+<pre class="programlisting">
+<span class="special">&amp;</span> <span class="identifier">a_free_function</span>
+<span class="special">&amp;</span> <span class="identifier">a_class</span><span class="special">::</span><span class="identifier">a_static_member_function</span>
+<span class="special">&amp;</span> <span class="identifier">a_class</span><span class="special">::</span><span class="identifier">a_nonstatic_data_member</span>
+<span class="special">&amp;</span> <span class="identifier">a_class</span><span class="special">::</span><span class="identifier">a_nonstatic_member_function</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">less</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;()</span>
+<span class="comment">// using namespace boost;
+</span><span class="identifier">bind</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">less</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;(),</span> <span class="identifier">_1</span><span class="special">,</span> <span class="number">5</span><span class="special">)</span>
+<span class="identifier">lambda</span><span class="special">::</span><span class="identifier">_1</span> <span class="special">+=</span> <span class="identifier">lambda</span><span class="special">::</span><span class="identifier">_2</span><span class="special">;</span>
+<span class="identifier">fusion</span><span class="special">::</span><a href="../generation/functions/mk_fused_fobj.html" title="
+ make_fused_function_object"><tt class="computeroutput"><span class="identifier">make_fused_function_object</span></tt></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">less</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;())</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../concepts.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="reg_callable.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/concepts/def_callable.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/concepts/def_callable.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,162 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title> Deferred
+ Callable Object</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../concepts.html" title="Concepts">
+<link rel="prev" href="reg_callable.html" title=" Regular Callable
+ Object">
+<link rel="next" href="poly.html" title=" Polymorphic Function
+ Object">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="reg_callable.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="poly.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.functional.concepts.def_callable"></a><a href="def_callable.html" title=" Deferred
+ Callable Object"> Deferred
+ Callable Object</a></h4></div></div></div>
+<a name="fusion.functional.concepts.def_callable.description"></a><h5>
+<a name="id652622"></a>
+ Description
+ </h5>
+<p>
+ Callable Object
+ types that work with Boost.ResultOf
+ to determine the result of a call.
+ </p>
+<a name="fusion.functional.concepts.def_callable.refinement_of"></a><h5>
+<a name="id652669"></a>
+ <a href="def_callable.html#fusion.functional.concepts.def_callable.refinement_of">Refinement
+ of</a>
+ </h5>
+<div class="itemizedlist"><ul type="disc"><li>Callable Object</li></ul></div>
+<div class="sidebar"><p>
+ note Once C++ supports the <tt class="literal">decltype</tt> keyword, all models
+ of Callable Object
+ will also be models of <a href="def_callable.html" title=" Deferred
+ Callable Object">Deferred
+ Callable Object</a>, because function objects won't need client-side
+ support for <tt class="computeroutput"><span class="identifier">result_of</span></tt>.
+ </p></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">F</span></tt></span></dt>
+<dd><p>
+ A possibly const qualified Deferred Callable Object type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">A1</span>
+ <span class="special">...</span><span class="identifier">AN</span></tt></span></dt>
+<dd><p>
+ Argument types
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">a1</span>
+ <span class="special">...</span><span class="identifier">aN</span></tt></span></dt>
+<dd><p>
+ Objects or references to objects with types <tt class="computeroutput"><span class="identifier">A1</span>
+ <span class="special">...</span><span class="identifier">AN</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">T1</span>
+ <span class="special">...</span><span class="identifier">TN</span></tt></span></dt>
+<dd><p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>i is <tt class="computeroutput"><span class="identifier">A</span></tt>i <tt class="computeroutput"><span class="special">&amp;</span></tt>
+ if <tt class="computeroutput"><span class="identifier">a</span></tt>i is an LValue,
+ same as <tt class="computeroutput"><span class="identifier">A</span></tt>i, otherwise
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.functional.concepts.def_callable.expression_requirements"></a><h5>
+<a name="id652975"></a>
+ <a href="def_callable.html#fusion.functional.concepts.def_callable.expression_requirements">Expression
+ requirements</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Type
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ boost::result_of<tt class="computeroutput"><span class="special">&lt;</span> <span class="identifier">F</span><span class="special">(</span><span class="identifier">T1</span>
+ <span class="special">...</span><span class="identifier">TN</span><span class="special">)</span> <span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Result of a call with <tt class="computeroutput"><span class="identifier">A1</span>
+ <span class="special">...</span><span class="identifier">AN</span></tt>-typed
+ arguments
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.functional.concepts.def_callable.models"></a><h5>
+<a name="id653159"></a>
+ Models
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>
+<a href="poly.html" title=" Polymorphic Function
+ Object">Polymorphic Function
+ Object</a> types
+ </li>
+<li>
+ member (function or data) pointer types
+ </li>
+</ul></div>
+<a name="fusion.functional.concepts.def_callable.examples"></a><h5>
+<a name="id653205"></a>
+ Examples
+ </h5>
+<pre class="programlisting">
+<span class="special">&amp;</span> <span class="identifier">a_free_function</span>
+<span class="special">&amp;</span> <span class="identifier">a_class</span><span class="special">::</span><span class="identifier">a_static_member_function</span>
+<span class="special">&amp;</span> <span class="identifier">a_class</span><span class="special">::</span><span class="identifier">a_nonstatic_data_member</span>
+<span class="special">&amp;</span> <span class="identifier">a_class</span><span class="special">::</span><span class="identifier">a_nonstatic_member_function</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">less</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;()</span>
+<span class="comment">// using namespace boost;
+</span><span class="identifier">bind</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">less</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;(),</span> <span class="identifier">_1</span><span class="special">,</span> <span class="number">5</span><span class="special">)</span>
+<span class="comment">// Note: Boost.Lambda expressions don't work with __boost_result_of__
+</span><span class="identifier">fusion</span><span class="special">::</span><a href="../generation/functions/mk_fused_fobj.html" title="
+ make_fused_function_object"><tt class="computeroutput"><span class="identifier">make_fused_function_object</span></tt></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">less</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;())</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="reg_callable.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="poly.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/concepts/poly.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/concepts/poly.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,174 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title> Polymorphic Function
+ Object</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../concepts.html" title="Concepts">
+<link rel="prev" href="def_callable.html" title=" Deferred
+ Callable Object">
+<link rel="next" href="../invocation.html" title="Invocation">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="def_callable.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../invocation.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.functional.concepts.poly"></a><a href="poly.html" title=" Polymorphic Function
+ Object"> Polymorphic Function
+ Object</a></h4></div></div></div>
+<a name="fusion.functional.concepts.poly.description"></a><h5>
+<a name="id653507"></a>
+ Description
+ </h5>
+<p>
+ A non-member-pointer <a href="def_callable.html" title=" Deferred
+ Callable Object">Deferred
+ Callable Object</a> type.
+ </p>
+<a name="fusion.functional.concepts.poly.refinement_of"></a><h5>
+<a name="id653546"></a>
+ <a href="poly.html#fusion.functional.concepts.poly.refinement_of">Refinement
+ of</a>
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li><a href="reg_callable.html" title=" Regular Callable
+ Object">Regular Callable
+ Object</a></li>
+<li><a href="def_callable.html" title=" Deferred
+ Callable Object">Deferred Callable
+ Object</a></li>
+</ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">F</span></tt></span></dt>
+<dd><p>
+ A possibly const-qualified Polymorphic Function Object type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">f</span></tt></span></dt>
+<dd><p>
+ An object or reference to an object of type F
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">A1</span>
+ <span class="special">...</span><span class="identifier">AN</span></tt></span></dt>
+<dd><p>
+ Argument types
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">a1</span>
+ <span class="special">...</span><span class="identifier">aN</span></tt></span></dt>
+<dd><p>
+ Objects or references to objects with types <tt class="computeroutput"><span class="identifier">A1</span>
+ <span class="special">...</span><span class="identifier">AN</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">T1</span>
+ <span class="special">...</span><span class="identifier">TN</span></tt></span></dt>
+<dd><p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>i is <tt class="computeroutput"><span class="identifier">A</span></tt>i <tt class="computeroutput"><span class="special">&amp;</span></tt>
+ if <tt class="computeroutput"><span class="identifier">a</span></tt>i is an LValue,
+ same as <tt class="computeroutput"><span class="identifier">A</span></tt>i, otherwise
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.functional.concepts.poly.expression_requirements"></a><h5>
+<a name="id653837"></a>
+ <a href="poly.html#fusion.functional.concepts.poly.expression_requirements">Expression
+ requirements</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Return Type
+ </p>
+ </th>
+<th>
+ <p>
+ Runtime Complexity
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">a1</span><span class="special">,</span>
+ <span class="special">...</span><span class="identifier">aN</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">result_of</span><span class="special">&lt;</span>
+ <span class="identifier">F</span><span class="special">(</span><span class="identifier">T1</span><span class="special">,</span>
+ <span class="special">...</span><span class="identifier">TN</span><span class="special">)</span> <span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Unspecified
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.functional.concepts.poly.models"></a><h5>
+<a name="id654035"></a>
+ Models
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>
+ function pointers
+ </li>
+<li>
+ function objects of the Standard Library
+ </li>
+<li>
+ all Fusion functional adapters
+</li>
+</ul></div>
+<a name="fusion.functional.concepts.poly.examples"></a><h5>
+<a name="id654089"></a>
+ Examples
+ </h5>
+<pre class="programlisting">
+<span class="special">&amp;</span> <span class="identifier">a_free_function</span>
+<span class="special">&amp;</span> <span class="identifier">a_class</span><span class="special">::</span><span class="identifier">a_static_member_function</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">less</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;()</span>
+<span class="comment">// using namespace boost;
+</span><span class="identifier">bind</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">less</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;(),</span> <span class="identifier">_1</span><span class="special">,</span> <span class="number">5</span><span class="special">)</span>
+<span class="comment">// Note: Boost.Lambda expressions don't work with __boost_result_of__
+</span><span class="identifier">fusion</span><span class="special">::</span><a href="../generation/functions/mk_fused_fobj.html" title="
+ make_fused_function_object"><tt class="computeroutput"><span class="identifier">make_fused_function_object</span></tt></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">less</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;())</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="def_callable.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../invocation.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/concepts/reg_callable.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/concepts/reg_callable.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,155 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title> Regular Callable
+ Object</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../concepts.html" title="Concepts">
+<link rel="prev" href="callable.html" title=" Callable Object">
+<link rel="next" href="def_callable.html" title=" Deferred
+ Callable Object">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="callable.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="def_callable.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.functional.concepts.reg_callable"></a><a href="reg_callable.html" title=" Regular Callable
+ Object"> Regular Callable
+ Object</a></h4></div></div></div>
+<a name="fusion.functional.concepts.reg_callable.description"></a><h5>
+<a name="id651925"></a>
+ Description
+ </h5>
+<p>
+ A non-member-pointer <a href="callable.html" title=" Callable Object">Callable
+ Object</a> type: A pointer to a function or a class type whose objects
+ can appear immediately to the left of a function call operator.
+ </p>
+<a name="fusion.functional.concepts.reg_callable.refinement_of"></a><h5>
+<a name="id651968"></a>
+ <a href="reg_callable.html#fusion.functional.concepts.reg_callable.refinement_of">Refinement
+ of</a>
+ </h5>
+<div class="itemizedlist"><ul type="disc"><li>Callable Object</li></ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">F</span></tt></span></dt>
+<dd><p>
+ A possibly const qualified Deferred Callable Object type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">f</span></tt></span></dt>
+<dd><p>
+ An object or reference to an object of type F
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">A1</span>
+ <span class="special">...</span><span class="identifier">AN</span></tt></span></dt>
+<dd><p>
+ Argument types
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">a1</span>
+ <span class="special">...</span><span class="identifier">aN</span></tt></span></dt>
+<dd><p>
+ Objects or references to objects with types <tt class="computeroutput"><span class="identifier">A1</span>
+ <span class="special">...</span><span class="identifier">AN</span></tt>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.functional.concepts.reg_callable.expression_requirements"></a><h5>
+<a name="id652154"></a>
+ <a href="reg_callable.html#fusion.functional.concepts.reg_callable.expression_requirements">Expression
+ requirements</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Return Type
+ </p>
+ </th>
+<th>
+ <p>
+ Runtime Complexity
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">a1</span><span class="special">,</span>
+ <span class="special">...</span><span class="identifier">aN</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Unspecified
+ </p>
+ </td>
+<td>
+ <p>
+ Unspecified
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.functional.concepts.reg_callable.models"></a><h5>
+<a name="id652290"></a>
+ Models
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>
+ function pointer types
+ </li>
+<li>
+ all kinds of function objects
+ </li>
+</ul></div>
+<a name="fusion.functional.concepts.reg_callable.examples"></a><h5>
+<a name="id652328"></a>
+ Examples
+ </h5>
+<pre class="programlisting">
+<span class="special">&amp;</span> <span class="identifier">a_free_function</span>
+<span class="special">&amp;</span> <span class="identifier">a_class</span><span class="special">::</span><span class="identifier">a_static_member_function</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">less</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;()</span>
+<span class="comment">// using namespace boost;
+</span><span class="identifier">bind</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">less</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;(),</span> <span class="identifier">_1</span><span class="special">,</span> <span class="number">5</span><span class="special">)</span>
+<span class="identifier">lambda</span><span class="special">::</span><span class="identifier">_1</span> <span class="special">+=</span> <span class="identifier">lambda</span><span class="special">::</span><span class="identifier">_2</span><span class="special">;</span>
+<span class="identifier">fusion</span><span class="special">::</span><a href="../generation/functions/mk_fused_fobj.html" title="
+ make_fused_function_object"><tt class="computeroutput"><span class="identifier">make_fused_function_object</span></tt></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">less</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;())</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="callable.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="def_callable.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/generation.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/generation.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,43 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generation</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functional.html" title="Functional">
+<link rel="prev" href="adapters/unfused_typed.html" title="unfused_typed">
+<link rel="next" href="generation/functions.html" title="Functions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="adapters/unfused_typed.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functional.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="generation/functions.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.functional.generation"></a>Generation</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="adapters/unfused_typed.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functional.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="generation/functions.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/generation/functions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/generation/functions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,54 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Functions</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../generation.html" title="Generation">
+<link rel="prev" href="../generation.html" title="Generation">
+<link rel="next" href="functions/mk_fused.html" title="
+ make_fused">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../generation.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../generation.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/mk_fused.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.functional.generation.functions"></a>Functions</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section"><a href="functions/mk_fused.html">
+ make_fused</a></span></dt>
+<dt><span class="section"><a href="functions/mk_fused_proc.html">
+ make_fused_procedure</a></span></dt>
+<dt><span class="section"><a href="functions/mk_fused_fobj.html">
+ make_fused_function_object</a></span></dt>
+<dt><span class="section"><a href="functions/mk_unfused_genrc.html">
+ make_unfused_generic</a></span></dt>
+<dt><span class="section"><a href="functions/mk_unfused_lvargs.html">
+ make_unfused_lvalue_args</a></span></dt>
+<dt><span class="section"><a href="functions/mk_unfused_rvargs.html">
+ make_unfused_rvalue_args</a></span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../generation.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../generation.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/mk_fused.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_fused.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_fused.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,159 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>
+ make_fused</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="../functions.html" title="Functions">
+<link rel="next" href="mk_fused_proc.html" title="
+ make_fused_procedure">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_fused_proc.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.generation.functions.mk_fused"></a><a href="mk_fused.html" title="
+ make_fused">
+ make_fused</a></h5></div></div></div>
+<a name="fusion.functional.generation.functions.mk_fused.description"></a><h6>
+<a name="id671614"></a>
+ Description
+ </h6>
+<p>
+ Creates a fused adapter for a given <a href="../../concepts/def_callable.html" title=" Deferred
+ Callable Object">Deferred Callable Object</a>.
+ The usual <a href="../../../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
+ conversion</em></span></a> is applied to the target function.
+ </p>
+<a name="fusion.functional.generation.functions.mk_fused.synopsis"></a><h6>
+<a name="id671683"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">F</span><span class="special">&gt;</span>
+<span class="keyword">inline</span> <span class="keyword">typename</span> <a href="../metafunctions/mk_fused.html" title="
+ make_fused"><tt class="computeroutput"><span class="identifier">make_fused</span></tt></a><span class="special">&lt;</span><span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">make_fused</span><span class="special">(</span><span class="identifier">F</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_fused.parameters"></a><h6>
+<a name="id671837"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/def_callable.html" title=" Deferred
+ Callable Object">Deferred
+ Callable Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The function to transform.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.functional.generation.functions.mk_fused.expression_semantics"></a><h6>
+<a name="id671955"></a>
+ <a href="mk_fused.html#fusion.functional.generation.functions.mk_fused.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">make_fused</span><span class="special">(</span><span class="identifier">f</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A specialization of fused.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a fused adapter for <tt class="computeroutput"><span class="identifier">f</span></tt>.
+ </p>
+<a name="fusion.functional.generation.functions.mk_fused.header"></a><h6>
+<a name="id672080"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_fused</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_fused</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_fused.example"></a><h6>
+<a name="id672249"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">float</span> <span class="identifier">sub</span><span class="special">(</span><span class="keyword">float</span> <span class="identifier">a</span><span class="special">,</span> <span class="keyword">float</span> <span class="identifier">b</span><span class="special">)</span> <span class="special">{</span> <span class="keyword">return</span> <span class="identifier">a</span> <span class="special">-</span> <span class="identifier">b</span><span class="special">;</span> <span class="special">}</span>
+
+<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
+<span class="special">{</span>
+ vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">a</span><span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">2.0f</span><span class="special">);</span>
+ vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">b</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">1.5f</span><span class="special">);</span>
+ vector<span class="special">&lt;</span><span class="keyword">float</span><span class="special">,</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">c</span><span class="special">(</span><span class="number">1.0f</span><span class="special">,</span><span class="number">0.5f</span><span class="special">);</span>
+ <span class="identifier">assert</span><span class="special">(</span><span class="identifier">c</span> <span class="special">==</span> transform<span class="special">(</span>zip<span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">),</span> <span class="identifier">make_fused</span><span class="special">(&amp;</span> <span class="identifier">sub</span><span class="special">)));</span>
+ <span class="identifier">assert</span><span class="special">(</span><span class="identifier">c</span> <span class="special">==</span> transform<span class="special">(</span>zip<span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">),</span> <span class="identifier">make_fused</span><span class="special">(</span>std::minus<span class="special">&lt;</span><span class="keyword">float</span><span class="special">&gt;())));</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_fused.see_also"></a><h6>
+<a name="id672852"></a>
+ <a href="mk_fused.html#fusion.functional.generation.functions.mk_fused.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc">
+<li>fused</li>
+<li>deduce</li>
+<li><a href="../metafunctions/mk_fused.html" title="
+ make_fused"><tt class="computeroutput"><span class="identifier">make_fused</span></tt></a></li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_fused_proc.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_fused_fobj.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_fused_fobj.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,175 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>
+ make_fused_function_object</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="mk_fused_proc.html" title="
+ make_fused_procedure">
+<link rel="next" href="mk_unfused_genrc.html" title="
+ make_unfused_generic">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_fused_proc.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_unfused_genrc.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.generation.functions.mk_fused_fobj"></a><a href="mk_fused_fobj.html" title="
+ make_fused_function_object">
+ make_fused_function_object</a></h5></div></div></div>
+<a name="fusion.functional.generation.functions.mk_fused_fobj.description"></a><h6>
+<a name="id673994"></a>
+ Description
+ </h6>
+<p>
+ Creates a fused_function_object adapter
+ for a given <a href="../../concepts/def_callable.html" title=" Deferred
+ Callable Object">Deferred
+ Callable Object</a>. The usual <a href="../../../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
+ conversion</em></span></a> is applied to the target function.
+ </p>
+<a name="fusion.functional.generation.functions.mk_fused_fobj.synopsis"></a><h6>
+<a name="id674065"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">F</span><span class="special">&gt;</span>
+<span class="keyword">inline</span> <span class="keyword">typename</span> <a href="../metafunctions/mk_fused_fobj.html" title="
+ make_fused_function_object"><tt class="computeroutput"><span class="identifier">make_fused_function_object</span></tt></a><span class="special">&lt;</span><span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">make_fused_function_object</span><span class="special">(</span><span class="identifier">F</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_fused_fobj.parameters"></a><h6>
+<a name="id674221"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The function to transform.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.functional.generation.functions.mk_fused_fobj.expression_semantics"></a><h6>
+<a name="id674336"></a>
+ <a href="mk_fused_fobj.html#fusion.functional.generation.functions.mk_fused_fobj.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">make_fused_function_object</span><span class="special">(</span><span class="identifier">f</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A specialization of fused_function_object.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a fused_function_object adapter
+ for <tt class="computeroutput"><span class="identifier">f</span></tt>.
+ </p>
+<a name="fusion.functional.generation.functions.mk_fused_fobj.header"></a><h6>
+<a name="id674464"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_fused_function_object</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_fused_function_object</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_fused_fobj.example"></a><h6>
+<a name="id674635"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">sub</span>
+<span class="special">{</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sig</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">result</span><span class="special">;</span>
+
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Self</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">result</span><span class="special">&lt;</span> <span class="identifier">Self</span><span class="special">(</span><span class="identifier">T</span><span class="special">,</span><span class="identifier">T</span><span class="special">)</span> <span class="special">&gt;</span>
+ <span class="special">{</span> <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">remove_reference</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">type</span><span class="special">;</span> <span class="special">};</span>
+
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="identifier">T</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">T</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="identifier">rhs</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">lhs</span> <span class="special">-</span> <span class="identifier">rhs</span><span class="special">;</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+
+<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
+<span class="special">{</span>
+ vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">a</span><span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">2.0f</span><span class="special">);</span>
+ vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">b</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">1.5f</span><span class="special">);</span>
+ vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">c</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">0.5f</span><span class="special">);</span>
+ <span class="identifier">assert</span><span class="special">(</span><span class="identifier">c</span> <span class="special">==</span> transform<span class="special">(</span>zip<span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">),</span> <span class="identifier">make_fused_function_object</span><span class="special">(</span><span class="identifier">sub</span><span class="special">())));</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_fused_fobj.see_also"></a><h6>
+<a name="id675375"></a>
+ <a href="mk_fused_fobj.html#fusion.functional.generation.functions.mk_fused_fobj.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc">
+<li>fused_function_object</li>
+<li>deduce</li>
+<li><a href="../metafunctions/mk_fused_fobj.html" title="
+ make_fused_function_object"><tt class="computeroutput"><span class="identifier">make_fused_function_object</span></tt></a></li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_fused_proc.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_unfused_genrc.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_fused_proc.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_fused_proc.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,155 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>
+ make_fused_procedure</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="mk_fused.html" title="
+ make_fused">
+<link rel="next" href="mk_fused_fobj.html" title="
+ make_fused_function_object">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_fused.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_fused_fobj.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.generation.functions.mk_fused_proc"></a><a href="mk_fused_proc.html" title="
+ make_fused_procedure">
+ make_fused_procedure</a></h5></div></div></div>
+<a name="fusion.functional.generation.functions.mk_fused_proc.description"></a><h6>
+<a name="id672970"></a>
+ Description
+ </h6>
+<p>
+ Creates a fused_procedure adapter for
+ a given <a href="../../concepts/def_callable.html" title=" Deferred
+ Callable Object">Deferred
+ Callable Object</a>. The usual <a href="../../../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
+ conversion</em></span></a> applied to the target function.
+ </p>
+<a name="fusion.functional.generation.functions.mk_fused_proc.synopsis"></a><h6>
+<a name="id673039"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">F</span><span class="special">&gt;</span>
+<span class="keyword">inline</span> <span class="keyword">typename</span> <a href="../metafunctions/mk_fused_proc.html" title="
+ make_fused_procedure"><tt class="computeroutput"><span class="identifier">make_fused_procedure</span></tt></a><span class="special">&lt;</span><span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">make_fused_procedure</span><span class="special">(</span><span class="identifier">F</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_fused_proc.parameters"></a><h6>
+<a name="id673195"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/callable.html" title=" Callable Object">Callable
+ Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The function to transform.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.functional.generation.functions.mk_fused_proc.expression_semantics"></a><h6>
+<a name="id673311"></a>
+ <a href="mk_fused_proc.html#fusion.functional.generation.functions.mk_fused_proc.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">make_fused_procedure</span><span class="special">(</span><span class="identifier">f</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A specialization of fused_procedure.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a fused_procedure adapter for
+ <tt class="computeroutput"><span class="identifier">f</span></tt>.
+ </p>
+<a name="fusion.functional.generation.functions.mk_fused_proc.header"></a><h6>
+<a name="id673437"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_fused_procedure</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_fused_procedure</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_fused_proc.example"></a><h6>
+<a name="id673607"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">);</span>
+<span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">lambda</span><span class="special">;</span>
+<span class="identifier">make_fused_procedure</span><span class="special">(</span><span class="identifier">_1</span> <span class="special">+=</span> <span class="identifier">_2</span> <span class="special">-</span> <span class="identifier">_3</span><span class="special">)(</span><span class="identifier">v</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>front<span class="special">(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">==</span> <span class="number">0</span><span class="special">);</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_fused_proc.see_also"></a><h6>
+<a name="id673877"></a>
+ <a href="mk_fused_proc.html#fusion.functional.generation.functions.mk_fused_proc.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc">
+<li>fused_procedure</li>
+<li>deduce</li>
+<li><a href="../metafunctions/mk_fused_proc.html" title="
+ make_fused_procedure"><tt class="computeroutput"><span class="identifier">make_fused_procedure</span></tt></a></li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_fused.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_fused_fobj.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_unfused_genrc.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_unfused_genrc.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,182 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>
+ make_unfused_generic</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="mk_fused_fobj.html" title="
+ make_fused_function_object">
+<link rel="next" href="mk_unfused_lvargs.html" title="
+ make_unfused_lvalue_args">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_fused_fobj.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_unfused_lvargs.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.generation.functions.mk_unfused_genrc"></a><a href="mk_unfused_genrc.html" title="
+ make_unfused_generic">
+ make_unfused_generic</a></h5></div></div></div>
+<a name="fusion.functional.generation.functions.mk_unfused_genrc.description"></a><h6>
+<a name="id675494"></a>
+ Description
+ </h6>
+<p>
+ Creates a unfused_generic adapter for
+ a given, unary <a href="../../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a>. The usual <a href="../../../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
+ conversion</em></span></a> is applied to the target function.
+ </p>
+<a name="fusion.functional.generation.functions.mk_unfused_genrc.synopsis"></a><h6>
+<a name="id675563"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">F</span><span class="special">&gt;</span>
+<span class="keyword">inline</span> <span class="keyword">typename</span> <a href="../metafunctions/mk_unfused_genrc.html" title="
+ make_unfused_generic"><tt class="computeroutput"><span class="identifier">make_unfused_generic</span></tt></a><span class="special">&lt;</span><span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">make_unfused_generic</span><span class="special">(</span><span class="identifier">F</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_unfused_genrc.parameters"></a><h6>
+<a name="id675721"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The function to transform.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.functional.generation.functions.mk_unfused_genrc.expression_semantics"></a><h6>
+<a name="id675838"></a>
+ <a href="mk_unfused_genrc.html#fusion.functional.generation.functions.mk_unfused_genrc.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">make_unfused_generic</span><span class="special">(</span><span class="identifier">f</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A specialization of unfused_generic.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a unfused_generic adapter for
+ <tt class="computeroutput"><span class="identifier">f</span></tt>.
+ </p>
+<a name="fusion.functional.generation.functions.mk_unfused_genrc.header"></a><h6>
+<a name="id675963"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_unfused_generic</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_unfused_generic</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_unfused_genrc.example"></a><h6>
+<a name="id676133"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">bottles_song</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">void</span> <span class="identifier">result_type</span><span class="special">;</span>
+
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+ <span class="keyword">void</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Seq</span> <span class="special">&amp;</span> <span class="identifier">s</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_c</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span><span class="number">0</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">n</span> <span class="special">=</span> <span class="identifier">at_c</span><span class="special">&lt;</span><span class="number">0</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">);</span>
+ <span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_c</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span><span class="number">1</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">what</span> <span class="special">=</span> <span class="identifier">at_c</span><span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">);</span>
+
+ <span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span>
+ <span class="special">&lt;&lt;</span> <span class="identifier">n</span> <span class="special">&lt;&lt;</span> <span class="string">" bottles of "</span> <span class="special">&lt;&lt;</span> <span class="identifier">what</span> <span class="special">&lt;&lt;</span> <span class="string">" on the wall.\n"</span>
+ <span class="special">&lt;&lt;</span> <span class="identifier">n</span> <span class="special">&lt;&lt;</span> <span class="string">" bottles of "</span> <span class="special">&lt;&lt;</span> <span class="identifier">what</span> <span class="special">&lt;&lt;</span> <span class="string">"!\n"</span>
+ <span class="special">&lt;&lt;</span> <span class="string">"Take one down - pass it around.\n"</span><span class="special">;</span>
+
+ <span class="identifier">n</span> <span class="special">-=</span> <span class="number">1</span><span class="special">;</span> <span class="comment">// glug glug...
+</span>
+ <span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span>
+ <span class="special">&lt;&lt;</span> <span class="identifier">n</span> <span class="special">&lt;&lt;</span> <span class="string">" bottles of "</span> <span class="special">&lt;&lt;</span> <span class="identifier">what</span> <span class="special">&lt;&lt;</span> <span class="string">" on the wall.\n"</span>
+ <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+
+<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
+<span class="special">{</span>
+ <span class="keyword">unsigned</span> <span class="identifier">n_milk</span> <span class="special">=</span> <span class="number">99</span><span class="special">;</span>
+ <span class="keyword">for</span><span class="special">(</span><span class="keyword">int</span> <span class="identifier">i</span> <span class="special">=</span> <span class="number">0</span><span class="special">;</span> <span class="identifier">i</span> <span class="special">&lt;</span> <span class="number">3</span><span class="special">;</span> <span class="special">++</span><span class="identifier">i</span><span class="special">)</span>
+ <span class="identifier">make_unfused_generic</span><span class="special">(</span><span class="identifier">bottles_song</span><span class="special">())(</span><span class="identifier">n_milk</span><span class="special">,</span><span class="string">"milk"</span><span class="special">);</span>
+ <span class="comment">// 96 bottles left for me
+</span><span class="special">}</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_unfused_genrc.see_also"></a><h6>
+<a name="id676937"></a>
+ <a href="mk_unfused_genrc.html#fusion.functional.generation.functions.mk_unfused_genrc.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc">
+<li>unfused_generic</li>
+<li>deduce</li>
+<li><a href="../metafunctions/mk_unfused_genrc.html" title="
+ make_unfused_generic"><tt class="computeroutput"><span class="identifier">make_unfused_generic</span></tt></a></li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_fused_fobj.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_unfused_lvargs.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_unfused_lvargs.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_unfused_lvargs.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,173 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>
+ make_unfused_lvalue_args</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="mk_unfused_genrc.html" title="
+ make_unfused_generic">
+<link rel="next" href="mk_unfused_rvargs.html" title="
+ make_unfused_rvalue_args">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_unfused_genrc.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_unfused_rvargs.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.generation.functions.mk_unfused_lvargs"></a><a href="mk_unfused_lvargs.html" title="
+ make_unfused_lvalue_args">
+ make_unfused_lvalue_args</a></h5></div></div></div>
+<a name="fusion.functional.generation.functions.mk_unfused_lvargs.description"></a><h6>
+<a name="id677056"></a>
+ Description
+ </h6>
+<p>
+ Creates a unfused_lvalue_args adapter
+ for a given, unary <a href="../../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a>. The usual <a href="../../../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
+ conversion</em></span></a> is applied to the target function.
+ </p>
+<a name="fusion.functional.generation.functions.mk_unfused_lvargs.synopsis"></a><h6>
+<a name="id677126"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">F</span><span class="special">&gt;</span>
+<span class="keyword">inline</span> <span class="keyword">typename</span> <a href="../metafunctions/mk_unfused_lvargs.html" title="
+ make_unfused_lvalue_args"><tt class="computeroutput"><span class="identifier">make_unfused_lvalue_args</span></tt></a><span class="special">&lt;</span><span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">make_unfused_lvalue_args</span><span class="special">(</span><span class="identifier">F</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_unfused_lvargs.parameters"></a><h6>
+<a name="id677283"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The function to transform.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.functional.generation.functions.mk_unfused_lvargs.expression_semantics"></a><h6>
+<a name="id677399"></a>
+ <a href="mk_unfused_lvargs.html#fusion.functional.generation.functions.mk_unfused_lvargs.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">make_unfused_lvalue_args</span><span class="special">(</span><span class="identifier">f</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A specialization of unfused_lvalue_args.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a unfused_lvalue_args adapter
+ for <tt class="computeroutput"><span class="identifier">f</span></tt>.
+ </p>
+<a name="fusion.functional.generation.functions.mk_unfused_lvargs.header"></a><h6>
+<a name="id677525"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_unfused_lvalue_args</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_unfused_lvalue_args</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_unfused_lvargs.example"></a><h6>
+<a name="id677698"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">fused_incrementer</span>
+<span class="special">{</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">result</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">void</span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+ <span class="keyword">void</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Seq</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">s</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ for_each<span class="special">(</span><span class="identifier">s</span><span class="special">,++</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">lambda</span><span class="special">::</span><span class="identifier">_1</span><span class="special">);</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+
+<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
+<span class="special">{</span>
+ <span class="keyword">int</span> <span class="identifier">a</span> <span class="special">=</span> <span class="number">2</span><span class="special">;</span> <span class="keyword">char</span> <span class="identifier">b</span> <span class="special">=</span> <span class="char">'X'</span><span class="special">;</span>
+ <span class="identifier">make_unfused_lvalue_args</span><span class="special">(</span><span class="identifier">fused_incrementer</span><span class="special">())(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">);</span>
+ <span class="identifier">assert</span><span class="special">(</span><span class="identifier">a</span> <span class="special">==</span> <span class="number">3</span> <span class="special">&amp;&amp;</span> <span class="identifier">b</span> <span class="special">==</span> <span class="char">'Y'</span><span class="special">);</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_unfused_lvargs.see_also"></a><h6>
+<a name="id678176"></a>
+ <a href="mk_unfused_lvargs.html#fusion.functional.generation.functions.mk_unfused_lvargs.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc">
+<li>unfused_lvalue_args</li>
+<li>deduce</li>
+<li><a href="../metafunctions/mk_unfused_lvargs.html" title="
+ make_unfused_lvalue_args"><tt class="computeroutput"><span class="identifier">make_unfused_lvalue_args</span></tt></a></li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_unfused_genrc.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_unfused_rvargs.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_unfused_rvargs.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/generation/functions/mk_unfused_rvargs.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,171 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>
+ make_unfused_rvalue_args</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="mk_unfused_lvargs.html" title="
+ make_unfused_lvalue_args">
+<link rel="next" href="../metafunctions.html" title="Metafunctions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_unfused_lvargs.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.generation.functions.mk_unfused_rvargs"></a><a href="mk_unfused_rvargs.html" title="
+ make_unfused_rvalue_args">
+ make_unfused_rvalue_args</a></h5></div></div></div>
+<a name="fusion.functional.generation.functions.mk_unfused_rvargs.description"></a><h6>
+<a name="id678294"></a>
+ Description
+ </h6>
+<p>
+ Creates a unfused_rvalue_args adapter
+ for a given, unary <a href="../../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a>. The usual <a href="../../../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
+ conversion</em></span></a> is applied to the target function.
+ </p>
+<a name="fusion.functional.generation.functions.mk_unfused_rvargs.synopsis"></a><h6>
+<a name="id678364"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">F</span><span class="special">&gt;</span>
+<span class="keyword">inline</span> <span class="keyword">typename</span> <a href="../metafunctions/mk_unfused_rvargs.html" title="
+ make_unfused_rvalue_args"><tt class="computeroutput"><span class="identifier">make_unfused_rvalue_args</span></tt></a><span class="special">&lt;</span><span class="identifier">F</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">make_unfused_rvalue_args</span><span class="special">(</span><span class="identifier">F</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">f</span><span class="special">);</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_unfused_rvargs.parameters"></a><h6>
+<a name="id678521"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The function to transform.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.functional.generation.functions.mk_unfused_rvargs.expression_semantics"></a><h6>
+<a name="id678637"></a>
+ <a href="mk_unfused_rvargs.html#fusion.functional.generation.functions.mk_unfused_rvargs.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">make_unfused_rvalue_args</span><span class="special">(</span><span class="identifier">f</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A specialization of unfused_rvalue_args.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns a unfused_rvalue_args adapter
+ for <tt class="computeroutput"><span class="identifier">f</span></tt>.
+ </p>
+<a name="fusion.functional.generation.functions.mk_unfused_rvargs.header"></a><h6>
+<a name="id678762"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_unfused_rvalue_args</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_unfused_rvalue_args</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_unfused_rvargs.example"></a><h6>
+<a name="id678934"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">sequence_printer</span>
+<span class="special">{</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">result</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">void</span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+ <span class="keyword">void</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Seq</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">s</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">s</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+
+<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
+<span class="special">{</span>
+ <span class="identifier">make_unfused_rvalue_args</span><span class="special">(</span><span class="identifier">sequence_printer</span><span class="special">())</span>
+ <span class="special">(</span><span class="number">24</span><span class="special">,</span><span class="string">"bottles of beer in"</span><span class="special">,</span><span class="char">'a'</span><span class="special">,</span><span class="string">"box."</span><span class="special">);</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.generation.functions.mk_unfused_rvargs.see_also"></a><h6>
+<a name="id679316"></a>
+ <a href="mk_unfused_rvargs.html#fusion.functional.generation.functions.mk_unfused_rvargs.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc">
+<li>unfused_rvalue_args</li>
+<li>deduce</li>
+<li><a href="../metafunctions/mk_unfused_rvargs.html" title="
+ make_unfused_rvalue_args"><tt class="computeroutput"><span class="identifier">make_unfused_rvalue_args</span></tt></a></li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_unfused_lvargs.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,55 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Metafunctions</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../generation.html" title="Generation">
+<link rel="prev" href="functions/mk_unfused_rvargs.html" title="
+ make_unfused_rvalue_args">
+<link rel="next" href="metafunctions/mk_fused.html" title="
+ make_fused">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/mk_unfused_rvargs.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../generation.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/mk_fused.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.functional.generation.metafunctions"></a>Metafunctions</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section"><a href="metafunctions/mk_fused.html">
+ make_fused</a></span></dt>
+<dt><span class="section"><a href="metafunctions/mk_fused_proc.html">
+ make_fused_procedure</a></span></dt>
+<dt><span class="section"><a href="metafunctions/mk_fused_fobj.html">
+ make_fused_function_object</a></span></dt>
+<dt><span class="section"><a href="metafunctions/mk_unfused_genrc.html">
+ make_unfused_generic</a></span></dt>
+<dt><span class="section"><a href="metafunctions/mk_unfused_lvargs.html">
+ make_unfused_lvalue_args</a></span></dt>
+<dt><span class="section"><a href="metafunctions/mk_unfused_rvargs.html">
+ make_unfused_rvalue_args</a></span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/mk_unfused_rvargs.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../generation.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/mk_fused.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_fused.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_fused.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,80 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>
+ make_fused</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="../metafunctions.html" title="Metafunctions">
+<link rel="next" href="mk_fused_proc.html" title="
+ make_fused_procedure">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_fused_proc.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.generation.metafunctions.mk_fused"></a><a href="mk_fused.html" title="
+ make_fused">
+ make_fused</a></h5></div></div></div>
+<a name="fusion.functional.generation.metafunctions.mk_fused.description"></a><h6>
+<a name="id679454"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of <a href="../functions/mk_fused.html" title="
+ make_fused"><tt class="computeroutput"><span class="identifier">make_fused</span></tt></a>.
+ </p>
+<a name="fusion.functional.generation.metafunctions.mk_fused.header"></a><h6>
+<a name="id679504"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_fused</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_fused</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.functional.generation.metafunctions.mk_fused.synopsis"></a><h6>
+<a name="id679675"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">result_of</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">make_fused</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.generation.metafunctions.mk_fused.see_also"></a><h6>
+<a name="id679808"></a>
+ <a href="mk_fused.html#fusion.functional.generation.metafunctions.mk_fused.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc"><li><a href="../functions/mk_fused.html" title="
+ make_fused"><tt class="computeroutput"><span class="identifier">make_fused</span></tt></a></li></ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_fused_proc.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_fused_fobj.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_fused_fobj.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,81 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>
+ make_fused_function_object</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="mk_fused_proc.html" title="
+ make_fused_procedure">
+<link rel="next" href="mk_unfused_genrc.html" title="
+ make_unfused_generic">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_fused_proc.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_unfused_genrc.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.generation.metafunctions.mk_fused_fobj"></a><a href="mk_fused_fobj.html" title="
+ make_fused_function_object">
+ make_fused_function_object</a></h5></div></div></div>
+<a name="fusion.functional.generation.metafunctions.mk_fused_fobj.description"></a><h6>
+<a name="id680310"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of <a href="../functions/mk_fused_fobj.html" title="
+ make_fused_function_object"><tt class="computeroutput"><span class="identifier">make_fused_function_object</span></tt></a>.
+ </p>
+<a name="fusion.functional.generation.metafunctions.mk_fused_fobj.header"></a><h6>
+<a name="id680361"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_fused_function_object</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_fused_function_object</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.functional.generation.metafunctions.mk_fused_fobj.synopsis"></a><h6>
+<a name="id680531"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">result_of</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">make_fused_function_object</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.generation.metafunctions.mk_fused_fobj.see_also"></a><h6>
+<a name="id680666"></a>
+ <a href="mk_fused_fobj.html#fusion.functional.generation.metafunctions.mk_fused_fobj.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc"><li><a href="../functions/mk_fused_fobj.html" title="
+ make_fused_function_object"><tt class="computeroutput"><span class="identifier">make_fused_function_object</span></tt></a></li></ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_fused_proc.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_unfused_genrc.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_fused_proc.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_fused_proc.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,81 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>
+ make_fused_procedure</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="mk_fused.html" title="
+ make_fused">
+<link rel="next" href="mk_fused_fobj.html" title="
+ make_fused_function_object">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_fused.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_fused_fobj.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.generation.metafunctions.mk_fused_proc"></a><a href="mk_fused_proc.html" title="
+ make_fused_procedure">
+ make_fused_procedure</a></h5></div></div></div>
+<a name="fusion.functional.generation.metafunctions.mk_fused_proc.description"></a><h6>
+<a name="id679881"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of <a href="../functions/mk_fused_proc.html" title="
+ make_fused_procedure"><tt class="computeroutput"><span class="identifier">make_fused_procedure</span></tt></a>.
+ </p>
+<a name="fusion.functional.generation.metafunctions.mk_fused_proc.header"></a><h6>
+<a name="id679931"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_fused_procedure</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_fused_procedure</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.functional.generation.metafunctions.mk_fused_proc.synopsis"></a><h6>
+<a name="id680103"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">result_of</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">make_fused_procedure</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.generation.metafunctions.mk_fused_proc.see_also"></a><h6>
+<a name="id680238"></a>
+ <a href="mk_fused_proc.html#fusion.functional.generation.metafunctions.mk_fused_proc.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc"><li><a href="../functions/mk_fused_proc.html" title="
+ make_fused_procedure"><tt class="computeroutput"><span class="identifier">make_fused_procedure</span></tt></a></li></ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_fused.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_fused_fobj.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_unfused_genrc.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_unfused_genrc.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,81 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>
+ make_unfused_generic</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="mk_fused_fobj.html" title="
+ make_fused_function_object">
+<link rel="next" href="mk_unfused_lvargs.html" title="
+ make_unfused_lvalue_args">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_fused_fobj.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_unfused_lvargs.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.generation.metafunctions.mk_unfused_genrc"></a><a href="mk_unfused_genrc.html" title="
+ make_unfused_generic">
+ make_unfused_generic</a></h5></div></div></div>
+<a name="fusion.functional.generation.metafunctions.mk_unfused_genrc.description"></a><h6>
+<a name="id680740"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of <a href="../functions/mk_unfused_genrc.html" title="
+ make_unfused_generic"><tt class="computeroutput"><span class="identifier">make_unfused_generic</span></tt></a>.
+ </p>
+<a name="fusion.functional.generation.metafunctions.mk_unfused_genrc.header"></a><h6>
+<a name="id680791"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_unfused_generic</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_unfused_generic</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.functional.generation.metafunctions.mk_unfused_genrc.synopsis"></a><h6>
+<a name="id680962"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">result_of</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">make_unfused_generic</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.generation.metafunctions.mk_unfused_genrc.see_also"></a><h6>
+<a name="id681097"></a>
+ <a href="mk_unfused_genrc.html#fusion.functional.generation.metafunctions.mk_unfused_genrc.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc"><li><a href="../functions/mk_unfused_genrc.html" title="
+ make_unfused_generic"><tt class="computeroutput"><span class="identifier">make_unfused_generic</span></tt></a></li></ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_fused_fobj.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_unfused_lvargs.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_unfused_lvargs.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_unfused_lvargs.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,81 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>
+ make_unfused_lvalue_args</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="mk_unfused_genrc.html" title="
+ make_unfused_generic">
+<link rel="next" href="mk_unfused_rvargs.html" title="
+ make_unfused_rvalue_args">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_unfused_genrc.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_unfused_rvargs.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.generation.metafunctions.mk_unfused_lvargs"></a><a href="mk_unfused_lvargs.html" title="
+ make_unfused_lvalue_args">
+ make_unfused_lvalue_args</a></h5></div></div></div>
+<a name="fusion.functional.generation.metafunctions.mk_unfused_lvargs.description"></a><h6>
+<a name="id681171"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of <a href="../functions/mk_unfused_lvargs.html" title="
+ make_unfused_lvalue_args"><tt class="computeroutput"><span class="identifier">make_unfused_lvalue_args</span></tt></a>.
+ </p>
+<a name="fusion.functional.generation.metafunctions.mk_unfused_lvargs.header"></a><h6>
+<a name="id681222"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_unfused_lvalue_args</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_unfused_lvalue_args</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.functional.generation.metafunctions.mk_unfused_lvargs.synopsis"></a><h6>
+<a name="id681393"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">result_of</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">make_unfused_lvalue_args</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.generation.metafunctions.mk_unfused_lvargs.see_also"></a><h6>
+<a name="id681528"></a>
+ <a href="mk_unfused_lvargs.html#fusion.functional.generation.metafunctions.mk_unfused_lvargs.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc"><li><a href="../functions/mk_unfused_lvargs.html" title="
+ make_unfused_lvalue_args"><tt class="computeroutput"><span class="identifier">make_unfused_lvalue_args</span></tt></a></li></ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_unfused_genrc.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="mk_unfused_rvargs.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_unfused_rvargs.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/generation/metafunctions/mk_unfused_rvargs.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,80 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>
+ make_unfused_rvalue_args</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="mk_unfused_lvargs.html" title="
+ make_unfused_lvalue_args">
+<link rel="next" href="../../../notes.html" title="Notes">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_unfused_lvargs.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../notes.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.generation.metafunctions.mk_unfused_rvargs"></a><a href="mk_unfused_rvargs.html" title="
+ make_unfused_rvalue_args">
+ make_unfused_rvalue_args</a></h5></div></div></div>
+<a name="fusion.functional.generation.metafunctions.mk_unfused_rvargs.description"></a><h6>
+<a name="id681603"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of <a href="../functions/mk_unfused_rvargs.html" title="
+ make_unfused_rvalue_args"><tt class="computeroutput"><span class="identifier">make_unfused_rvalue_args</span></tt></a>.
+ </p>
+<a name="fusion.functional.generation.metafunctions.mk_unfused_rvargs.header"></a><h6>
+<a name="id681654"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_unfused_rvalue_args</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">make_unfused_rvalue_args</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.functional.generation.metafunctions.mk_unfused_rvargs.synopsis"></a><h6>
+<a name="id681825"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">result_of</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">make_unfused_rvalue_args</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.generation.metafunctions.mk_unfused_rvargs.see_also"></a><h6>
+<a name="id681960"></a>
+ <a href="mk_unfused_rvargs.html#fusion.functional.generation.metafunctions.mk_unfused_rvargs.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc"><li><a href="../functions/mk_unfused_rvargs.html" title="
+ make_unfused_rvalue_args"><tt class="computeroutput"><span class="identifier">make_unfused_rvalue_args</span></tt></a></li></ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="mk_unfused_lvargs.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../notes.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/invocation.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/invocation.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,44 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Invocation</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functional.html" title="Functional">
+<link rel="prev" href="concepts/poly.html" title=" Polymorphic Function
+ Object">
+<link rel="next" href="invocation/functions.html" title="Functions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="concepts/poly.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functional.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="invocation/functions.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.functional.invocation"></a>Invocation</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="concepts/poly.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functional.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="invocation/functions.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/invocation/functions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/invocation/functions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,46 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Functions</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../invocation.html" title="Invocation">
+<link rel="prev" href="../invocation.html" title="Invocation">
+<link rel="next" href="functions/invoke.html" title="invoke">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../invocation.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../invocation.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/invoke.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.functional.invocation.functions"></a>Functions</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">invoke</span></dt>
+<dt><span class="section"><a href="functions/invoke_proc.html">
+ invoke_procedure</a></span></dt>
+<dt><span class="section"><a href="functions/invoke_fobj.html">
+ invoke_function_object</a></span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../invocation.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../invocation.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/invoke.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/invocation/functions/invoke.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/invocation/functions/invoke.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,188 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>invoke</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="../functions.html" title="Functions">
+<link rel="next" href="invoke_proc.html" title="
+ invoke_procedure">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="invoke_proc.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.invocation.functions.invoke"></a>invoke</h5></div></div></div>
+<a name="fusion.functional.invocation.functions.invoke.description"></a><h6>
+<a name="id654387"></a>
+ Description
+ </h6>
+<p>
+ Calls a <a href="../../concepts/def_callable.html" title=" Deferred
+ Callable Object">Deferred
+ Callable Object</a> with the arguments from a Sequence.
+ </p>
+<p>
+ The first template parameter can be specialized explicitly to avoid copying
+ and/or to control the const qualification of a function object.
+ </p>
+<p>
+ If the target function is a pointer to a class members, the corresponding
+ object can be specified as a reference, pointer, or smart pointer. In
+ case of the latter, a freestanding <tt class="literal">get_pointer</tt> function
+ must be defined (Boost provides this function for <tt class="literal">std::auto_ptr</tt>
+ and boost::shared_ptr).
+ </p>
+<a name="fusion.functional.invocation.functions.invoke.synopsis"></a><h6>
+<a name="id654490"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">,</span>
+ <span class="keyword">class</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::invoke<span class="special">&lt;</span><span class="identifier">Function</span><span class="special">,</span> <span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">invoke</span><span class="special">(</span><span class="identifier">Function</span> <span class="identifier">f</span><span class="special">,</span> <span class="identifier">Sequence</span> <span class="special">&amp;</span> <span class="identifier">s</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">,</span>
+ <span class="keyword">class</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::invoke<span class="special">&lt;</span><span class="identifier">Function</span><span class="special">,</span> <span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">invoke</span><span class="special">(</span><span class="identifier">Function</span> <span class="identifier">f</span><span class="special">,</span> <span class="identifier">Sequence</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">s</span><span class="special">);</span>
+</pre>
+<a name="fusion.functional.invocation.functions.invoke.parameters"></a><h6>
+<a name="id654867"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A <a href="../../concepts/def_callable.html" title=" Deferred
+ Callable Object">Deferred
+ Callable Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The function to call.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">s</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The arguments.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.functional.invocation.functions.invoke.expression_semantics"></a><h6>
+<a name="id655029"></a>
+ <a href="invoke.html#fusion.functional.invocation.functions.invoke.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">invoke</span><span class="special">(</span><span class="identifier">f</span><span class="special">,</span><span class="identifier">s</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Return type of <tt class="computeroutput"><span class="identifier">f</span></tt> when invoked with the elements in
+ <tt class="computeroutput"><span class="identifier">s</span></tt> as its arguments.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Invokes <tt class="computeroutput"><span class="identifier">f</span></tt>
+ with the elements in <tt class="computeroutput"><span class="identifier">s</span></tt>
+ as arguments and returns the result of the call expression.
+ </p>
+<p>
+ /functional/invocation/invoke.hpp&gt;
+ </p>
+<a name="fusion.functional.invocation.functions.invoke.example"></a><h6>
+<a name="id655172"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+std::plus<span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">add</span><span class="special">;</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">invoke</span><span class="special">(</span><span class="identifier">add</span><span class="special">,</span>make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">1</span><span class="special">))</span> <span class="special">==</span> <span class="number">2</span><span class="special">);</span>
+</pre>
+<a name="fusion.functional.invocation.functions.invoke.see_also"></a><h6>
+<a name="id655340"></a>
+ <a href="invoke.html#fusion.functional.invocation.functions.invoke.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc">
+<li><a href="invoke_proc.html" title="
+ invoke_procedure"><tt class="computeroutput"><span class="identifier">invoke_procedure</span></tt></a></li>
+<li><a href="invoke_fobj.html" title="
+ invoke_function_object"><tt class="computeroutput"><span class="identifier">invoke_function_object</span></tt></a></li>
+<li>result_of::invoke</li>
+<li>fused</li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="invoke_proc.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/invocation/functions/invoke_fobj.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/invocation/functions/invoke_fobj.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,205 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>
+ invoke_function_object</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="invoke_proc.html" title="
+ invoke_procedure">
+<link rel="next" href="../metafunctions.html" title="Metafunctions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="invoke_proc.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.invocation.functions.invoke_fobj"></a><a href="invoke_fobj.html" title="
+ invoke_function_object">
+ invoke_function_object</a></h5></div></div></div>
+<a name="fusion.functional.invocation.functions.invoke_fobj.description"></a><h6>
+<a name="id656659"></a>
+ Description
+ </h6>
+<p>
+ Calls a <a href="../../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic Function
+ Object</a> with the arguments from a Sequence.
+ </p>
+<p>
+ The first template parameter can be specialized explicitly to avoid copying
+ and/or to control the const qualification of a function object.
+ </p>
+<a name="fusion.functional.invocation.functions.invoke_fobj.synopsis"></a><h6>
+<a name="id656715"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">,</span>
+ <span class="keyword">class</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> <a href="../metafunctions/invoke_fobj.html" title="
+ invoke_function_object"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">invoke_function_object</span></tt></a><span class="special">&lt;</span><span class="identifier">Function</span><span class="special">,</span> <span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">invoke_function_object</span><span class="special">(</span><span class="identifier">Function</span> <span class="identifier">f</span><span class="special">,</span> <span class="identifier">Sequence</span> <span class="special">&amp;</span> <span class="identifier">s</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">,</span>
+ <span class="keyword">class</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> <a href="../metafunctions/invoke_fobj.html" title="
+ invoke_function_object"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">invoke_function_object</span></tt></a><span class="special">&lt;</span><span class="identifier">Function</span><span class="special">,</span> <span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">invoke_function_object</span><span class="special">(</span><span class="identifier">Function</span> <span class="identifier">f</span><span class="special">,</span> <span class="identifier">Sequence</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">s</span><span class="special">);</span>
+</pre>
+<a name="fusion.functional.invocation.functions.invoke_fobj.parameters"></a><h6>
+<a name="id657095"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/poly.html" title=" Polymorphic Function
+ Object">Polymorphic
+ Function Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The function object to call.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">s</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The arguments.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.functional.invocation.functions.invoke_fobj.expression_semantics"></a><h6>
+<a name="id657256"></a>
+ <a href="invoke_fobj.html#fusion.functional.invocation.functions.invoke_fobj.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">invoke_function_object</span><span class="special">(</span><span class="identifier">f</span><span class="special">,</span><span class="identifier">s</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Return type of <tt class="computeroutput"><span class="identifier">f</span></tt> when invoked with the elements in
+ <tt class="computeroutput"><span class="identifier">s</span></tt> as its arguments.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Invokes <tt class="computeroutput"><span class="identifier">f</span></tt>
+ with the elements in <tt class="computeroutput"><span class="identifier">s</span></tt>
+ as arguments and returns the result of the call expression.
+ </p>
+<p>
+ /functional/invocation/invoke_function_object.hpp&gt;
+ </p>
+<a name="fusion.functional.invocation.functions.invoke_fobj.example"></a><h6>
+<a name="id657399"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">sub</span>
+<span class="special">{</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sig</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">result</span><span class="special">;</span>
+
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Self</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">result</span><span class="special">&lt;</span> <span class="identifier">Self</span><span class="special">(</span><span class="identifier">T</span><span class="special">,</span><span class="identifier">T</span><span class="special">)</span> <span class="special">&gt;</span>
+ <span class="special">{</span> <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">remove_reference</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">type</span><span class="special">;</span> <span class="special">};</span>
+
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="identifier">T</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">T</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="identifier">rhs</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">lhs</span> <span class="special">-</span> <span class="identifier">rhs</span><span class="special">;</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+
+<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
+<span class="special">{</span>
+ <span class="identifier">sub</span> <span class="identifier">f</span><span class="special">;</span>
+ <span class="identifier">assert</span><span class="special">(</span><span class="identifier">f</span><span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">1</span><span class="special">)</span> <span class="special">==</span> <span class="identifier">invoke_function_object</span><span class="special">(</span><span class="identifier">f</span><span class="special">,</span>make_vector<span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">1</span><span class="special">)));</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.invocation.functions.invoke_fobj.see_also"></a><h6>
+<a name="id657949"></a>
+ <a href="invoke_fobj.html#fusion.functional.invocation.functions.invoke_fobj.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc">
+<li>invoke</li>
+<li><a href="invoke_proc.html" title="
+ invoke_procedure"><tt class="computeroutput"><span class="identifier">invoke_procedure</span></tt></a></li>
+<li><a href="../metafunctions/invoke_fobj.html" title="
+ invoke_function_object"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">invoke_function_object</span></tt></a></li>
+<li>fused_function_object</li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="invoke_proc.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/invocation/functions/invoke_proc.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/invocation/functions/invoke_proc.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,197 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>
+ invoke_procedure</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="invoke.html" title="invoke">
+<link rel="next" href="invoke_fobj.html" title="
+ invoke_function_object">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="invoke.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="invoke_fobj.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.invocation.functions.invoke_proc"></a><a href="invoke_proc.html" title="
+ invoke_procedure">
+ invoke_procedure</a></h5></div></div></div>
+<a name="fusion.functional.invocation.functions.invoke_proc.description"></a><h6>
+<a name="id655493"></a>
+ Description
+ </h6>
+<p>
+ Calls a <a href="../../concepts/callable.html" title=" Callable Object">Callable
+ Object</a> with the arguments from a Sequence.
+ The result of the call is ignored.
+ </p>
+<p>
+ The first template parameter can be specialized explicitly to avoid copying
+ and/or to control the const qualification of a function object.
+ </p>
+<p>
+ For pointers to class members corresponding object can be specified as
+ a reference, pointer, or smart pointer. In case of the latter, a freestanding
+ <tt class="literal">get_pointer</tt> function must be defined (Boost provides
+ this function for <tt class="literal">std::auto_ptr</tt> and boost::shared_ptr).
+ </p>
+<p>
+ The target function must not be a pointer to a member object (dereferencing
+ such a pointer without returning anything does not make sense, so it
+ isn't implemented).
+ </p>
+<a name="fusion.functional.invocation.functions.invoke_proc.synopsis"></a><h6>
+<a name="id655603"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">,</span>
+ <span class="keyword">class</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> <a href="../metafunctions/invoke_proc.html" title="
+ invoke_procedure"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">invoke_procedure</span></tt></a><span class="special">&lt;</span><span class="identifier">Function</span><span class="special">,</span> <span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">invoke_procedure</span><span class="special">(</span><span class="identifier">Function</span> <span class="identifier">f</span><span class="special">,</span> <span class="identifier">Sequence</span> <span class="special">&amp;</span> <span class="identifier">s</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">,</span>
+ <span class="keyword">class</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> <a href="../metafunctions/invoke_proc.html" title="
+ invoke_procedure"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">invoke_procedure</span></tt></a><span class="special">&lt;</span><span class="identifier">Function</span><span class="special">,</span> <span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">invoke_procedure</span><span class="special">(</span><span class="identifier">Function</span> <span class="identifier">f</span><span class="special">,</span> <span class="identifier">Sequence</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">s</span><span class="special">);</span>
+</pre>
+<a name="fusion.functional.invocation.functions.invoke_proc.parameters"></a><h6>
+<a name="id655982"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/callable.html" title=" Callable Object">Callable
+ Object</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The function to call.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">s</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The arguments.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.functional.invocation.functions.invoke_proc.expression_semantics"></a><h6>
+<a name="id656142"></a>
+ <a href="invoke_proc.html#fusion.functional.invocation.functions.invoke_proc.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">invoke_procedure</span><span class="special">(</span><span class="identifier">f</span><span class="special">,</span><span class="identifier">s</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">void</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Invokes <tt class="computeroutput"><span class="identifier">f</span></tt>
+ with the elements in <tt class="computeroutput"><span class="identifier">s</span></tt>
+ as arguments.
+ </p>
+<p>
+ /functional/invocation/invoke_procedure.hpp&gt;
+ </p>
+<a name="fusion.functional.invocation.functions.invoke_proc.example"></a><h6>
+<a name="id656270"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
+<span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">lambda</span><span class="special">;</span>
+<span class="identifier">invoke_procedure</span><span class="special">(</span><span class="identifier">_1</span> <span class="special">+=</span> <span class="identifier">_2</span><span class="special">,</span> <span class="identifier">v</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>front<span class="special">(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">==</span> <span class="number">3</span><span class="special">);</span>
+</pre>
+<a name="fusion.functional.invocation.functions.invoke_proc.see_also"></a><h6>
+<a name="id656510"></a>
+ <a href="invoke_proc.html#fusion.functional.invocation.functions.invoke_proc.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc">
+<li>invoke</li>
+<li><a href="invoke_fobj.html" title="
+ invoke_function_object"><tt class="computeroutput"><span class="identifier">invoke_function_object</span></tt></a></li>
+<li><a href="../metafunctions/invoke_proc.html" title="
+ invoke_procedure"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">invoke_procedure</span></tt></a></li>
+<li>fused_procedure</li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="invoke.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="invoke_fobj.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/invocation/metafunctions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/invocation/metafunctions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,47 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Metafunctions</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../invocation.html" title="Invocation">
+<link rel="prev" href="functions/invoke_fobj.html" title="
+ invoke_function_object">
+<link rel="next" href="metafunctions/invoke.html" title="invoke">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/invoke_fobj.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../invocation.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/invoke.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.functional.invocation.metafunctions"></a>Metafunctions</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">invoke</span></dt>
+<dt><span class="section"><a href="metafunctions/invoke_proc.html">
+ invoke_procedure</a></span></dt>
+<dt><span class="section"><a href="metafunctions/invoke_fobj.html">
+ invoke_function_object</a></span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/invoke_fobj.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../invocation.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/invoke.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/invocation/metafunctions/invoke.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/invocation/metafunctions/invoke.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,73 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>invoke</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="../metafunctions.html" title="Metafunctions">
+<link rel="next" href="invoke_proc.html" title="
+ invoke_procedure">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="invoke_proc.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.invocation.metafunctions.invoke"></a>invoke</h5></div></div></div>
+<a name="fusion.functional.invocation.metafunctions.invoke.description"></a><h6>
+<a name="id658121"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of invoke.
+ </p>
+<a name="fusion.functional.invocation.metafunctions.invoke.synopsis"></a><h6>
+<a name="id658170"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">result_of</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">,</span>
+ <span class="keyword">class</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">invoke</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.invocation.metafunctions.invoke.see_also"></a><h6>
+<a name="id658324"></a>
+ <a href="invoke.html#fusion.functional.invocation.metafunctions.invoke.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc">
+<li>invoke</li>
+<li>fused</li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="invoke_proc.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/invocation/metafunctions/invoke_fobj.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/invocation/metafunctions/invoke_fobj.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,78 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>
+ invoke_function_object</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="invoke_proc.html" title="
+ invoke_procedure">
+<link rel="next" href="../../adapters.html" title=" Adapters">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="invoke_proc.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../adapters.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.invocation.metafunctions.invoke_fobj"></a><a href="invoke_fobj.html" title="
+ invoke_function_object">
+ invoke_function_object</a></h5></div></div></div>
+<a name="fusion.functional.invocation.metafunctions.invoke_fobj.description"></a><h6>
+<a name="id658715"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of <a href="../functions/invoke_fobj.html" title="
+ invoke_function_object"><tt class="computeroutput"><span class="identifier">invoke_function_object</span></tt></a>.
+ </p>
+<a name="fusion.functional.invocation.metafunctions.invoke_fobj.synopsis"></a><h6>
+<a name="id658766"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">result_of</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">class</span> <span class="identifier">Function</span><span class="special">,</span>
+ <span class="keyword">class</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">invoke_function_object</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.invocation.metafunctions.invoke_fobj.see_also"></a><h6>
+<a name="id658920"></a>
+ <a href="invoke_fobj.html#fusion.functional.invocation.metafunctions.invoke_fobj.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc">
+<li><a href="../functions/invoke_fobj.html" title="
+ invoke_function_object"><tt class="computeroutput"><span class="identifier">invoke_function_object</span></tt></a></li>
+<li>fused_function_object</li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="invoke_proc.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../adapters.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/functional/invocation/metafunctions/invoke_proc.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/functional/invocation/metafunctions/invoke_proc.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,78 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>
+ invoke_procedure</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="invoke.html" title="invoke">
+<link rel="next" href="invoke_fobj.html" title="
+ invoke_function_object">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="invoke.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="invoke_fobj.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.functional.invocation.metafunctions.invoke_proc"></a><a href="invoke_proc.html" title="
+ invoke_procedure">
+ invoke_procedure</a></h5></div></div></div>
+<a name="fusion.functional.invocation.metafunctions.invoke_proc.description"></a><h6>
+<a name="id658418"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of <a href="../functions/invoke_proc.html" title="
+ invoke_procedure"><tt class="computeroutput"><span class="identifier">invoke_procedure</span></tt></a>.
+ </p>
+<a name="fusion.functional.invocation.metafunctions.invoke_proc.synopsis"></a><h6>
+<a name="id658468"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">result_of</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">,</span>
+ <span class="keyword">class</span> <span class="identifier">Sequence</span>
+ <span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">invoke_procedure</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.functional.invocation.metafunctions.invoke_proc.see_also"></a><h6>
+<a name="id658621"></a>
+ <a href="invoke_proc.html#fusion.functional.invocation.metafunctions.invoke_proc.see_also">See
+ also</a>
+ </h6>
+<div class="itemizedlist"><ul type="disc">
+<li><a href="../functions/invoke_proc.html" title="
+ invoke_procedure"><tt class="computeroutput"><span class="identifier">invoke_procedure</span></tt></a></li>
+<li>fused_procedure</li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="invoke.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="invoke_fobj.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/introduction.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/introduction.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,141 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Introduction</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="preface.html" title="Preface">
+<link rel="next" href="quick_start.html" title="Quick Start">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="preface.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="quick_start.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.introduction"></a>Introduction</h2></div></div></div>
+<p>
+ An advantage other languages such as Python and Lisp/ Scheme, ML and Haskell,
+ etc., over C++ is the ability to have heterogeneous containers that can hold
+ arbitrary element types. All the containers in the standard library can only
+ hold a specific type. A <tt class="computeroutput"><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span></tt>
+ can only hold <tt class="computeroutput"><span class="keyword">int</span></tt>s. A <tt class="computeroutput"><span class="identifier">list</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span></tt> can
+ only hold elements of type <tt class="computeroutput"><span class="identifier">X</span></tt>,
+ and so on.
+ </p>
+<p>
+ True, you can use inheritance to make the containers hold different types,
+ related through subclassing. However, you have to hold the objects through
+ a pointer or smart reference of some sort. Doing this, you'll have to rely
+ on virtual functions to provide polymorphic behavior since the actual type
+ is erased as soon as you store a pointer to a derived class to a pointer to
+ its base. The held objects must be related: you cannot hold objects of unrelated
+ types such as <tt class="computeroutput"><span class="keyword">char</span></tt>, <tt class="computeroutput"><span class="keyword">int</span></tt>, <tt class="computeroutput"><span class="keyword">class</span>
+ <span class="identifier">X</span></tt>, <tt class="computeroutput"><span class="keyword">float</span></tt>,
+ etc. Oh sure you can use something like Boost.Any
+ to hold arbitrary types, but then you pay more in terms of runtime costs and
+ due to the fact that you practically erased all type information, you'll have
+ to perform dangerous casts to get back the original type.
+ </p>
+<p>
+ The Boost.Tuple
+ library written by <a href="http://www.boost.org/people/jaakko_jarvi.htm" target="_top">Jaakko
+ Jarvi</a> provides heterogeneous containers in C++. The <tt class="computeroutput"><span class="identifier">tuple</span></tt>
+ is a basic data structure that can hold heterogeneous types. It's a good first
+ step, but it's not complete. What's missing are the algorithms. It's nice that
+ we can store and retrieve data to and from tuples, pass them around as arguments
+ and return types. As it is, the Boost.Tuple
+ facility is already very useful. Yet, as soon as you use it more often, usage
+ patterns emerge. Eventually, you collect these patterns into algorithm libraries.
+ </p>
+<p>
+ Hmmm, kinda reminds us of STL right? Right! Can you imagine how it would be
+ like if you used STL without the algorithms? Everyone will have to reinvent
+ their own <span class="emphasis"><em>algorithm</em></span> wheels.
+ </p>
+<p>
+ Fusion is a library and a framework similar to both STL
+ and the boost MPL.
+ The structure is modeled after MPL,
+ which is modeled after STL.
+ It is named "fusion" because the library is reminiscent of the "fusion"
+ of compile time meta-programming with runtime programming. The library inherently
+ has some interesting flavors and characteristics of both MPL
+ and STL.
+ It lives in the twilight zone between compile time meta-programming and run
+ time programming. STL
+ containers work on values. MPL containers work on types. Fusion containers
+ work on both types and values.
+ </p>
+<p>
+ Unlike MPL, Fusion
+ algorithms are lazy and non sequence-type preserving. What does that mean?
+ It means that when you operate on a sequence through a Fusion algorithm that
+ returns a sequence, the sequence returned may not be of the same class as the
+ original. This is by design. Runtime efficiency is given a high priority. Like
+ MPL, and unlike
+ STL,
+ fusion algorithms are functional in nature such that algorithms are non mutating
+ (no side effects). However, due to the high cost of returning full sequences
+ such as vectors and lists, <span class="emphasis"><em>Views</em></span> are returned from Fusion
+ algorithms instead. For example, the transform algorithm does not actually
+ return a transformed version of the original sequence. transform returns a transform_view. This view holds a
+ reference to the original sequence plus the transform function. Iteration over
+ the transform_view
+ will apply the transform function over the sequence elements on demand. This
+ <span class="emphasis"><em>lazy</em></span> evaluation scheme allows us to chain as many algorithms
+ as we want without incurring a high runtime penalty.
+ </p>
+<p>
+ The <span class="emphasis"><em>lazy</em></span> evaluation scheme where algorithms return views
+ allows operations such as push_back to be totally generic. In
+ Fusion, push_back is actually a generic algorithm
+ that works on all sequences. Given an input sequence <tt class="computeroutput"><span class="identifier">s</span></tt>
+ and a value <tt class="computeroutput"><span class="identifier">x</span></tt>, Fusion's push_back algorithm simply returns
+ a joint_view:
+ a view that holds a reference to the original sequence <tt class="computeroutput"><span class="identifier">s</span></tt>
+ and the value <tt class="computeroutput"><span class="identifier">x</span></tt>. Functions
+ that were once sequence specific and need to be implemented N times over N
+ different sequences are now implemented only once.
+ </p>
+<p>
+ Fusion provides full round compatibility with MPL.
+ Fusion sequences are fully conforming MPL
+ sequences and MPL
+ sequences are fully compatible with Fusion. You can work with Fusion sequences
+ on MPL if you
+ wish to work solely on types. In MPL,
+ Fusion sequences follow MPL's
+ sequence-type preserving semantics (i.e. algorithms preserve the original sequence
+ type. e.g. transforming a vector returns a vector). You can also convert from
+ an MPL sequence
+ to a Fusion sequence. For example, there are times when it is convenient to
+ work solely on MPL
+ using pure MPL
+ sequences, then, convert them to Fusion sequences as a final step before actual
+ instantiation of real runtime objects with data. You have the best of both
+ worlds.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="preface.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="quick_start.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,90 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Iterator</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="support/pair.html" title="pair">
+<link rel="next" href="iterator/concepts.html" title="Concepts">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="support/pair.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="iterator/concepts.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.iterator"></a>Iterator</h2></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">Concepts</span></dt>
+<dd><dl>
+<dt><span class="section"><a href="iterator/concepts/forward_iterator.html">Forward
+ Iterator</a></span></dt>
+<dt><span class="section"><a href="iterator/concepts/bidirectional_iterator.html">Bidirectional
+ Iterator</a></span></dt>
+<dt><span class="section"><a href="iterator/concepts/random_access_iterator.html">Random
+ Access Iterator</a></span></dt>
+</dl></dd>
+<dt><span class="section">Functions</span></dt>
+<dd><dl>
+<dt><span class="section">deref</span></dt>
+<dt><span class="section">next</span></dt>
+<dt><span class="section">prior</span></dt>
+<dt><span class="section">distance</span></dt>
+<dt><span class="section">advance</span></dt>
+<dt><span class="section">advance_c</span></dt>
+</dl></dd>
+<dt><span class="section">Operator</span></dt>
+<dd><dl>
+<dt><span class="section"><a href="iterator/operator/operator_unary_star.html"> Operator
+ *</a></span></dt>
+<dt><span class="section"><a href="iterator/operator/operator_equality.html"> Operator
+ ==</a></span></dt>
+<dt><span class="section"><a href="iterator/operator/operator_inequality.html"> Operator
+ !=</a></span></dt>
+</dl></dd>
+<dt><span class="section">Metafunctions</span></dt>
+<dd><dl>
+<dt><span class="section">value_of</span></dt>
+<dt><span class="section">deref</span></dt>
+<dt><span class="section">next</span></dt>
+<dt><span class="section">prior</span></dt>
+<dt><span class="section">equal_to</span></dt>
+<dt><span class="section">distance</span></dt>
+<dt><span class="section">advance</span></dt>
+<dt><span class="section">advance_c</span></dt>
+</dl></dd>
+</dl></div>
+<p>
+ Like MPL and
+ STL,
+ iterators are a fundamental concept in Fusion. As with MPL
+ and STL
+ iterators describe positions, and provide access to data within an underlying
+ Sequence.
+ </p>
+<p>
+ /iterator.hpp&gt;
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="support/pair.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="iterator/concepts.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/concepts.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/concepts.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,61 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Concepts</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../iterator.html" title="Iterator">
+<link rel="prev" href="../iterator.html" title="Iterator">
+<link rel="next" href="concepts/forward_iterator.html" title="Forward
+ Iterator">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../iterator.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../iterator.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="concepts/forward_iterator.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.iterator.concepts"></a>Concepts</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section"><a href="concepts/forward_iterator.html">Forward
+ Iterator</a></span></dt>
+<dt><span class="section"><a href="concepts/bidirectional_iterator.html">Bidirectional
+ Iterator</a></span></dt>
+<dt><span class="section"><a href="concepts/random_access_iterator.html">Random
+ Access Iterator</a></span></dt>
+</dl></div>
+<p>
+ Fusion iterators are divided into different traversal categories. <a href="concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a> is the most basic concept. <a href="concepts/bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a> is a refinement of <a href="concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>. <a href="concepts/random_access_iterator.html" title="Random
+ Access Iterator">Random
+ Access Iterator</a> is a refinement of <a href="concepts/bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a>.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../iterator.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../iterator.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="concepts/forward_iterator.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/concepts/bidirectional_iterator.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/concepts/bidirectional_iterator.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,319 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Bidirectional
+ Iterator</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../concepts.html" title="Concepts">
+<link rel="prev" href="forward_iterator.html" title="Forward
+ Iterator">
+<link rel="next" href="random_access_iterator.html" title="Random
+ Access Iterator">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="forward_iterator.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="random_access_iterator.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.concepts.bidirectional_iterator"></a><a href="bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a></h4></div></div></div>
+<a name="fusion.iterator.concepts.bidirectional_iterator.description"></a><h5>
+<a name="id471052"></a>
+ Description
+ </h5>
+<p>
+ A Bidirectional Iterator traverses a Sequence
+ allowing movement in either direction one element at a time.
+ </p>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">i</span></tt></span></dt>
+<dd><p>
+ A Bidirectional Iterator
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">I</span></tt></span></dt>
+<dd><p>
+ A Bidirectional Iterator type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">M</span></tt></span></dt>
+<dd><p>
+ An MPL
+ integral constant
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">N</span></tt></span></dt>
+<dd><p>
+ An integral constant
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.iterator.concepts.bidirectional_iterator.refinement_of"></a><h5>
+<a name="id471200"></a>
+ <a href="bidirectional_iterator.html#fusion.iterator.concepts.bidirectional_iterator.refinement_of">Refinement
+ of</a>
+ </h5>
+<p>
+ <a href="forward_iterator.html" title="Forward
+ Iterator">Forward Iterator</a>
+ </p>
+<a name="fusion.iterator.concepts.bidirectional_iterator.expression_requirements"></a><h5>
+<a name="id471240"></a>
+ <a href="bidirectional_iterator.html#fusion.iterator.concepts.bidirectional_iterator.expression_requirements">Expression
+ requirements</a>
+ </h5>
+<p>
+ In addition to the requirements defined in <a href="forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>, the following expressions must be valid:
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Return type
+ </p>
+ </th>
+<th>
+ <p>
+ Runtime Complexity
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">next<span class="special">(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">prior<span class="special">(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">advance_c<span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">advance<span class="special">&lt;</span><span class="identifier">M</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.iterator.concepts.bidirectional_iterator.meta_expressions"></a><h5>
+<a name="id471623"></a>
+ <a href="bidirectional_iterator.html#fusion.iterator.concepts.bidirectional_iterator.meta_expressions">Meta
+ Expressions</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Compile Time Complexity
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::prior<span class="special">&lt;</span><span class="identifier">I</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.iterator.concepts.bidirectional_iterator.expression_semantics"></a><h5>
+<a name="id471759"></a>
+ <a href="bidirectional_iterator.html#fusion.iterator.concepts.bidirectional_iterator.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<p>
+ The semantics of an expression are defined only where they differ from,
+ or are not defined in <a href="forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput">prior<span class="special">(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An iterator to the element preceding <tt class="computeroutput"><span class="identifier">i</span></tt>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.iterator.concepts.bidirectional_iterator.invariants"></a><h5>
+<a name="id471904"></a>
+ Invariants
+ </h5>
+<p>
+ In addition to the invariants of <a href="forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>, the following invariants always hold:
+ </p>
+<div class="itemizedlist"><ul type="disc">
+<li><tt class="computeroutput">prior<span class="special">(</span>next<span class="special">(</span><span class="identifier">i</span><span class="special">))</span> <span class="special">==</span> <span class="identifier">i</span> <span class="special">&amp;&amp;</span> prior<span class="special">(</span>next<span class="special">(</span><span class="identifier">i</span><span class="special">))</span> <span class="special">==</span> next<span c
lass="special">(</span>prior<span class="special">(</span><span class="identifier">i</span><span class="special">))</span></tt></li>
+<li><tt class="computeroutput">prior<span class="special">(</span><span class="identifier">i</span><span class="special">)</span> <span class="special">==</span> advance_c<span class="special">&lt;-</span><span class="number">1</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">)</span></tt></li>
+<li>
+ Using <tt class="computeroutput">prior</tt> to traverse a sequence
+ will never return a previously seen position
+ </li>
+</ul></div>
+<a name="fusion.iterator.concepts.bidirectional_iterator.models"></a><h5>
+<a name="id472242"></a>
+ Models
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>
+std::pair
+ iterator
+ </li>
+<li>
+boost::array
+ iterator
+ </li>
+<li>
+vector
+ iterator
+ </li>
+<li>
+iterator_range
+ (where adapted sequence is a <a href="../../sequence/concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a>)
+ </li>
+<li>
+transform_view
+ (where adapted sequence is a <a href="../../sequence/concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a>)
+ </li>
+<li>reverse_view</li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="forward_iterator.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="random_access_iterator.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/concepts/forward_iterator.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/concepts/forward_iterator.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,576 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Forward
+ Iterator</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../concepts.html" title="Concepts">
+<link rel="prev" href="../concepts.html" title="Concepts">
+<link rel="next" href="bidirectional_iterator.html" title="Bidirectional
+ Iterator">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../concepts.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bidirectional_iterator.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.concepts.forward_iterator"></a><a href="forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a></h4></div></div></div>
+<a name="fusion.iterator.concepts.forward_iterator.description"></a><h5>
+<a name="id468146"></a>
+ Description
+ </h5>
+<p>
+ A Forward Iterator traverses a Sequence
+ allowing movement in only one direction through it's elements, one element
+ at a time.
+ </p>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">i</span></tt>,
+ <tt class="computeroutput"><span class="identifier">j</span></tt></span></dt>
+<dd><p>
+ Forward Iterators
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">I</span></tt>,
+ <tt class="computeroutput"><span class="identifier">J</span></tt></span></dt>
+<dd><p>
+ Forward Iterator types
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">M</span></tt></span></dt>
+<dd><p>
+ An MPL
+ integral constant
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">N</span></tt></span></dt>
+<dd><p>
+ An integral constant
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.iterator.concepts.forward_iterator.expression_requirements"></a><h5>
+<a name="id468318"></a>
+ <a href="forward_iterator.html#fusion.iterator.concepts.forward_iterator.expression_requirements">Expression
+ requirements</a>
+ </h5>
+<p>
+ A type models Forward Iterator if, in addition to being CopyConstructable,
+ the following expressions are valid:
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Return type
+ </p>
+ </th>
+<th>
+ <p>
+ Runtime Complexity
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">next<span class="special">(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">i</span> <span class="special">==</span>
+ <span class="identifier">j</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Convertible to bool
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">i</span> <span class="special">!=</span>
+ <span class="identifier">j</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Convertible to bool
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">advance_c<span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">advance<span class="special">&lt;</span><span class="identifier">M</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">distance<span class="special">(</span><span class="identifier">i</span><span class="special">,</span>
+ <span class="identifier">j</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::distance<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span>
+ <span class="identifier">J</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">deref<span class="special">(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::deref<span class="special">&lt;</span><span class="identifier">I</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="special">*</span><span class="identifier">i</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::deref<span class="special">&lt;</span><span class="identifier">I</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.iterator.concepts.forward_iterator.meta_expressions"></a><h5>
+<a name="id469064"></a>
+ <a href="forward_iterator.html#fusion.iterator.concepts.forward_iterator.meta_expressions">Meta
+ Expressions</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Compile Time Complexity
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::next<span class="special">&lt;</span><span class="identifier">I</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::equal_to<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span>
+ <span class="identifier">J</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::advance_c<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span>
+ <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Linear
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::advance<span class="special">&lt;</span><span class="identifier">I</span> <span class="special">,</span><span class="identifier">M</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Linear
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::distance<span class="special">&lt;</span><span class="identifier">I</span> <span class="special">,</span><span class="identifier">J</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Linear
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::deref<span class="special">&lt;</span><span class="identifier">I</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::value_of<span class="special">&lt;</span><span class="identifier">I</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.iterator.concepts.forward_iterator.expression_semantics"></a><h5>
+<a name="id469667"></a>
+ <a href="forward_iterator.html#fusion.iterator.concepts.forward_iterator.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">next<span class="special">(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An iterator to the element following <tt class="computeroutput"><span class="identifier">i</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">i</span> <span class="special">==</span>
+ <span class="identifier">j</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Iterator equality comparison
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">i</span> <span class="special">!=</span>
+ <span class="identifier">j</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Iterator inequality comparison
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">advance_c<span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An iterator n elements after <tt class="computeroutput"><span class="identifier">i</span></tt>
+ in the sequence
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">advance<span class="special">&lt;</span><span class="identifier">M</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Equivalent to <tt class="computeroutput"><span class="identifier">advance_c</span><span class="special">&lt;</span><span class="identifier">M</span><span class="special">::</span><span class="identifier">value</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">distance<span class="special">(</span><span class="identifier">i</span><span class="special">,</span>
+ <span class="identifier">j</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The number of elements between <tt class="computeroutput"><span class="identifier">i</span></tt>
+ and <tt class="computeroutput"><span class="identifier">j</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">deref<span class="special">(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The element at position<tt class="computeroutput"><span class="identifier">i</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="special">*</span><span class="identifier">i</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Equivalent to <tt class="computeroutput"><span class="identifier">deref</span><span class="special">(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.iterator.concepts.forward_iterator.invariants"></a><h5>
+<a name="id470275"></a>
+ Invariants
+ </h5>
+<p>
+ The following invariants always hold:
+ </p>
+<div class="itemizedlist"><ul type="disc">
+<li><tt class="computeroutput"><span class="special">!(</span><span class="identifier">i</span>
+ <span class="special">==</span> <span class="identifier">j</span><span class="special">)</span> <span class="special">==</span> <span class="special">(</span><span class="identifier">i</span> <span class="special">!=</span> <span class="identifier">j</span><span class="special">)</span></tt></li>
+<li><tt class="computeroutput">next<span class="special">(</span><span class="identifier">i</span><span class="special">)</span> <span class="special">==</span> advance_c<span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">)</span></tt></li>
+<li><tt class="computeroutput">distance<span class="special">(</span><span class="identifier">i</span><span class="special">,</span> advance_c<span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">))</span> <span class="special">==</span> <span class="identifier">N</span></tt></li>
+<li>
+ Using <tt class="computeroutput">next</tt> to traverse the
+ sequence will never return to a previously seen position
+ </li>
+<li>
+<tt class="computeroutput">deref<span class="special">(</span><span class="identifier">i</span><span class="special">)</span></tt> is equivalent to <tt class="computeroutput"><span class="special">*</span><span class="identifier">i</span></tt>
+</li>
+<li>
+ If <tt class="computeroutput"><span class="identifier">i</span> <span class="special">==</span>
+ <span class="identifier">j</span></tt> then <tt class="computeroutput"><span class="special">*</span><span class="identifier">i</span></tt> is equivalent to <tt class="computeroutput"><span class="special">*</span><span class="identifier">j</span></tt>
+</li>
+</ul></div>
+<a name="fusion.iterator.concepts.forward_iterator.models"></a><h5>
+<a name="id470699"></a>
+ Models
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>
+std::pair
+ iterator
+ </li>
+<li>
+boost::array
+ iterator
+ </li>
+<li>
+vector
+ iterator
+ </li>
+<li>
+cons
+ iterator
+ </li>
+<li>
+list
+ iterator
+ </li>
+<li>
+set
+ iterator
+ </li>
+<li>
+map
+ iterator
+ </li>
+<li>
+single_view
+ iterator
+ </li>
+<li>
+filter_view
+ iterator
+ </li>
+<li>
+iterator_range
+ iterator
+ </li>
+<li>
+joint_view
+ iterator
+ </li>
+<li>
+transform_view
+ iterator
+ </li>
+<li>
+reverse_view
+ iterator
+ </li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../concepts.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bidirectional_iterator.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/concepts/random_access_iterator.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/concepts/random_access_iterator.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,297 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Random
+ Access Iterator</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../concepts.html" title="Concepts">
+<link rel="prev" href="bidirectional_iterator.html" title="Bidirectional
+ Iterator">
+<link rel="next" href="../functions.html" title="Functions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="bidirectional_iterator.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../functions.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.concepts.random_access_iterator"></a><a href="random_access_iterator.html" title="Random
+ Access Iterator">Random
+ Access Iterator</a></h4></div></div></div>
+<a name="fusion.iterator.concepts.random_access_iterator.description"></a><h5>
+<a name="id472460"></a>
+ Description
+ </h5>
+<p>
+ A Random Access Iterator traverses a Sequence
+ moving in either direction, permitting efficient arbitrary distance movements
+ back and forward through the sequence.
+ </p>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">i</span></tt>,
+ <tt class="computeroutput"><span class="identifier">j</span></tt></span></dt>
+<dd><p>
+ Random Access Iterators
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">I</span></tt>,
+ <tt class="computeroutput"><span class="identifier">J</span></tt></span></dt>
+<dd><p>
+ Random Access Iterator types
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">M</span></tt></span></dt>
+<dd><p>
+ An MPL
+ integral constant
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">N</span></tt></span></dt>
+<dd><p>
+ An integral constant
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.iterator.concepts.random_access_iterator.refinement_of"></a><h5>
+<a name="id472631"></a>
+ <a href="random_access_iterator.html#fusion.iterator.concepts.random_access_iterator.refinement_of">Refinement
+ of</a>
+ </h5>
+<p>
+ <a href="bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a>
+ </p>
+<a name="fusion.iterator.concepts.random_access_iterator.expression_requirements"></a><h5>
+<a name="id472670"></a>
+ <a href="random_access_iterator.html#fusion.iterator.concepts.random_access_iterator.expression_requirements">Expression
+ requirements</a>
+ </h5>
+<p>
+ In addition to the requirements defined in <a href="bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a>, the following expressions must be valid:
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Return type
+ </p>
+ </th>
+<th>
+ <p>
+ Runtime Complexity
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">next<span class="special">(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="random_access_iterator.html" title="Random
+ Access Iterator">Random
+ Access Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">prior<span class="special">(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="random_access_iterator.html" title="Random
+ Access Iterator">Random
+ Access Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">advance_c<span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="random_access_iterator.html" title="Random
+ Access Iterator">Random
+ Access Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">advance<span class="special">&lt;</span><span class="identifier">M</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="random_access_iterator.html" title="Random
+ Access Iterator">Random
+ Access Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.iterator.concepts.random_access_iterator.meta_expressions"></a><h5>
+<a name="id473053"></a>
+ <a href="random_access_iterator.html#fusion.iterator.concepts.random_access_iterator.meta_expressions">Meta
+ Expressions</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Compile Time Complexity
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::advance_c<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span>
+ <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::advance<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span>
+ <span class="identifier">M</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::distance<span class="special">&lt;</span><span class="identifier">I</span> <span class="special">,</span><span class="identifier">J</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.iterator.concepts.random_access_iterator.models"></a><h5>
+<a name="id473359"></a>
+ Models
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>
+vector
+ iterator
+ </li>
+<li>
+std::pair
+ iterator
+ </li>
+<li>
+boost::array
+ iterator
+ </li>
+<li>
+iterator_range
+ iterator (where adapted sequence is a <a href="../../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a>)
+ </li>
+<li>
+transform_view
+ iterator (where adapted sequence is a <a href="../../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a>)
+ </li>
+<li>
+reverse_view
+ iterator (where adapted sequence is a <a href="../../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a>)
+ </li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="bidirectional_iterator.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../functions.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/functions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/functions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,53 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Functions</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../iterator.html" title="Iterator">
+<link rel="prev" href="concepts/random_access_iterator.html" title="Random
+ Access Iterator">
+<link rel="next" href="functions/deref.html" title="deref">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="concepts/random_access_iterator.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../iterator.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/deref.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.iterator.functions"></a>Functions</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">deref</span></dt>
+<dt><span class="section">next</span></dt>
+<dt><span class="section">prior</span></dt>
+<dt><span class="section">distance</span></dt>
+<dt><span class="section">advance</span></dt>
+<dt><span class="section">advance_c</span></dt>
+</dl></div>
+<p>
+ Fusion provides functions for manipulating iterators, analogous to the similar
+ functions from the MPL
+ library.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="concepts/random_access_iterator.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../iterator.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/deref.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/functions/advance.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/functions/advance.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,157 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>advance</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="distance.html" title="distance">
+<link rel="next" href="advance_c.html" title="advance_c">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="distance.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="advance_c.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.functions.advance"></a>advance</h4></div></div></div>
+<a name="fusion.iterator.functions.advance.description"></a><h5>
+<a name="id476857"></a>
+ Description
+ </h5>
+<p>
+ Moves an iterator by a specified distance.
+ </p>
+<a name="fusion.iterator.functions.advance.synopsis"></a><h5>
+<a name="id476887"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">I</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">M</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::advance<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span> <span class="identifier">M</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">advance</span><span class="special">(</span><span class="identifier">I</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">i</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id477059"></a><p class="title"><b>Table 1.6. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">i</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Iterator to move relative to
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">N</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Number of positions to move
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.iterator.functions.advance.expression_semantics"></a><h5>
+<a name="id477205"></a>
+ <a href="advance.html#fusion.iterator.functions.advance.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<pre class="programlisting">
+advance<span class="special">&lt;</span><span class="identifier">M</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of the same iterator
+ concept as <tt class="computeroutput"><span class="identifier">i</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns an iterator to the
+ element <tt class="computeroutput"><span class="identifier">M</span></tt> positions from
+ <tt class="computeroutput"><span class="identifier">i</span></tt>. If <tt class="computeroutput"><span class="identifier">i</span></tt>
+ is a <a href="../concepts/bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a> then <tt class="computeroutput"><span class="identifier">M</span></tt>
+ may be negative.
+ </p>
+<p>
+ /iterator/advance.hpp&gt;
+ </p>
+<a name="fusion.iterator.functions.advance.example"></a><h5>
+<a name="id477374"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+
+<span class="identifier">vec</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>deref<span class="special">(</span>advance<span class="special">&lt;</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span><span class="number">2</span><span class="special">&gt;</span> <span class="special">&gt;(</span>begin<span class="special">(</span><span class="identifier">v</span><span class="special">)))</span> <span class="special">==</span> <span class="number">3</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="distance.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="advance_c.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/functions/advance_c.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/functions/advance_c.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,156 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>advance_c</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="advance.html" title="advance">
+<link rel="next" href="../operator.html" title="Operator">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="advance.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../operator.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.functions.advance_c"></a>advance_c</h4></div></div></div>
+<a name="fusion.iterator.functions.advance_c.description"></a><h5>
+<a name="id477671"></a>
+ Description
+ </h5>
+<p>
+ Moves an iterator by a specified distance.
+ </p>
+<a name="fusion.iterator.functions.advance_c.synopsis"></a><h5>
+<a name="id477701"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">I</span><span class="special">,</span>
+ <span class="keyword">int</span> <span class="identifier">N</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::advance_c<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">advance_c</span><span class="special">(</span><span class="identifier">I</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">i</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id477874"></a><p class="title"><b>Table 1.7. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">i</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Iterator to move relative to
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">N</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Integer constant
+ </p>
+ </td>
+<td>
+ <p>
+ Number of positions to move
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.iterator.functions.advance_c.expression_semantics"></a><h5>
+<a name="id478013"></a>
+ <a href="advance_c.html#fusion.iterator.functions.advance_c.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<pre class="programlisting">
+advance_c<span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">i</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of the same iterator
+ concept as <tt class="computeroutput"><span class="identifier">i</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns an iterator to the
+ element <tt class="computeroutput"><span class="identifier">N</span></tt> positions from
+ <tt class="computeroutput"><span class="identifier">i</span></tt>. If <tt class="computeroutput"><span class="identifier">i</span></tt>
+ is a <a href="../concepts/bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a> then <tt class="computeroutput"><span class="identifier">N</span></tt>
+ may be negative.
+ </p>
+<p>
+ /iterator/advance.hpp&gt;
+ </p>
+<a name="fusion.iterator.functions.advance_c.example"></a><h5>
+<a name="id478184"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+
+<span class="identifier">vec</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>deref<span class="special">(</span>advance_c<span class="special">&lt;</span><span class="number">2</span><span class="special">&gt;(</span>begin<span class="special">(</span><span class="identifier">v</span><span class="special">)))</span> <span class="special">==</span> <span class="number">3</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="advance.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../operator.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/functions/deref.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/functions/deref.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,133 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>deref</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="../functions.html" title="Functions">
+<link rel="next" href="next.html" title="next">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="next.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.functions.deref"></a>deref</h4></div></div></div>
+<a name="fusion.iterator.functions.deref.description"></a><h5>
+<a name="id473616"></a>
+ Description
+ </h5>
+<p>
+ Deferences an iterator.
+ </p>
+<a name="fusion.iterator.functions.deref.synopsis"></a><h5>
+<a name="id473646"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">I</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::deref<span class="special">&lt;</span><span class="identifier">I</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">deref</span><span class="special">(</span><span class="identifier">I</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">i</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id473791"></a><p class="title"><b>Table 1.2. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">i</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.iterator.functions.deref.expression_semantics"></a><h5>
+<a name="id473893"></a>
+ <a href="deref.html#fusion.iterator.functions.deref.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<pre class="programlisting">
+deref<span class="special">(</span><span class="identifier">i</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput">result_of::deref<span class="special">&lt;</span><span class="identifier">I</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Dereferences the iterator
+ <tt class="computeroutput"><span class="identifier">i</span></tt>.
+ </p>
+<p>
+ /iterator/deref.hpp&gt;
+ </p>
+<a name="fusion.iterator.functions.deref.example"></a><h5>
+<a name="id474045"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&amp;&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+
+<span class="keyword">int</span> <span class="identifier">i</span><span class="special">(</span><span class="number">0</span><span class="special">);</span>
+<span class="identifier">vec</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="identifier">i</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>deref<span class="special">(</span>begin<span class="special">(</span><span class="identifier">v</span><span class="special">))</span> <span class="special">==</span> <span class="number">1</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>deref<span class="special">(</span>next<span class="special">(</span>begin<span class="special">(</span><span class="identifier">v</span><span class="special">)))</span> <span class="special">==</span> <span class="number">0</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(&amp;(</span>deref<span class="special">(</span>next<span class="special">(</span>begin<span class="special">(</span><span class="identifier">v</span><span class="special">))))</span> <span class="special">==</span> <span class="special">&amp;</span><span class="identifier">i</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="next.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/functions/distance.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/functions/distance.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,131 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>distance</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="prior.html" title="prior">
+<link rel="next" href="advance.html" title="advance">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="prior.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="advance.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.functions.distance"></a>distance</h4></div></div></div>
+<a name="fusion.iterator.functions.distance.description"></a><h5>
+<a name="id476070"></a>
+ Description
+ </h5>
+<p>
+ Returns the distance between 2 iterators.
+ </p>
+<a name="fusion.iterator.functions.distance.synopsis"></a><h5>
+<a name="id476099"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">I</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">J</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::distance<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span> <span class="identifier">J</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">distance</span><span class="special">(</span><span class="identifier">I</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">i</span><span class="special">,</span> <span class="identifier">J</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">j</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id476300"></a><p class="title"><b>Table 1.5. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">i</span></tt>, <tt class="computeroutput"><span class="identifier">j</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Models of <a href="../concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a> into the same sequence
+ </p>
+ </td>
+<td>
+ <p>
+ The start and end points of the distance to be measured
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.iterator.functions.distance.expression_semantics"></a><h5>
+<a name="id476415"></a>
+ <a href="distance.html#fusion.iterator.functions.distance.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<pre class="programlisting">
+distance<span class="special">(</span><span class="identifier">i</span><span class="special">,</span><span class="identifier">j</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">int</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the distance between
+ iterators <tt class="computeroutput"><span class="identifier">i</span></tt> and <tt class="computeroutput"><span class="identifier">j</span></tt>.
+ </p>
+<p>
+ /iterator/distance.hpp&gt;
+ </p>
+<a name="fusion.iterator.functions.distance.example"></a><h5>
+<a name="id476547"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+
+<span class="identifier">vec</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>distance<span class="special">(</span>begin<span class="special">(</span><span class="identifier">v</span><span class="special">),</span> next<span class="special">(</span>next<span class="special">(</span>begin<span class="special">(</span><span class="identifier">v</span><span class="special">))))</span> <span class="special">==</span> <span class="number">2</spa
n><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="prior.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="advance.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/functions/next.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/functions/next.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,133 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>next</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="deref.html" title="deref">
+<link rel="next" href="prior.html" title="prior">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="deref.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="prior.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.functions.next"></a>next</h4></div></div></div>
+<a name="fusion.iterator.functions.next.description"></a><h5>
+<a name="id474493"></a>
+ Description
+ </h5>
+<p>
+ Moves an iterator 1 position forwards.
+ </p>
+<a name="fusion.iterator.functions.next.synopsis"></a><h5>
+<a name="id474522"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">I</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::next<span class="special">&lt;</span><span class="identifier">I</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">next</span><span class="special">(</span><span class="identifier">I</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">i</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id474667"></a><p class="title"><b>Table 1.3. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">i</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.iterator.functions.next.expression_semantics"></a><h5>
+<a name="id474768"></a>
+ <a href="next.html#fusion.iterator.functions.next.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<pre class="programlisting">
+<span class="identifier">next</span><span class="special">(</span><span class="identifier">i</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of the same iterator
+ concept as <tt class="computeroutput"><span class="identifier">i</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns an iterator to the
+ next element after <tt class="computeroutput"><span class="identifier">i</span></tt>.
+ </p>
+<p>
+ /iterator/next.hpp&gt;
+ </p>
+<a name="fusion.iterator.functions.next.example"></a><h5>
+<a name="id474872"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+
+<span class="identifier">vec</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>deref<span class="special">(</span>begin<span class="special">(</span><span class="identifier">v</span><span class="special">))</span> <span class="special">==</span> <span class="number">1</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>deref<span class="special">(</span>next<span class="special">(</span>begin<span class="special">(</span><span class="identifier">v</span><span class="special">)))</span> <span class="special">==</span> <span class="number">2</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>deref<span class="special">(</span>next<span class="special">(</span>next<span class="special">(</span>begin<span class="special">(</span><span class="identifier">v</span><span class="special">))))</span> <span class="special">==</span> <span class="number">3</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="deref.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="prior.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/functions/prior.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/functions/prior.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,132 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>prior</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="next.html" title="next">
+<link rel="next" href="distance.html" title="distance">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="next.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="distance.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.functions.prior"></a>prior</h4></div></div></div>
+<a name="fusion.iterator.functions.prior.description"></a><h5>
+<a name="id475324"></a>
+ Description
+ </h5>
+<p>
+ Moves an iterator 1 position backwards.
+ </p>
+<a name="fusion.iterator.functions.prior.synopsis"></a><h5>
+<a name="id475354"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">I</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::prior<span class="special">&lt;</span><span class="identifier">I</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">prior</span><span class="special">(</span><span class="identifier">I</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">i</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id475498"></a><p class="title"><b>Table 1.4. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">i</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../concepts/bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.iterator.functions.prior.expression_semantics"></a><h5>
+<a name="id475600"></a>
+ <a href="prior.html#fusion.iterator.functions.prior.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<pre class="programlisting">
+prior<span class="special">(</span><span class="identifier">i</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of the same iterator
+ concept as <tt class="computeroutput"><span class="identifier">i</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns an iterator to the
+ element prior to <tt class="computeroutput"><span class="identifier">i</span></tt>.
+ </p>
+<p>
+ /iterator/prior.hpp&gt;
+ </p>
+<a name="fusion.iterator.functions.prior.example"></a><h5>
+<a name="id475713"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+
+<span class="identifier">vec</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>deref<span class="special">(</span>next<span class="special">(</span>begin<span class="special">(</span><span class="identifier">v</span><span class="special">)))</span> <span class="special">==</span> <span class="number">2</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>deref<span class="special">(</span>prior<span class="special">(</span>next<span class="special">(</span>begin<span class="special">(</span><span class="identifier">v</span><span class="special">))))</span> <span class="special">==</span> <span class="number">1</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="next.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="distance.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/metafunctions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/metafunctions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,50 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Metafunctions</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../iterator.html" title="Iterator">
+<link rel="prev" href="operator/operator_inequality.html" title=" Operator
+ !=">
+<link rel="next" href="metafunctions/value_of.html" title="value_of">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="operator/operator_inequality.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../iterator.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/value_of.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.iterator.metafunctions"></a>Metafunctions</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">value_of</span></dt>
+<dt><span class="section">deref</span></dt>
+<dt><span class="section">next</span></dt>
+<dt><span class="section">prior</span></dt>
+<dt><span class="section">equal_to</span></dt>
+<dt><span class="section">distance</span></dt>
+<dt><span class="section">advance</span></dt>
+<dt><span class="section">advance_c</span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="operator/operator_inequality.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../iterator.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/value_of.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/advance.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/advance.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,161 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>advance</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="distance.html" title="distance">
+<link rel="next" href="advance_c.html" title="advance_c">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="distance.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="advance_c.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.metafunctions.advance"></a>advance</h4></div></div></div>
+<a name="fusion.iterator.metafunctions.advance.description"></a><h5>
+<a name="id485402"></a>
+ Description
+ </h5>
+<p>
+ Moves an iterator a specified distance.
+ </p>
+<a name="fusion.iterator.metafunctions.advance.synopsis"></a><h5>
+<a name="id485433"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">I</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">M</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">advance</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id485551"></a><p class="title"><b>Table 1.17. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">I</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Iterator to move relative to
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">M</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Number of positions to move
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.iterator.metafunctions.advance.expression_semantics"></a><h5>
+<a name="id485697"></a>
+ <a href="advance.html#fusion.iterator.metafunctions.advance.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<pre class="programlisting">
+result_of::advance<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span><span class="identifier">M</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of the same iterator
+ concept as <tt class="computeroutput"><span class="identifier">I</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns an iterator a distance
+ <tt class="computeroutput"><span class="identifier">M</span></tt> from <tt class="computeroutput"><span class="identifier">I</span></tt>.
+ If <tt class="computeroutput"><span class="identifier">I</span></tt> is a <a href="../concepts/bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a> then <tt class="computeroutput"><span class="identifier">M</span></tt>
+ may be negative.
+ </p>
+<p>
+ /iterator/advance.hpp&gt;
+ </p>
+<a name="fusion.iterator.metafunctions.advance.example"></a><h5>
+<a name="id485880"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">double</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::begin<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">first</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::next<span class="special">&lt;</span><span class="identifier">first</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">second</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::next<span class="special">&lt;</span><span class="identifier">second</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">third</span><span class="special">;</span>
+
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span>result_of::equal_to<span class="special">&lt;</span>result_of::advance<span class="special">&lt;</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span><span class="number">2</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="identifier">third</span><span class="special">&gt;));
</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="distance.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="advance_c.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/advance_c.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/advance_c.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,160 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>advance_c</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="advance.html" title="advance">
+<link rel="next" href="../../sequence.html" title="Sequence">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="advance.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../sequence.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.metafunctions.advance_c"></a>advance_c</h4></div></div></div>
+<a name="fusion.iterator.metafunctions.advance_c.description"></a><h5>
+<a name="id486342"></a>
+ Description
+ </h5>
+<p>
+ Moves an iterator by a specified distance.
+ </p>
+<a name="fusion.iterator.metafunctions.advance_c.synopsis"></a><h5>
+<a name="id486373"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">I</span><span class="special">,</span>
+ <span class="keyword">int</span> <span class="identifier">N</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">advance_c</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id486492"></a><p class="title"><b>Table 1.18. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">I</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Iterator to move relative to
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">N</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Integer constant
+ </p>
+ </td>
+<td>
+ <p>
+ Number of positions to move
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.iterator.metafunctions.advance_c.expression_semantics"></a><h5>
+<a name="id486630"></a>
+ <a href="advance_c.html#fusion.iterator.metafunctions.advance_c.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<pre class="programlisting">
+result_of::advance_c<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of the same iterator
+ concept as <tt class="computeroutput"><span class="identifier">I</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns an iterator a distance
+ <tt class="computeroutput"><span class="identifier">N</span></tt> from <tt class="computeroutput"><span class="identifier">I</span></tt>.
+ If <tt class="computeroutput"><span class="identifier">I</span></tt> is a <a href="../concepts/bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a> then <tt class="computeroutput"><span class="identifier">N</span></tt>
+ may be negative. Equivalent to <tt class="computeroutput">result_of::advance<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span></tt>.
+ </p>
+<p>
+ /iterator/advance.hpp&gt;
+ </p>
+<a name="fusion.iterator.metafunctions.advance_c.example"></a><h5>
+<a name="id486916"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">double</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::begin<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">first</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::next<span class="special">&lt;</span><span class="identifier">first</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">second</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::next<span class="special">&lt;</span><span class="identifier">second</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">third</span><span class="special">;</span>
+
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span>result_of::equal_to<span class="special">&lt;</span>result_of::advance_c<span class="special">&lt;</span><span class="identifier">first</span><span class="special">,</span> <span class="number">2</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="identifier">third</span><span class="special">&gt;));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="advance.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../sequence.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/deref.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/deref.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,139 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>deref</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="value_of.html" title="value_of">
+<link rel="next" href="next.html" title="next">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="value_of.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="next.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.metafunctions.deref"></a>deref</h4></div></div></div>
+<a name="fusion.iterator.metafunctions.deref.description"></a><h5>
+<a name="id481262"></a>
+ Description
+ </h5>
+<p>
+ Returns the type that will be returned by dereferencing an iterator.
+ </p>
+<a name="fusion.iterator.metafunctions.deref.synposis"></a><h5>
+<a name="id481293"></a>
+ Synposis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">I</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">deref</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id481393"></a><p class="title"><b>Table 1.12. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">I</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.iterator.metafunctions.deref.expression_semantics"></a><h5>
+<a name="id481495"></a>
+ <a href="deref.html#fusion.iterator.metafunctions.deref.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<pre class="programlisting">
+result_of::deref<span class="special">&lt;</span><span class="identifier">I</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Any type
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the result of dereferencing
+ an iterator of type <tt class="computeroutput"><span class="identifier">I</span></tt>.
+ </p>
+<p>
+ /iterator/deref.hpp&gt;
+ </p>
+<a name="fusion.iterator.metafunctions.deref.example"></a><h5>
+<a name="id481615"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&amp;&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+<span class="keyword">typedef</span> <span class="keyword">const</span> <span class="identifier">vec</span> <span class="identifier">const_vec</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::begin<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">first</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::next<span class="special">&lt;</span><span class="identifier">first</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">second</span><span class="special">;</span>
+
+<span class="keyword">typedef</span> result_of::begin<span class="special">&lt;</span><span class="identifier">const_vec</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">const_first</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::next<span class="special">&lt;</span><span class="identifier">const_first</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">const_second</span><span class="special">;</span>
+
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span>result_of::deref<span class="special">&lt;</span><span class="identifier">first</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&amp;&gt;));</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span>result_of::deref<span class="special">&lt;</span><span class="identifier">second</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&amp;&gt;));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="value_of.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="next.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/distance.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/distance.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,139 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>distance</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="equal_to.html" title="equal_to">
+<link rel="next" href="advance.html" title="advance">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="equal_to.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="advance.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.metafunctions.distance"></a>distance</h4></div></div></div>
+<a name="fusion.iterator.metafunctions.distance.description"></a><h5>
+<a name="id484556"></a>
+ Description
+ </h5>
+<p>
+ Returns the distance between two iterators.
+ </p>
+<a name="fusion.iterator.metafunctions.distance.synopsis"></a><h5>
+<a name="id484587"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">I</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">J</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">distance</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id484705"></a><p class="title"><b>Table 1.16. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">I</span></tt>, <tt class="computeroutput"><span class="identifier">J</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Models of <a href="../concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a> into the same sequence
+ </p>
+ </td>
+<td>
+ <p>
+ The start and end points of the distance to be measured
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.iterator.metafunctions.distance.expression_semantics"></a><h5>
+<a name="id484819"></a>
+ <a href="distance.html#fusion.iterator.metafunctions.distance.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<pre class="programlisting">
+result_of::distance<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span> <span class="identifier">J</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the distance between
+ iterators of types <tt class="computeroutput"><span class="identifier">I</span></tt> and
+ <tt class="computeroutput"><span class="identifier">J</span></tt>.
+ </p>
+<p>
+ /iterator/distance.hpp&gt;
+ </p>
+<a name="fusion.iterator.metafunctions.distance.example"></a><h5>
+<a name="id484969"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">double</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::begin<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">first</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::next<span class="special">&lt;</span><span class="identifier">first</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">second</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::next<span class="special">&lt;</span><span class="identifier">second</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">third</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::distance<span class="special">&lt;</span><span class="identifier">first</span><span class="special">,</span><span class="identifier">third</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">dist</span><span class="special">;</span>
+
+<span class="identifier">BOOST_MPL_ASSERT_RELATION</span><span class="special">(</span><span class="identifier">dist</span><span class="special">::</span><span class="identifier">value</span><span class="special">,</span> <span class="special">==,</span> <span class="number">2</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="equal_to.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="advance.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/equal_to.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/equal_to.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,137 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>equal_to</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="prior.html" title="prior">
+<link rel="next" href="distance.html" title="distance">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="prior.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="distance.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.metafunctions.equal_to"></a>equal_to</h4></div></div></div>
+<a name="fusion.iterator.metafunctions.equal_to.description"></a><h5>
+<a name="id483695"></a>
+ Description
+ </h5>
+<p>
+ Returns a true-valued <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a> if <tt class="computeroutput"><span class="identifier">I</span></tt>
+ and <tt class="computeroutput"><span class="identifier">J</span></tt> are equal.
+ </p>
+<a name="fusion.iterator.metafunctions.equal_to.synopsis"></a><h5>
+<a name="id483758"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">I</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">J</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">equal_to</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id483875"></a><p class="title"><b>Table 1.15. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">I</span></tt>, <tt class="computeroutput"><span class="identifier">J</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any fusion iterators
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's arguments
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.iterator.metafunctions.equal_to.expression_semantics"></a><h5>
+<a name="id483979"></a>
+ <a href="equal_to.html#fusion.iterator.metafunctions.equal_to.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<pre class="programlisting">
+result_of::equal_to<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span> <span class="identifier">J</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>
+ if <tt class="computeroutput"><span class="identifier">I</span></tt> and <tt class="computeroutput"><span class="identifier">J</span></tt> are iterators to the same position.
+ Returns <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span></tt> otherwise.
+ </p>
+<p>
+ /iterator/equal_to.hpp&gt;
+ </p>
+<a name="fusion.iterator.metafunctions.equal_to.example"></a><h5>
+<a name="id484192"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::begin<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">first</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::end<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">last</span><span class="special">;</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span>result_of::equal_to<span class="special">&lt;</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">first</span><span class="special">&gt;));</span>
+<span class="identifier">BOOST_MPL_ASSERT_NOT</span><span class="special">((</span>result_of::equal_to<span class="special">&lt;</span><span class="identifier">first</span><span class="special">,</span><span class="identifier">last</span><span class="special">&gt;));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="prior.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="distance.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/next.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/next.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,134 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>next</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="deref.html" title="deref">
+<link rel="next" href="prior.html" title="prior">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="deref.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="prior.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.metafunctions.next"></a>next</h4></div></div></div>
+<a name="fusion.iterator.metafunctions.next.description"></a><h5>
+<a name="id482197"></a>
+ Description
+ </h5>
+<p>
+ Returns the type of the next iterator in a sequence.
+ </p>
+<a name="fusion.iterator.metafunctions.next.synposis"></a><h5>
+<a name="id482227"></a>
+ Synposis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">I</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">next</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id482328"></a><p class="title"><b>Table 1.13. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">I</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.iterator.metafunctions.next.expression_semantics"></a><h5>
+<a name="id482430"></a>
+ <a href="next.html#fusion.iterator.metafunctions.next.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<pre class="programlisting">
+result_of::next<span class="special">&lt;</span><span class="identifier">I</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of the same iterator
+ concept as <tt class="computeroutput"><span class="identifier">I</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns an iterator to the
+ next element in the sequence after <tt class="computeroutput"><span class="identifier">I</span></tt>.
+ </p>
+<p>
+ /iterator/next.hpp&gt;
+ </p>
+<a name="fusion.iterator.metafunctions.next.example"></a><h5>
+<a name="id482560"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::next<span class="special">&lt;</span>result_of::begin<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">second</span><span class="special">;</span>
+
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span>result_of::value_of<span class="special">&lt;</span><span class="identifier">second</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="deref.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="prior.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/prior.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/prior.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,137 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>prior</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="next.html" title="next">
+<link rel="next" href="equal_to.html" title="equal_to">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="next.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="equal_to.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.metafunctions.prior"></a>prior</h4></div></div></div>
+<a name="fusion.iterator.metafunctions.prior.description"></a><h5>
+<a name="id482867"></a>
+ Description
+ </h5>
+<p>
+ Returns the type of the previous iterator in a sequence.
+ </p>
+<a name="fusion.iterator.metafunctions.prior.synopsis"></a><h5>
+<a name="id482897"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">I</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">prior</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id482998"></a><p class="title"><b>Table 1.14. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">I</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../concepts/bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.iterator.metafunctions.prior.expression_semantics"></a><h5>
+<a name="id483099"></a>
+ <a href="prior.html#fusion.iterator.metafunctions.prior.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<pre class="programlisting">
+result_of::prior<span class="special">&lt;</span><span class="identifier">I</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of the same iterator
+ concept as <tt class="computeroutput"><span class="identifier">I</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns an iterator to the
+ previous element in the sequence before <tt class="computeroutput"><span class="identifier">I</span></tt>.
+ </p>
+<p>
+ /iterator/prior.hpp&gt;
+ </p>
+<a name="fusion.iterator.metafunctions.prior.example"></a><h5>
+<a name="id483231"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::next<span class="special">&lt;</span>result_of::begin<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">second</span><span class="special">;</span>
+
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span>result_of::value_of<span class="special">&lt;</span><span class="identifier">second</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;));</span>
+
+<span class="keyword">typedef</span> result_of::prior<span class="special">&lt;</span><span class="identifier">second</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">first</span><span class="special">;</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span>result_of::value_of<span class="special">&lt;</span><span class="identifier">first</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="next.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="equal_to.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/value_of.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/metafunctions/value_of.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,137 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>value_of</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="../metafunctions.html" title="Metafunctions">
+<link rel="next" href="deref.html" title="deref">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="deref.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.metafunctions.value_of"></a>value_of</h4></div></div></div>
+<a name="fusion.iterator.metafunctions.value_of.description"></a><h5>
+<a name="id480308"></a>
+ Description
+ </h5>
+<p>
+ Returns the type stored at the position of an iterator.
+ </p>
+<a name="fusion.iterator.metafunctions.value_of.synopsis"></a><h5>
+<a name="id480339"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">I</span>
+ <span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">value_of</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id480438"></a><p class="title"><b>Table 1.11. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">I</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.iterator.metafunctions.value_of.expression_semantics"></a><h5>
+<a name="id480539"></a>
+ <a href="value_of.html#fusion.iterator.metafunctions.value_of.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<pre class="programlisting">
+result_of::value_of<span class="special">&lt;</span><span class="identifier">I</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Any type
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the type stored in
+ a sequence at iterator position <tt class="computeroutput"><span class="identifier">I</span></tt>.
+ </p>
+<p>
+ /iterator/value_of.hpp&gt;
+ </p>
+<a name="fusion.iterator.metafunctions.value_of.example"></a><h5>
+<a name="id480658"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&amp;,</span><span class="keyword">const</span> <span class="keyword">int</span><span class="special">&amp;&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::begin<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">first</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::next<span class="special">&lt;</span><span class="identifier">first</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">second</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::next<span class="special">&lt;</span><span class="identifier">second</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">third</span><span class="special">;</span>
+
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span>result_of::value_of<span class="special">&lt;</span><span class="identifier">first</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;));</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span>result_of::value_of<span class="special">&lt;</span><span class="identifier">second</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&amp;&gt;));</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span>result_of::value_of<span class="special">&lt;</span><span class="identifier">third</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">const</span> <span class="keyword">int</span><span class="special">&amp;&gt;));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="deref.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/operator.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/operator.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,52 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Operator</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../iterator.html" title="Iterator">
+<link rel="prev" href="functions/advance_c.html" title="advance_c">
+<link rel="next" href="operator/operator_unary_star.html" title=" Operator
+ *">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/advance_c.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../iterator.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="operator/operator_unary_star.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.iterator.operator"></a>Operator</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section"><a href="operator/operator_unary_star.html"> Operator
+ *</a></span></dt>
+<dt><span class="section"><a href="operator/operator_equality.html"> Operator
+ ==</a></span></dt>
+<dt><span class="section"><a href="operator/operator_inequality.html"> Operator
+ !=</a></span></dt>
+</dl></div>
+<p>
+ Overloaded operators are provided to provide a more natural syntax for dereferencing
+ iterators, and comparing them for equality.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/advance_c.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../iterator.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="operator/operator_unary_star.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/operator/operator_equality.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/operator/operator_equality.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,125 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title> Operator
+ ==</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../operator.html" title="Operator">
+<link rel="prev" href="operator_unary_star.html" title=" Operator
+ *">
+<link rel="next" href="operator_inequality.html" title=" Operator
+ !=">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="operator_unary_star.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../operator.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="operator_inequality.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.operator.operator_equality"></a><a href="operator_equality.html" title=" Operator
+ =="> Operator
+ ==</a></h4></div></div></div>
+<a name="fusion.iterator.operator.operator_equality.description"></a><h5>
+<a name="id479314"></a>
+ Description
+ </h5>
+<p>
+ Compares 2 iterators for equality.
+ </p>
+<a name="fusion.iterator.operator.operator_equality.synopsis"></a><h5>
+<a name="id479345"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">I</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">J</span>
+ <span class="special">&gt;</span>
+<span class="emphasis"><em>unspecified</em></span> <span class="keyword">operator</span><span class="special">==(</span><span class="identifier">I</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">i</span><span class="special">,</span> <span class="identifier">J</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">i</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id479487"></a><p class="title"><b>Table 1.9. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">i</span></tt>, <tt class="computeroutput"><span class="identifier">j</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any fusion iterators
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's arguments
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.iterator.operator.operator_equality.expression_semantics"></a><h5>
+<a name="id479591"></a>
+ <a href="operator_equality.html#fusion.iterator.operator.operator_equality.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<pre class="programlisting">
+<span class="identifier">i</span> <span class="special">==</span> <span class="identifier">j</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Equivalent to <tt class="computeroutput">result_of::equal_to<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span><span class="identifier">J</span><span class="special">&gt;::</span><span class="identifier">value</span></tt>
+ where <tt class="computeroutput"><span class="identifier">I</span></tt> and <tt class="computeroutput"><span class="identifier">J</span></tt> are the types of <tt class="computeroutput"><span class="identifier">i</span></tt>
+ and <tt class="computeroutput"><span class="identifier">j</span></tt> respectively.
+ </p>
+<p>
+ /iterator/equal_to.hpp&gt;
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="operator_unary_star.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../operator.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="operator_inequality.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/operator/operator_inequality.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/operator/operator_inequality.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,121 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title> Operator
+ !=</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../operator.html" title="Operator">
+<link rel="prev" href="operator_equality.html" title=" Operator
+ ==">
+<link rel="next" href="../metafunctions.html" title="Metafunctions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="operator_equality.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../operator.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.operator.operator_inequality"></a><a href="operator_inequality.html" title=" Operator
+ !="> Operator
+ !=</a></h4></div></div></div>
+<a name="fusion.iterator.operator.operator_inequality.description"></a><h5>
+<a name="id479809"></a>
+ Description
+ </h5>
+<p>
+ Compares 2 iterators for inequality.
+ </p>
+<a name="fusion.iterator.operator.operator_inequality.synopsis"></a><h5>
+<a name="id479842"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">I</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">J</span>
+ <span class="special">&gt;</span>
+<span class="emphasis"><em>unspecified</em></span> <span class="keyword">operator</span><span class="special">==(</span><span class="identifier">I</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">i</span><span class="special">,</span> <span class="identifier">J</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">i</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id479985"></a><p class="title"><b>Table 1.10. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">i</span></tt>, <tt class="computeroutput"><span class="identifier">j</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any fusion iterators
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's arguments
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.iterator.operator.operator_inequality.expression_semantics"></a><h5>
+<a name="id480091"></a>
+ <a href="operator_inequality.html#fusion.iterator.operator.operator_inequality.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<p>
+ <span class="bold"><b>Return type</b></span>: Convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Equivalent to <tt class="computeroutput"><span class="special">!</span>result_of::equal_to<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span><span class="identifier">J</span><span class="special">&gt;::</span><span class="identifier">value</span></tt>
+ where <tt class="computeroutput"><span class="identifier">I</span></tt> and <tt class="computeroutput"><span class="identifier">J</span></tt> are the types of <tt class="computeroutput"><span class="identifier">i</span></tt>
+ and <tt class="computeroutput"><span class="identifier">j</span></tt> respectively.
+ </p>
+<p>
+ /iterator/equal_to.hpp&gt;
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="operator_equality.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../operator.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/iterator/operator/operator_unary_star.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/iterator/operator/operator_unary_star.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,137 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title> Operator
+ *</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../operator.html" title="Operator">
+<link rel="prev" href="../operator.html" title="Operator">
+<link rel="next" href="operator_equality.html" title=" Operator
+ ==">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../operator.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../operator.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="operator_equality.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.iterator.operator.operator_unary_star"></a><a href="operator_unary_star.html" title=" Operator
+ *"> Operator
+ *</a></h4></div></div></div>
+<a name="fusion.iterator.operator.operator_unary_star.description"></a><h5>
+<a name="id478483"></a>
+ Description
+ </h5>
+<p>
+ Dereferences an iterator.
+ </p>
+<a name="fusion.iterator.operator.operator_unary_star.synopsis"></a><h5>
+<a name="id478516"></a>
+ Synopsis
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">I</span>
+ <span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::deref<span class="special">&lt;</span><span class="identifier">I</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="keyword">operator</span><span class="special">*(</span><span class="emphasis"><em>unspecified</em></span><span class="special">&lt;</span><span class="identifier">I</span><span class="special">&gt;</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">i</span><span class="special">);</span>
+</pre>
+<div class="table">
+<a name="id478675"></a><p class="title"><b>Table 1.8. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">i</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Operation's argument
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.iterator.operator.operator_unary_star.expression_semantics"></a><h5>
+<a name="id478777"></a>
+ <a href="operator_unary_star.html#fusion.iterator.operator.operator_unary_star.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<pre class="programlisting">
+<span class="special">*</span><span class="identifier">i</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Equivalent to the return
+ type of <tt class="computeroutput">deref<span class="special">(</span><span class="identifier">i</span><span class="special">)</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Equivalent to <tt class="computeroutput">deref<span class="special">(</span><span class="identifier">i</span><span class="special">)</span></tt>.
+ </p>
+<p>
+ /iterator/deref.hpp&gt;
+ </p>
+<a name="fusion.iterator.operator.operator_unary_star.example"></a><h5>
+<a name="id478923"></a>
+ Example
+ </h5>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&amp;&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+
+<span class="keyword">int</span> <span class="identifier">i</span><span class="special">(</span><span class="number">0</span><span class="special">);</span>
+<span class="identifier">vec</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="identifier">i</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(*</span>begin<span class="special">(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">==</span> <span class="number">1</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(*</span>next<span class="special">(</span>begin<span class="special">(</span><span class="identifier">v</span><span class="special">))</span> <span class="special">==</span> <span class="number">0</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(&amp;(*</span>next<span class="special">(</span>begin<span class="special">(</span><span class="identifier">v</span><span class="special">)))</span> <span class="special">==</span> <span class="special">&amp;</span><span class="identifier">i</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../operator.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../operator.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="operator_equality.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/notes.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/notes.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,258 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Notes</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="functional/generation/metafunctions/mk_unfused_rvargs.html" title="
+ make_unfused_rvalue_args">
+<link rel="next" href="change_log.html" title="Change log">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functional/generation/metafunctions/mk_unfused_rvargs.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="change_log.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.notes"></a>Notes</h2></div></div></div>
+<a name="fusion.notes.recursive_inlined_functions"></a><h3>
+<a name="id682036"></a>
+ <a href="notes.html#fusion.notes.recursive_inlined_functions">Recursive Inlined
+ Functions</a>
+ </h3>
+<p>
+ An interesting peculiarity of functions like at when applied to a <a href="sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a> like list
+ is that what could have been linear runtime complexity effectively becomes
+ constant O(1) due to compiler optimization of C++ inlined functions, however
+ deeply recursive (up to a certain compiler limit of course). Compile time complexity
+ remains linear.
+ </p>
+<a name="fusion.notes.overloaded_functions"></a><h3>
+<a name="id682111"></a>
+ Overloaded Functions
+ </h3>
+<p>
+ Associative sequences use function overloading to implement membership testing
+ and type associated key lookup. This amounts to constant runtime and amortized
+ constant compile time complexities. There is an overloaded function, <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">k</span><span class="special">)</span></tt>, for each key <span class="emphasis"><em>type</em></span> <tt class="computeroutput"><span class="identifier">k</span></tt>. The compiler chooses the appropriate function
+ given a key, <tt class="computeroutput"><span class="identifier">k</span></tt>.
+ </p>
+<a name="fusion.notes.tag_dispatching"></a><h3>
+<a name="id682195"></a>
+ Tag Dispatching
+ </h3>
+<p>
+ Tag dispatching is a generic programming technique for selecting template specializations.
+ There are typically 3 components involved in the tag dispatching mechanism:
+ </p>
+<div class="orderedlist"><ol type="1">
+<li>
+ A type for which an appropriate template specialization is required
+ </li>
+<li>
+ A metafunction that associates the type with a tag type
+ </li>
+<li>
+ A template that is specialized for the tag type
+ </li>
+</ol></div>
+<p>
+ For example, the fusion <tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span></tt> metafunction
+ is implemented as follows:
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">begin</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">typename</span>
+ <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin_impl</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span>
+ <span class="keyword">template</span> <span class="identifier">apply</span><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+ <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<p>
+ In the case:
+ </p>
+<div class="orderedlist"><ol type="1">
+<li>
+<tt class="computeroutput"><span class="identifier">Sequence</span></tt> is the type for
+ which a suitable implementation of <tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin_impl</span></tt>
+ is required
+ </li>
+<li>
+<tt class="computeroutput"><span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span></tt> is the metafunction that associates
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt> with an appropriate
+ tag
+ </li>
+<li>
+<tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin_impl</span></tt> is the template which is specialized
+ to provide an implementation for each tag type
+ </li>
+</ol></div>
+<a name="fusion.notes.extensibility"></a><h3>
+<a name="id682579"></a>
+ Extensibility
+ </h3>
+<p>
+ Unlike MPL, there
+ is no extensibe sequence concept in fusion. This does not mean that Fusion
+ sequences are not extensible. In fact, all Fusion sequences are inherently
+ extensible. It is just that the manner of sequence extension in Fusion is diferent
+ from both STL
+ and MPL on account
+ of the lazy nature of fusion Algorithms.
+ STL
+ containers extend themselves in place though member functions such as push_back and insert. MPL
+ sequences, on the other hand, are extended through "intrinsic" functions
+ that actually return whole sequences. MPL
+ is purely functional and can not have side effects. For example, MPL's
+ <tt class="computeroutput"><span class="identifier">push_back</span></tt> does not actually
+ mutate an <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">vector</span></tt>. It can't do that. Instead, it returns
+ an extended <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">vector</span></tt>.
+ </p>
+<p>
+ Like MPL, Fusion
+ too is purely functional and can not have side effects. With runtime efficiency
+ in mind, Fusion sequences are extended through generic functions that return
+ Views. Views
+ are sequences that do not actually contain data, but instead impart an alternative
+ presentation over the data from one or more underlying sequences. Views
+ are proxies. They provide an efficient yet purely functional way to work on
+ potentially expensive sequence operations. For example, given a vector, Fusion's push_back returns a joint_view, instead of an actual extended
+ vector.
+ A joint_view
+ holds a reference to the original sequence plus the appended data --making
+ it very cheap to pass around.
+ </p>
+<a name="fusion.notes.element_conversion"></a><h3>
+<a name="id682898"></a>
+ Element Conversion
+ </h3>
+<p>
+ Functions that take in elemental values to form sequences (e.g. make_list) convert their arguments
+ to something suitable to be stored as a sequence element. In general, the element
+ types are stored as plain values. Example:
+ </p>
+<pre class="programlisting">
+make_list<span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'x'</span><span class="special">)</span>
+</pre>
+<p>
+ returns a list<tt class="computeroutput"><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span>
+ <span class="keyword">char</span><span class="special">&gt;</span></tt>.
+ </p>
+<p>
+ There are a few exceptions, however.
+ </p>
+<p>
+ <span class="bold"><b>Arrays:</b></span>
+ </p>
+<p>
+ Array arguments are deduced to reference to const types. For example
+ <sup>[<a name="id683057" href="#ftn.id683057">14</a>]</sup>
+ :
+ </p>
+<pre class="programlisting">
+make_list<span class="special">(</span><span class="string">"Donald"</span><span class="special">,</span> <span class="string">"Daisy"</span><span class="special">)</span>
+</pre>
+<p>
+ creates a list
+ of type
+ </p>
+<pre class="programlisting">
+list<span class="special">&lt;</span><span class="keyword">const</span> <span class="keyword">char</span> <span class="special">(&amp;)[</span><span class="number">7</span><span class="special">],</span> <span class="keyword">const</span> <span class="keyword">char</span> <span class="special">(&amp;)[</span><span class="number">6</span><span class="special">]&gt;</span>
+</pre>
+<p>
+ <span class="bold"><b>Function pointers:</b></span>
+ </p>
+<p>
+ Function pointers are deduced to the plain non-reference type (i.e. to plain
+ function pointer). Example:
+ </p>
+<pre class="programlisting">
+<span class="keyword">void</span> <span class="identifier">f</span><span class="special">(</span><span class="keyword">int</span> <span class="identifier">i</span><span class="special">);</span>
+ <span class="special">...</span>
+make_list<span class="special">(&amp;</span><span class="identifier">f</span><span class="special">);</span>
+</pre>
+<p>
+ creates a list
+ of type
+ </p>
+<pre class="programlisting">
+list<span class="special">&lt;</span><span class="keyword">void</span> <span class="special">(*)(</span><span class="keyword">int</span><span class="special">)&gt;</span>
+</pre>
+<a name="fusion.notes.boost__ref"></a><h3>
+<a name="id683492"></a>
+ boost::ref
+ </h3>
+<p>
+ Fusion's generation functions (e.g. make_list) by default stores the element
+ types as plain non-reference types. Example:
+ </p>
+<pre class="programlisting">
+<span class="keyword">void</span> <span class="identifier">foo</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">A</span><span class="special">&amp;</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">B</span><span class="special">&amp;</span> <span class="identifier">b</span><span class="special">)</span> <span class="special">{</span>
+ <span class="special">...</span>
+ make_list<span class="special">(</span><span class="identifier">a</span><span class="special">,</span> <span class="identifier">b</span><span class="special">)</span>
+</pre>
+<p>
+ creates a list
+ of type
+ </p>
+<pre class="programlisting">
+list<span class="special">&lt;</span><span class="identifier">A</span><span class="special">,</span> <span class="identifier">B</span><span class="special">&gt;</span>
+</pre>
+<p>
+ Sometimes the plain non-reference type is not desired. You can use <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">ref</span></tt>
+ and <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">cref</span></tt> to store references or const references
+ (respectively) instead. The mechanism does not compromise const correctness
+ since a const object wrapped with ref results in a tuple element with const
+ reference type (see the fifth code line below). Examples:
+ </p>
+<p>
+ For example:
+ </p>
+<pre class="programlisting">
+<span class="identifier">A</span> <span class="identifier">a</span><span class="special">;</span> <span class="identifier">B</span> <span class="identifier">b</span><span class="special">;</span> <span class="keyword">const</span> <span class="identifier">A</span> <span class="identifier">ca</span> <span class="special">=</span> <span class="identifier">a</span><span class="special">;</span>
+make_list<span class="special">(</span><span class="identifier">cref</span><span class="special">(</span><span class="identifier">a</span><span class="special">),</span> <span class="identifier">b</span><span class="special">);</span> <span class="comment">// creates list&lt;const A&amp;, B&gt;
+</span>make_list<span class="special">(</span><span class="identifier">ref</span><span class="special">(</span><span class="identifier">a</span><span class="special">),</span> <span class="identifier">b</span><span class="special">);</span> <span class="comment">// creates list&lt;A&amp;, B&gt;
+</span>make_list<span class="special">(</span><span class="identifier">ref</span><span class="special">(</span><span class="identifier">a</span><span class="special">),</span> <span class="identifier">cref</span><span class="special">(</span><span class="identifier">b</span><span class="special">));</span> <span class="comment">// creates list&lt;A&amp;, const B&amp;&gt;
+</span>make_list<span class="special">(</span><span class="identifier">cref</span><span class="special">(</span><span class="identifier">ca</span><span class="special">));</span> <span class="comment">// creates list&lt;const A&amp;&gt;
+</span>make_list<span class="special">(</span><span class="identifier">ref</span><span class="special">(</span><span class="identifier">ca</span><span class="special">));</span> <span class="comment">// creates list&lt;const A&amp;&gt;
+</span></pre>
+<p>
+ See Boost.Ref for
+ details.
+ </p>
+<div class="footnotes">
+<br><hr width="100" align="left">
+<div class="footnote"><p><sup>[<a name="ftn.id683057" href="#id683057">14</a>] </sup>
+ Note that the type of a string literal is an array of const characters,
+ not <tt class="computeroutput"><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span></tt>. To get make_list to create a list with an element of a non-const
+ array type one must use the <tt class="computeroutput"><span class="identifier">ref</span></tt>
+ wrapper (see boost::ref).
+ </p></div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functional/generation/metafunctions/mk_unfused_rvargs.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="change_log.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/organization.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/organization.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,225 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Organization</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="quick_start.html" title="Quick Start">
+<link rel="next" href="support.html" title="Support">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="quick_start.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="support.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.organization"></a>Organization</h2></div></div></div>
+<p>
+ The library is organized into layers of modules, with each module addressing
+ a particular area of responsibility. A module may not depend on modules in
+ higher layers.
+ </p>
+<p>
+ The library is organized in three layers:
+ </p>
+<a name="fusion.organization.layers"></a><h3>
+<a name="id458976"></a>
+ Layers
+ </h3>
+<div class="blockquote"><blockquote class="blockquote">
+<p>
+ </p>
+<p>
+ <span class="inlinemediaobject"><img src="../images/fusion_org.png" alt="fusion_org"></span>
+ </p>
+<p>
+ </p>
+</blockquote></div>
+<p>
+ The entire library is found in the "boost/fusion" directory. Modules
+ are organized in directories. Each module has its own header file placed in
+ the same directory with the actual module-directory. For example, there exists
+ "boost/fusion/support.hpp" in the same directory as "boost/fusion/support".
+ Everything, except those found inside "detail" directories, is public.
+ </p>
+<p>
+ There is also a "boost/fusion<span class="emphasis"><em>include</em></span>" directory
+ that contains all the headers to all the components and modules. If you are
+ unsure where to find a specific component or module, or don't want to fuss
+ with hierarchy and nesting, use this.
+ </p>
+<p>
+ The library is header-only. There is no need to build object files to link
+ against.
+ </p>
+<a name="fusion.organization.directory"></a><h3>
+<a name="id459042"></a>
+ Directory
+ </h3>
+<div class="itemizedlist"><ul type="disc">
+<li>
+ tuple
+ </li>
+<li>
+ algorithm
+ <div class="itemizedlist"><ul type="circle">
+<li>
+ iteration
+ </li>
+<li>
+ query
+ </li>
+<li>
+ transformation
+ </li>
+</ul></div>
+</li>
+<li>
+ adapted
+ <div class="itemizedlist"><ul type="circle">
+<li>
+ array
+ </li>
+<li>
+ mpl
+ </li>
+<li>
+ boost::tuple
+ </li>
+<li>
+ std_pair
+ </li>
+<li>
+ struct
+ </li>
+<li>
+ variant
+ </li>
+</ul></div>
+</li>
+<li>
+ view
+ <div class="itemizedlist"><ul type="circle">
+<li>
+ filter_view
+ </li>
+<li>
+ iterator_range
+ </li>
+<li>
+ joint_view
+ </li>
+<li>
+ reverse_view
+ </li>
+<li>
+ single_view
+ </li>
+<li>
+ transform_view
+ </li>
+<li>
+ zip_view
+ </li>
+</ul></div>
+</li>
+<li>
+ container
+ <div class="itemizedlist"><ul type="circle">
+<li>
+ deque
+ </li>
+<li>
+ list
+ </li>
+<li>
+ map
+ </li>
+<li>
+ set
+ </li>
+<li>
+ vector
+ </li>
+<li>
+ generation
+ </li>
+</ul></div>
+</li>
+<li>
+ mpl
+ </li>
+<li>
+ functional
+ </li>
+<li>
+ sequence
+ <div class="itemizedlist"><ul type="circle">
+<li>
+ comparison
+ </li>
+<li>
+ intrinsic
+ </li>
+<li>
+ io
+ </li>
+</ul></div>
+</li>
+<li>
+ iterator
+ </li>
+<li>
+ support
+ </li>
+</ul></div>
+<a name="fusion.organization.example"></a><h3>
+<a name="id459222"></a>
+ Example
+ </h3>
+<p>
+ If, for example, you want to use <tt class="computeroutput"><span class="identifier">list</span></tt>,
+ depending on the granularity that you desire, you may do so by including one
+ of
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">container</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">container</span><span class="special">/</span><span class="identifier">list</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">list</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<p>
+ The first includes all containers The second includes only <tt class="computeroutput"><span class="identifier">list</span></tt>
+ <sup>[<a name="id459518" href="#ftn.id459518">3</a>]</sup>
+ .
+ </p>
+<div class="footnotes">
+<br><hr width="100" align="left">
+<div class="footnote"><p><sup>[<a name="ftn.id459518" href="#id459518">3</a>] </sup>
+ Modules may contain smaller components. Header file information for each
+ component will be provided as part of the component's documentation.
+ </p></div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="quick_start.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="support.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/preface.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/preface.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,226 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Preface</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="next" href="introduction.html" title="Introduction">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../index.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="introduction.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.preface"></a>Preface</h2></div></div></div>
+<div class="blockquote"><blockquote class="blockquote">
+<p>
+ </p>
+<p>
+ <span class="emphasis"><em>&#8220;<span class="quote">Algorithms + Data Structures = Programs.</span>&#8221;</em></span>
+ </p>
+<p>
+ </p>
+</blockquote></div>
+<div class="blockquote"><blockquote class="blockquote">
+<p>
+ </p>
+<p>
+ <span class="bold"><b>--Niklaus Wirth</b></span>
+ </p>
+<p>
+ </p>
+</blockquote></div>
+<a name="fusion.preface.description"></a><h3>
+<a name="id387620"></a>
+ Description
+ </h3>
+<p>
+ Fusion is a library for working with heterogenous collections of data, commonly
+ referred to as tuples. A set of containers (vector, list, set and map) is provided,
+ along with views that provide a transformed presentation of their underlying
+ data. Collectively the containers and views are referred to as sequences, and
+ Fusion has a suite of algorithms that operate upon the various sequence types,
+ using an iterator concept that binds everything together.
+ </p>
+<p>
+ The architecture is modeled after MPL
+ which in turn is modeled after STL.
+ It is named "fusion" because the library is a "fusion"
+ of compile time metaprogramming with runtime programming.
+ </p>
+<a name="fusion.preface.motivation"></a><h3>
+<a name="id385759"></a>
+ Motivation
+ </h3>
+<p>
+ Tuples are powerful beasts. After having developed two significant projects
+ (Spirit and Phoenix)
+ that relied heavily metaprogramming, it became apparent that tuples are a powerful
+ means to simplify otherwise tricky tasks; especially those that require a combination
+ of metaprogramming and manipulation of heterogenous data types with values.
+ While MPL is
+ an extremely powerful metaprogramming tool, MPL
+ focuses on type manipulation only. Ultimately, you'll have to map these types
+ to real values to make them useful in the runtime world where all the real
+ action takes place.
+ </p>
+<p>
+ As Spirit and Phoenix
+ evolved, patterns and idioms related to tuple manipulation emerged. Soon, it
+ became clear that those patterns and idioms were best assembled in a tuples
+ algorithms library. <a href="http://www.boost.org/people/dave_abrahams.htm" target="_top">David
+ Abrahams</a> outlined such a scheme in 2002. At that time, it just so happened
+ that Spirit and Phoenix
+ had an adhoc collection of tuple manipulation and traversal routines. It was
+ an instant <span class="emphasis"><em>AHA!</em></span> moment.
+ </p>
+<a name="fusion.preface.how_to_use_this_manual"></a><h3>
+<a name="id386557"></a>
+ How to use this manual
+ </h3>
+<p>
+ Some icons are used to mark certain topics indicative of their relevance. These
+ icons precede some text to indicate:
+ </p>
+<div class="table">
+<a name="id386085"></a><p class="title"><b>Table 1.1. Icons</b></p>
+<table class="table" summary="Icons">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Icon
+ </p>
+ </th>
+<th>
+ <p>
+ Name
+ </p>
+ </th>
+<th>
+ <p>
+ Meaning
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <span class="inlinemediaobject"><img src="../images/note.png" alt="note"></span>
+ </p>
+ </td>
+<td>
+ <p>
+ Note
+ </p>
+ </td>
+<td>
+ <p>
+ Information provided is auxiliary but will give the reader a deeper insight
+ into a specific topic. May be skipped.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <span class="inlinemediaobject"><img src="../images/alert.png" alt="alert"></span>
+ </p>
+ </td>
+<td>
+ <p>
+ Alert
+ </p>
+ </td>
+<td>
+ <p>
+ Information provided is of utmost importance.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <span class="inlinemediaobject"><img src="../images/caution.png" alt="caution"></span>
+ </p>
+ </td>
+<td>
+ <p>
+ Caution
+ </p>
+ </td>
+<td>
+ <p>
+ A mild warning.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <span class="inlinemediaobject"><img src="../images/tip.png" alt="tip"></span>
+ </p>
+ </td>
+<td>
+ <p>
+ Tip
+ </p>
+ </td>
+<td>
+ <p>
+ A potentially useful and helpful piece of information.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<p>
+ This documentation is automatically generated by Boost QuickBook documentation
+ tool. QuickBook can be found in the <a href="http://www.boost.org/tools/index.html" target="_top">Boost
+ Tools</a>.
+ </p>
+<a name="fusion.preface.support"></a><h3>
+<a name="id386314"></a>
+ Support
+ </h3>
+<p>
+ Please direct all questions to Spirit's mailing list. You can subscribe to
+ the <a href="https://lists.sourceforge.net/lists/listinfo/spirit-general" target="_top">Spirit
+ Mailing List</a>. The mailing list has a searchable archive. A search link
+ to this archive is provided in Spirit's
+ home page. You may also read and post messages to the mailing list through
+ <a href="news://news.gmane.org/gmane.comp.spirit.general" target="_top">Spirit General
+ NNTP news portal</a> (thanks to Gmane).
+ The news group mirrors the mailing list. Here is a link to the archives: http://news.gmane.org/gmane.comp.parsers.spirit.general.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../index.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="introduction.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/quick_start.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/quick_start.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,263 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Quick Start</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="introduction.html" title="Introduction">
+<link rel="next" href="organization.html" title="Organization">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="introduction.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="organization.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.quick_start"></a>Quick Start</h2></div></div></div>
+<p>
+ I assume the reader is already familiar with tuples (Boost.Tuple)
+ and its ancestor <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></tt>. The tuple is a generalization of <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></tt>
+ for multiple heterogeneous elements (triples, quadruples, etc.). The tuple
+ is more or less a synonym for fusion's <tt class="computeroutput">vector</tt>.
+ </p>
+<p>
+ For starters, we shall include all of Fusion's Sequence(s)
+ <sup>[<a name="id456177" href="#ftn.id456177">1</a>]</sup>
+ :
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<p>
+ Let's begin with a <tt class="computeroutput">vector</tt>
+ <sup>[<a name="id456344" href="#ftn.id456344">2</a>]</sup>
+ :
+ </p>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;</span> <span class="identifier">stuff</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'x'</span><span class="special">,</span> <span class="string">"howdy"</span><span class="special">);</span>
+<span class="keyword">int</span> <span class="identifier">i</span> <span class="special">=</span> at_c<span class="special">&lt;</span><span class="number">0</span><span class="special">&gt;(</span><span class="identifier">stuff</span><span class="special">);</span>
+<span class="keyword">char</span> <span class="identifier">ch</span> <span class="special">=</span> at_c<span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;(</span><span class="identifier">stuff</span><span class="special">);</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">s</span> <span class="special">=</span> at_c<span class="special">&lt;</span><span class="number">2</span><span class="special">&gt;(</span><span class="identifier">stuff</span><span class="special">);</span>
+</pre>
+<p>
+ Just replace <tt class="computeroutput"><span class="identifier">tuple</span></tt> for <tt class="computeroutput">vector</tt>
+ and <tt class="computeroutput"><span class="identifier">get</span></tt> for <tt class="computeroutput">at_c</tt> and this is exactly like
+ Boost.Tuple.
+ Actually, either names can be used interchangeably. Yet, the similarity ends
+ there. You can do a lot more with Fusion <tt class="computeroutput">vector</tt> or <tt class="computeroutput"><span class="identifier">tuple</span></tt>.
+ Let's see some examples.
+ </p>
+<a name="fusion.quick_start.print_the_vector_as_xml"></a><h3>
+<a name="id456807"></a>
+ <a href="quick_start.html#fusion.quick_start.print_the_vector_as_xml">Print the vector
+ as XML</a>
+ </h3>
+<p>
+ First, let's include the algorithms:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">algorithm</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<p>
+ Now, let's write a function object that prints XML of the form &lt;type&gt;data&lt;/type&gt;
+ for each member in the tuple.
+ </p>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">print_xml</span>
+<span class="special">{</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">void</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">T</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">x</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span>
+ <span class="special">&lt;&lt;</span> <span class="char">'&lt;'</span> <span class="special">&lt;&lt;</span> <span class="keyword">typeid</span><span class="special">(</span><span class="identifier">x</span><span class="special">).</span><span class="identifier">name</span><span class="special">()</span> <span class="special">&lt;&lt;</span> <span class="char">'&gt;'</span>
+ <span class="special">&lt;&lt;</span> <span class="identifier">x</span>
+ <span class="special">&lt;&lt;</span> <span class="string">"&lt;/"</span> <span class="special">&lt;&lt;</span> <span class="keyword">typeid</span><span class="special">(</span><span class="identifier">x</span><span class="special">).</span><span class="identifier">name</span><span class="special">()</span> <span class="special">&lt;&lt;</span> <span class="char">'&gt;'</span>
+ <span class="special">;</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+</pre>
+<p>
+ Now, finally:
+ </p>
+<pre class="programlisting">
+for_each<span class="special">(</span><span class="identifier">stuff</span><span class="special">,</span> <span class="identifier">print_xml</span><span class="special">());</span>
+</pre>
+<p>
+ That's it! <tt class="computeroutput">for_each</tt> is a fusion algorithm.
+ It is a generic algorithm similar to STL's.
+ It iterates over the sequence and calls a user supplied function. In our case,
+ it calls <tt class="computeroutput"><span class="identifier">print_xml</span></tt>'s <tt class="computeroutput"><span class="keyword">operator</span><span class="special">()</span></tt> for
+ each element in <tt class="computeroutput"><span class="identifier">stuff</span></tt>.
+ </p>
+<div class="caution"><table border="0" summary="Caution">
+<tr>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Caution]" src="../../../../../doc/html/images/caution.png"></td>
+<th align="left">Caution</th>
+</tr>
+<tr><td colspan="2" align="left" valign="top"><p>
+ The result of <tt class="computeroutput"><span class="keyword">typeid</span><span class="special">(</span><span class="identifier">x</span><span class="special">).</span><span class="identifier">name</span><span class="special">()</span></tt> is platform specific. The code here is
+ just for exposition. Of course you already know that :-)
+ </p></td></tr>
+</table></div>
+<p>
+ <tt class="computeroutput">for_each</tt> is generic. With
+ <tt class="computeroutput"><span class="identifier">print_xml</span></tt>, you can use it to
+ print just about any Fusion Sequence.
+ </p>
+<a name="fusion.quick_start.print_only_pointers"></a><h3>
+<a name="id457465"></a>
+ Print only pointers
+ </h3>
+<p>
+ Let's get a little cleverer. Say we wish to write a <span class="emphasis"><em>generic</em></span>
+ function that takes in an arbitrary sequence and XML prints only those elements
+ which are pointers. Ah, easy. First, let's include the <tt class="computeroutput"><span class="identifier">is_pointer</span></tt>
+ boost type trait:
+ </p>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">type_traits</span><span class="special">/</span><span class="identifier">is_pointer</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<p>
+ Then, simply:
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">void</span> <span class="identifier">xml_print_pointers</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">)</span>
+<span class="special">{</span>
+ for_each<span class="special">(</span>filter_if<span class="special">&lt;</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_pointer</span><span class="special">&lt;</span><span class="identifier">_</span><span class="special">&gt;</span> <span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">),</span> <span class="identifier">print_xml</span><span class="special">());</span>
+<span class="special">}</span>
+</pre>
+<p>
+ <tt class="computeroutput">filter_if</tt> is another Fusion
+ algorithm. It returns a filter_view, a conforming Fusion sequence.
+ This view reflects only those elements that pass the given predicate. In this
+ case, the predicate is <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_pointer</span><span class="special">&lt;</span><span class="identifier">_</span><span class="special">&gt;</span></tt>.
+ This "filtered view" is then passed to the for_each algorithm, which then prints
+ the "filtered view" as XML.
+ </p>
+<p>
+ Easy, right?
+ </p>
+<a name="fusion.quick_start.associative_tuples"></a><h3>
+<a name="id457875"></a>
+ Associative tuples
+ </h3>
+<p>
+ Ok, moving on...
+ </p>
+<p>
+ Apart from <tt class="computeroutput">vector</tt>,
+ fusion has a couple of other sequence types to choose from. Each sequence has
+ its own characteristics. We have <tt class="computeroutput">list</tt>, <tt class="computeroutput">set</tt>, <tt class="computeroutput">map</tt>, plus a multitude of <tt class="computeroutput"><span class="identifier">views</span></tt> that provide various ways to present
+ the sequences.
+ </p>
+<p>
+ Fusion's <tt class="computeroutput">map</tt>
+ associate types with elements. It can be used as a cleverer replacement of
+ the <tt class="computeroutput"><span class="keyword">struct</span></tt>. Example:
+ </p>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">fields</span>
+<span class="special">{</span>
+ <span class="keyword">struct</span> <span class="identifier">name</span><span class="special">;</span>
+ <span class="keyword">struct</span> <span class="identifier">age</span><span class="special">;</span>
+<span class="special">}</span>
+
+<span class="keyword">typedef</span> map<span class="special">&lt;</span>
+ fusion::pair<span class="special">&lt;</span><span class="identifier">fields</span><span class="special">::</span><span class="identifier">name</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;</span>
+ <span class="special">,</span> fusion::pair<span class="special">&lt;</span><span class="identifier">fields</span><span class="special">::</span><span class="identifier">age</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="special">&gt;</span>
+<span class="identifier">person</span><span class="special">;</span>
+</pre>
+<p>
+ <tt class="computeroutput">map</tt>
+ is an associative sequence. Its elements are Fusion pairs which differ somewhat
+ from <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></tt>. Fusion pairs only contain one member,
+ with the type of their second template parameter. The first type parameter
+ of the pair is used as an index to the associated element in the sequence.
+ For example, given a <tt class="computeroutput"><span class="identifier">a_person</span></tt>
+ of type, <tt class="computeroutput"><span class="identifier">person</span></tt>, you can do:
+ </p>
+<pre class="programlisting">
+<span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">fields</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="identifier">person_name</span> <span class="special">=</span> at_key<span class="special">&lt;</span><span class="identifier">name</span><span class="special">&gt;(</span><span class="identifier">a_person</span><span class="special">);</span>
+<span class="keyword">int</span> <span class="identifier">person_age</span> <span class="special">=</span> at_key<span class="special">&lt;</span><span class="identifier">age</span><span class="special">&gt;(</span><span class="identifier">a_person</span><span class="special">);</span>
+</pre>
+<p>
+ Why go through all this trouble, you say? Well, for one, unlike the <tt class="computeroutput"><span class="keyword">struct</span></tt>, we are dealing with a generic data structure.
+ There are a multitude of facilities available at your disposal provided out
+ of the box with fusion or written by others. With these facilities, introspection
+ comes for free, for example. We can write one serialization function (well,
+ two, if you consider loading and saving) that will work for all your fusion
+ <tt class="computeroutput">map</tt>s.
+ Example:
+ </p>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">saver</span>
+<span class="special">{</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Pair</span><span class="special">&gt;</span>
+ <span class="keyword">void</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Pair</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">data</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="identifier">some_archive</span> <span class="special">&lt;&lt;</span> <span class="identifier">data</span><span class="special">.</span><span class="identifier">second</span><span class="special">;</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Stuff</span><span class="special">&gt;</span>
+<span class="keyword">void</span> <span class="identifier">save</span><span class="special">(</span><span class="identifier">Stuff</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">stuff</span><span class="special">)</span>
+<span class="special">{</span>
+ for_each<span class="special">(</span><span class="identifier">stuff</span><span class="special">,</span> <span class="identifier">saver</span><span class="special">());</span>
+<span class="special">}</span>
+</pre>
+<p>
+ The <tt class="computeroutput"><span class="identifier">save</span></tt> function is generic
+ and will work for all types of <tt class="computeroutput"><span class="identifier">stuff</span></tt>
+ regardless if it is a <tt class="computeroutput"><span class="identifier">person</span></tt>,
+ a <tt class="computeroutput"><span class="identifier">dog</span></tt> or a whole <tt class="computeroutput"><span class="identifier">alternate_universe</span></tt>.
+ </p>
+<a name="fusion.quick_start.tip_of_the_iceberg"></a><h3>
+<a name="id458917"></a>
+ Tip of the Iceberg
+ </h3>
+<p>
+ And... we've barely scratched the surface! You can compose and expand the data
+ structures, remove elements from the structures, find specific data types,
+ query the elements, filter out types for inspection, transform data structures,
+ etc. What you've seen is just the tip of the iceberg.
+ </p>
+<div class="footnotes">
+<br><hr width="100" align="left">
+<div class="footnote"><p><sup>[<a name="ftn.id456177" href="#id456177">1</a>] </sup>
+ There are finer grained header files available if you wish to have more
+ control over which components to include (see section Orgainization
+ for details).
+ </p></div>
+<div class="footnote"><p><sup>[<a name="ftn.id456344" href="#id456344">2</a>] </sup>
+ Unless otherwise noted, components are in namespace <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">fusion</span></tt>.
+ For the sake of simplicity, code in this quick start implies <tt class="computeroutput"><span class="keyword">using</span></tt> directives for the fusion components
+ we will be using.
+ </p></div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="introduction.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="organization.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/references.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/references.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,68 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>References</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="acknowledgements.html" title="Acknowledgements">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="acknowledgements.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.references"></a>References</h2></div></div></div>
+<div class="orderedlist"><ol type="1">
+<li>
+<a href="http://boost.org/libs/iterator/doc/new-iter-concepts.html" target="_top">New
+ Iterator Concepts</a>, David Abrahams, Jeremy Siek, Thomas Witt, 2004-11-01.
+ </li>
+<li>
+<a href="http://boost.org/libs/tuple/doc/tuple_users_guide.html" target="_top">The Boost
+ Tuple Library</a>, Jaakko Jarvi, 2001.
+ </li>
+<li>
+Spirit Parser Library,
+ Joel de Guzman, 2001-2006.
+ </li>
+<li>
+The Boost MPL Library,
+ Aleksey Gurtovoy and David Abrahams, 2002-2004.
+ </li>
+<li>
+Boost Array,
+ Nicolai Josuttis, 2002-2004.
+ </li>
+<li>
+<a href="http://www.sgi.com/tech/stl/" target="_top">Standard Template Library Programmer's
+ Guide</a>, Hewlett-Packard Company, 1994.
+ </li>
+<li>
+Boost.Ref, Jaakko
+ Jarvi, Peter Dimov, Douglas Gregor, Dave Abrahams, 1999-2002.
+ </li>
+</ol></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="acknowledgements.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,80 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Sequence</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="iterator/metafunctions/advance_c.html" title="advance_c">
+<link rel="next" href="sequence/concepts.html" title="Concepts">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="iterator/metafunctions/advance_c.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="sequence/concepts.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.sequence"></a>Sequence</h2></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">Concepts</span></dt>
+<dd><dl>
+<dt><span class="section"><a href="sequence/concepts/forward_sequence.html">Forward
+ Sequence</a></span></dt>
+<dt><span class="section"><a href="sequence/concepts/bidirectional_sequence.html">Bidirectional
+ Sequence</a></span></dt>
+<dt><span class="section"><a href="sequence/concepts/random_access_sequence.html">Random
+ Access Sequence</a></span></dt>
+<dt><span class="section"><a href="sequence/concepts/associative_sequence.html">Associative
+ Sequence</a></span></dt>
+</dl></dd>
+<dt><span class="section">Intrinsic</span></dt>
+<dd><dl>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
+</dl></dd>
+<dt><span class="section">Operator</span></dt>
+<dd><dl>
+<dt><span class="section">I/O</span></dt>
+<dt><span class="section">Comparison</span></dt>
+</dl></dd>
+</dl></div>
+<p>
+ Like MPL, the
+ Sequence is a fundamental concept in Fusion. A Sequence may or may not actually
+ store or contain data. Container are
+ sequences that hold data. Views, on the
+ other hand, are sequences that do not store any data. Instead, they are proxies
+ that impart an alternative presentation over another sequence. All models of
+ Sequence have an associated Iterator
+ type that can be used to iterate through the Sequence's elements.
+ </p>
+<a name="fusion.sequence.header"></a><h3>
+<a name="id487383"></a>
+ Header
+ </h3>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="iterator/metafunctions/advance_c.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="sequence/concepts.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/concepts.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/concepts.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,81 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Concepts</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../sequence.html" title="Sequence">
+<link rel="prev" href="../sequence.html" title="Sequence">
+<link rel="next" href="concepts/forward_sequence.html" title="Forward
+ Sequence">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../sequence.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../sequence.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="concepts/forward_sequence.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.sequence.concepts"></a>Concepts</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section"><a href="concepts/forward_sequence.html">Forward
+ Sequence</a></span></dt>
+<dt><span class="section"><a href="concepts/bidirectional_sequence.html">Bidirectional
+ Sequence</a></span></dt>
+<dt><span class="section"><a href="concepts/random_access_sequence.html">Random
+ Access Sequence</a></span></dt>
+<dt><span class="section"><a href="concepts/associative_sequence.html">Associative
+ Sequence</a></span></dt>
+</dl></div>
+<p>
+ Fusion Sequences are organized into a hierarchy of concepts.
+ </p>
+<a name="fusion.sequence.concepts.traversal"></a><h4>
+<a name="id487553"></a>
+ Traversal
+ </h4>
+<p>
+ Fusion's sequence traversal related concepts parallel Fusion's <a href="../iterator/concepts.html" title="Concepts">Iterator
+ Concepts</a>. <a href="concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a> is the most basic concept. <a href="concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a> is a refinement of <a href="concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>. <a href="concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> is a refinement of <a href="concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a>. These concepts pertain to sequence traversal.
+ </p>
+<a name="fusion.sequence.concepts.associativity"></a><h4>
+<a name="id487640"></a>
+ Associativity
+ </h4>
+<p>
+ The <a href="concepts/associative_sequence.html" title="Associative
+ Sequence">Associative
+ Sequence</a> concept is orthogonal to traversal. An Associative Sequence
+ allows efficient retrieval of elements based on keys.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../sequence.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../sequence.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="concepts/forward_sequence.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/concepts/associative_sequence.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/concepts/associative_sequence.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,328 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Associative
+ Sequence</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../concepts.html" title="Concepts">
+<link rel="prev" href="random_access_sequence.html" title="Random
+ Access Sequence">
+<link rel="next" href="../intrinsic.html" title="Intrinsic">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="random_access_sequence.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../intrinsic.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.sequence.concepts.associative_sequence"></a><a href="associative_sequence.html" title="Associative
+ Sequence">Associative
+ Sequence</a></h4></div></div></div>
+<a name="fusion.sequence.concepts.associative_sequence.description"></a><h5>
+<a name="id492949"></a>
+ Description
+ </h5>
+<p>
+ An Associative Sequence allows efficient retrieval of elements based on
+ keys. Like associative sequences in MPL,
+ and unlike associative containers in STL,
+ Fusion associative sequences have no implied ordering relation. Instead,
+ type identity is used to impose an equivalence relation on keys, and the
+ order in which sequence elements are traversed during iteration is left
+ unspecified. In addition, unlike STL,
+ Associative Sequences have mutable iterators. This is due to the fact that
+ there is no associated ordering relation and the runtime value of the keys
+ themselves do not have any effect on the associativity of the sequence.
+ </p>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
+<dd><p>
+ An Associative Sequence
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">S</span></tt></span></dt>
+<dd><p>
+ An Associative Sequence type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">K</span></tt></span></dt>
+<dd><p>
+ An arbitrary <span class="emphasis"><em>key</em></span> type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">o</span></tt></span></dt>
+<dd><p>
+ An arbitrary object
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">e</span></tt></span></dt>
+<dd><p>
+ A Sequence element
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.sequence.concepts.associative_sequence.valid_expressions"></a><h5>
+<a name="id493138"></a>
+ <a href="associative_sequence.html#fusion.sequence.concepts.associative_sequence.valid_expressions">Valid
+ Expressions</a>
+ </h5>
+<p>
+ For any Associative Sequence the following expressions must be valid:
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Return type
+ </p>
+ </th>
+<th>
+ <p>
+ Type Requirements
+ </p>
+ </th>
+<th>
+ <p>
+ Runtime Complexity
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">has_key<span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Boolean Constant</a>. Convertible to bool.
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">at_key<span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">at_key<span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span>
+ <span class="special">=</span> <span class="identifier">o</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">s</span></tt> is mutable and
+ <tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
+ <span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt> is the first element in the
+ sequence, is a valid expression.
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.sequence.concepts.associative_sequence.result_type_expressions"></a><h5>
+<a name="id493523"></a>
+ <a href="associative_sequence.html#fusion.sequence.concepts.associative_sequence.result_type_expressions">Result
+ Type Expressions</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Compile Time Complexity
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::has_key<span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span>
+ <span class="identifier">K</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::at_key<span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span>
+ <span class="identifier">K</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::value_at_key<span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span>
+ <span class="identifier">K</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<div class="sidebar"><p>
+ <span class="inlinemediaobject"><img src="../../../images/note.png" alt="note"></span> <tt class="computeroutput">result_of::at_key<span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">K</span><span class="special">&gt;</span></tt> returns the actual type returned by
+ <tt class="computeroutput">at_key<span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></tt>. In
+ most cases, this is a reference. Hence, there is no way to know the exact
+ element type using <tt class="computeroutput">result_of::at_key<span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">K</span><span class="special">&gt;</span></tt>.The element at <tt class="computeroutput"><span class="identifier">K</span></tt>
+ may actually be a reference to begin with. For this purpose, you can use
+ <tt class="computeroutput">result_of::value_at_key<span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;</span></tt>.
+ </p></div>
+<a name="fusion.sequence.concepts.associative_sequence.expression_semantics"></a><h5>
+<a name="id494098"></a>
+ <a href="associative_sequence.html#fusion.sequence.concepts.associative_sequence.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">has_key<span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A boolean Integral Constant <tt class="computeroutput"><span class="identifier">c</span></tt>
+ such that <tt class="computeroutput"><span class="identifier">c</span><span class="special">::</span><span class="identifier">value</span> <span class="special">==</span>
+ <span class="keyword">true</span></tt> if and only if there
+ is one or more elements with the key <tt class="computeroutput"><span class="identifier">k</span></tt>
+ in <tt class="computeroutput"><span class="identifier">s</span></tt>; see has_key.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">at_key<span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The element associated with the key <tt class="computeroutput"><span class="identifier">K</span></tt>
+ in the sequence <tt class="computeroutput"><span class="identifier">s</span></tt>;
+ see at.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.sequence.concepts.associative_sequence.models"></a><h5>
+<a name="id494420"></a>
+ Models
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>set</li>
+<li>map</li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="random_access_sequence.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../intrinsic.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/concepts/bidirectional_sequence.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/concepts/bidirectional_sequence.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,344 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Bidirectional
+ Sequence</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../concepts.html" title="Concepts">
+<link rel="prev" href="forward_sequence.html" title="Forward
+ Sequence">
+<link rel="next" href="random_access_sequence.html" title="Random
+ Access Sequence">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="forward_sequence.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="random_access_sequence.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.sequence.concepts.bidirectional_sequence"></a><a href="bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a></h4></div></div></div>
+<a name="fusion.sequence.concepts.bidirectional_sequence.description"></a><h5>
+<a name="id489980"></a>
+ Description
+ </h5>
+<p>
+ A Bidirectional Sequence is a <a href="forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a> whose iterators model <a href="../../iterator/concepts/bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a>.
+ </p>
+<a name="fusion.sequence.concepts.bidirectional_sequence.refinement_of"></a><h5>
+<a name="id490030"></a>
+ <a href="bidirectional_sequence.html#fusion.sequence.concepts.bidirectional_sequence.refinement_of">Refinement
+ of</a>
+ </h5>
+<p>
+ <a href="forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a>
+ </p>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
+<dd><p>
+ A Forward Sequence
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">S</span></tt></span></dt>
+<dd><p>
+ A Forward Sequence type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">o</span></tt></span></dt>
+<dd><p>
+ An arbitrary object
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">e</span></tt></span></dt>
+<dd><p>
+ A Sequence element
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.sequence.concepts.bidirectional_sequence.valid_expressions"></a><h5>
+<a name="id490170"></a>
+ <a href="bidirectional_sequence.html#fusion.sequence.concepts.bidirectional_sequence.valid_expressions">Valid
+ Expressions</a>
+ </h5>
+<p>
+ In addition to the requirements defined in <a href="forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>, for any Bidirectional Sequence the following must be met:
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Return type
+ </p>
+ </th>
+<th>
+ <p>
+ Type Requirements
+ </p>
+ </th>
+<th>
+ <p>
+ Runtime Complexity
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">begin<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="../../iterator/concepts/bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">end<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="../../iterator/concepts/bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">back<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">back<span class="special">(</span><span class="identifier">s</span><span class="special">)</span>
+ <span class="special">=</span> <span class="identifier">o</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">s</span></tt> is mutable and
+ <tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
+ <span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt> is the first element in the
+ sequence, is a valid expression.
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.sequence.concepts.bidirectional_sequence.result_type_expressions"></a><h5>
+<a name="id490610"></a>
+ <a href="bidirectional_sequence.html#fusion.sequence.concepts.bidirectional_sequence.result_type_expressions">Result
+ Type Expressions</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Compile Time Complexity
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::begin<span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::end<span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::back<span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.sequence.concepts.bidirectional_sequence.expression_semantics"></a><h5>
+<a name="id490887"></a>
+ <a href="bidirectional_sequence.html#fusion.sequence.concepts.bidirectional_sequence.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<p>
+ The semantics of an expression are defined only where they differ from,
+ or are not defined in <a href="forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput">back<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The last element in the sequence; see back.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.sequence.concepts.bidirectional_sequence.models"></a><h5>
+<a name="id491040"></a>
+ Models
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>std::pair</li>
+<li>boost::array</li>
+<li>vector</li>
+<li>reverse_view</li>
+<li>
+iterator_range
+ (where adapted sequence is a Bidirectional Sequence)
+ </li>
+<li>
+transform_view
+ (where adapted sequence is a Bidirectional Sequence)
+ </li>
+<li>
+zip_view
+ (where adapted sequences are models Bidirectional Sequence)
+ </li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="forward_sequence.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="random_access_sequence.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/concepts/forward_sequence.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/concepts/forward_sequence.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,471 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Forward
+ Sequence</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../concepts.html" title="Concepts">
+<link rel="prev" href="../concepts.html" title="Concepts">
+<link rel="next" href="bidirectional_sequence.html" title="Bidirectional
+ Sequence">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../concepts.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bidirectional_sequence.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.sequence.concepts.forward_sequence"></a><a href="forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a></h4></div></div></div>
+<a name="fusion.sequence.concepts.forward_sequence.description"></a><h5>
+<a name="id487703"></a>
+ Description
+ </h5>
+<p>
+ A Forward Sequence is a Sequence whose elements are arranged in a definite
+ order. The ordering is guaranteed not to change from iteration to iteration.
+ The requirement of a definite ordering allows the definition of element-by-element
+ equality (if the container's element type is Equality Comparable) and of
+ lexicographical ordering (if the container's element type is LessThan Comparable).
+ </p>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
+<dd><p>
+ A Forward Sequence
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">S</span></tt></span></dt>
+<dd><p>
+ A Forward Sequence type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">o</span></tt></span></dt>
+<dd><p>
+ An arbitrary object
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">e</span></tt></span></dt>
+<dd><p>
+ A Sequence element
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.sequence.concepts.forward_sequence.valid_expressions"></a><h5>
+<a name="id487839"></a>
+ <a href="forward_sequence.html#fusion.sequence.concepts.forward_sequence.valid_expressions">Valid
+ Expressions</a>
+ </h5>
+<p>
+ For any Forward Sequence the following expressions must be valid:
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Return type
+ </p>
+ </th>
+<th>
+ <p>
+ Type Requirements
+ </p>
+ </th>
+<th>
+ <p>
+ Runtime Complexity
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">begin<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="../../iterator/concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">end<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="../../iterator/concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">size<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>. Convertible to int.
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">empty<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Boolean Constant</a>. Convertible to bool.
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">front<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">front<span class="special">(</span><span class="identifier">s</span><span class="special">)</span>
+ <span class="special">=</span> <span class="identifier">o</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">s</span></tt> is mutable and
+ <tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
+ <span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt> is the first element in the
+ sequence, is a valid expression.
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.sequence.concepts.forward_sequence.result_type_expressions"></a><h5>
+<a name="id488423"></a>
+ <a href="forward_sequence.html#fusion.sequence.concepts.forward_sequence.result_type_expressions">Result
+ Type Expressions</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Compile Time Complexity
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::begin<span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::end<span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::size<span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Unspecified
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::empty<span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant time
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::front<span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.sequence.concepts.forward_sequence.expression_semantics"></a><h5>
+<a name="id488841"></a>
+ <a href="forward_sequence.html#fusion.sequence.concepts.forward_sequence.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">begin<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An iterator to the first element of the sequence; see begin.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">end<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A past-the-end iterator to the sequence; see end.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">size<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The size of the sequence; see size.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">empty<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A boolean Integral Constant <tt class="computeroutput"><span class="identifier">c</span></tt>
+ such that <tt class="computeroutput"><span class="identifier">c</span><span class="special">::</span><span class="identifier">value</span> <span class="special">==</span>
+ <span class="keyword">true</span></tt> if and only if the
+ sequence is empty; see empty.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">front<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The first element in the sequence; see front.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.sequence.concepts.forward_sequence.invariants"></a><h5>
+<a name="id489310"></a>
+ Invariants
+ </h5>
+<p>
+ For any Forward Sequence s the following invariants always hold:
+ </p>
+<div class="itemizedlist"><ul type="disc">
+<li>
+<tt class="computeroutput"><span class="special">[</span>begin<span class="special">(</span><span class="identifier">s</span><span class="special">),</span> end<span class="special">(</span><span class="identifier">s</span><span class="special">))</span></tt> is always a valid range.
+ </li>
+<li>
+ An Algorithm that iterates through
+ the range <tt class="computeroutput"><span class="special">[</span>begin<span class="special">(</span><span class="identifier">s</span><span class="special">),</span> end<span class="special">(</span><span class="identifier">s</span><span class="special">))</span></tt> will pass through every element of
+ <tt class="computeroutput"><span class="identifier">s</span></tt> exactly once.
+ </li>
+<li>
+<tt class="computeroutput">begin<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ is identical to <tt class="computeroutput">end<span class="special">(</span><span class="identifier">s</span><span class="special">))</span></tt>
+ if and only if <tt class="computeroutput"><span class="identifier">s</span></tt> is empty.
+ </li>
+<li>
+ Two different iterations through <tt class="computeroutput"><span class="identifier">s</span></tt>
+ will access its elements in the same order.
+ </li>
+</ul></div>
+<a name="fusion.sequence.concepts.forward_sequence.models"></a><h5>
+<a name="id489623"></a>
+ Models
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>std::pair</li>
+<li>boost::array</li>
+<li>vector</li>
+<li>cons</li>
+<li>list</li>
+<li>set</li>
+<li>map</li>
+<li>single_view</li>
+<li>filter_view</li>
+<li>iterator_range</li>
+<li>joint_view</li>
+<li>transform_view</li>
+<li>reverse_view</li>
+<li>zip_view</li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../concepts.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bidirectional_sequence.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/concepts/random_access_sequence.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/concepts/random_access_sequence.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,373 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Random
+ Access Sequence</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../concepts.html" title="Concepts">
+<link rel="prev" href="bidirectional_sequence.html" title="Bidirectional
+ Sequence">
+<link rel="next" href="associative_sequence.html" title="Associative
+ Sequence">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="bidirectional_sequence.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="associative_sequence.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.sequence.concepts.random_access_sequence"></a><a href="random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a></h4></div></div></div>
+<a name="fusion.sequence.concepts.random_access_sequence.description"></a><h5>
+<a name="id491258"></a>
+ Description
+ </h5>
+<p>
+ A Random Access Sequence is a <a href="bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a> whose iterators model <a href="../../iterator/concepts/random_access_iterator.html" title="Random
+ Access Iterator">Random
+ Access Iterator</a>. It guarantees constant time access to arbitrary
+ sequence elements.
+ </p>
+<a name="fusion.sequence.concepts.random_access_sequence.refinement_of"></a><h5>
+<a name="id491309"></a>
+ <a href="random_access_sequence.html#fusion.sequence.concepts.random_access_sequence.refinement_of">Refinement
+ of</a>
+ </h5>
+<p>
+ <a href="bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a>
+ </p>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
+<dd><p>
+ A Random Access Sequence
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">S</span></tt></span></dt>
+<dd><p>
+ A Random Access Sequence type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">N</span></tt></span></dt>
+<dd><p>
+ An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">o</span></tt></span></dt>
+<dd><p>
+ An arbitrary object
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">e</span></tt></span></dt>
+<dd><p>
+ A Sequence element
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.sequence.concepts.random_access_sequence.valid_expressions"></a><h5>
+<a name="id491480"></a>
+ <a href="random_access_sequence.html#fusion.sequence.concepts.random_access_sequence.valid_expressions">Valid
+ Expressions</a>
+ </h5>
+<p>
+ In addition to the requirements defined in <a href="bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a>, for any Random Access Sequence the following must be met:
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Return type
+ </p>
+ </th>
+<th>
+ <p>
+ Type Requirements
+ </p>
+ </th>
+<th>
+ <p>
+ Runtime Complexity
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">begin<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="../../iterator/concepts/random_access_iterator.html" title="Random
+ Access Iterator">Random
+ Access Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">end<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ <a href="../../iterator/concepts/random_access_iterator.html" title="Random
+ Access Iterator">Random
+ Access Iterator</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">at<span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">at<span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span>
+ <span class="special">=</span> <span class="identifier">o</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">s</span></tt> is mutable and
+ <tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
+ <span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt> is the first element in the
+ sequence, is a valid expression.
+ </p>
+ </td>
+<td>
+ <p>
+ Constant
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.sequence.concepts.random_access_sequence.result_type_expressions"></a><h5>
+<a name="id491940"></a>
+ <a href="random_access_sequence.html#fusion.sequence.concepts.random_access_sequence.result_type_expressions">Result
+ Type Expressions</a>
+ </h5>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Compile Time Complexity
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::begin<span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::end<span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::at<span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span>
+ <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput">result_of::value_at<span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span>
+ <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Amortized constant time
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<div class="sidebar"><p>
+ <span class="inlinemediaobject"><img src="../../../images/note.png" alt="note"></span> <tt class="computeroutput">result_of::at<span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;</span></tt> returns the actual type returned by
+ <tt class="computeroutput">at<span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></tt>. In
+ most cases, this is a reference. Hence, there is no way to know the exact
+ element type using <tt class="computeroutput">result_of::at<span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;</span></tt>.The element at <tt class="computeroutput"><span class="identifier">N</span></tt>
+ may actually be a reference to begin with. For this purpose, you can use
+ <tt class="computeroutput">result_of::value_at<span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;</span></tt>.
+ </p></div>
+<a name="fusion.sequence.concepts.random_access_sequence.expression_semantics"></a><h5>
+<a name="id492570"></a>
+ <a href="random_access_sequence.html#fusion.sequence.concepts.random_access_sequence.expression_semantics">Expression
+ Semantics</a>
+ </h5>
+<p>
+ The semantics of an expression are defined only where they differ from,
+ or are not defined in <a href="bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a>.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput">at<span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The Nth element from the beginning of the sequence; see at.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.sequence.concepts.random_access_sequence.models"></a><h5>
+<a name="id492731"></a>
+ Models
+ </h5>
+<div class="itemizedlist"><ul type="disc">
+<li>std::pair</li>
+<li>boost::array</li>
+<li>vector</li>
+<li>reverse_view</li>
+<li>
+iterator_range
+ (where adapted sequence is a Random Access Sequence)
+ </li>
+<li>
+transform_view
+ (where adapted sequence is a Random Access Sequence)
+ </li>
+<li>
+zip_view
+ (where adapted sequences are models Random Access Sequence)
+ </li>
+</ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="bidirectional_sequence.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="associative_sequence.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,69 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Intrinsic</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../sequence.html" title="Sequence">
+<link rel="prev" href="concepts/associative_sequence.html" title="Associative
+ Sequence">
+<link rel="next" href="intrinsic/functions.html" title="Functions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="concepts/associative_sequence.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../sequence.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="intrinsic/functions.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.sequence.intrinsic"></a>Intrinsic</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
+</dl></div>
+<p>
+ Intrinsic form the essential interface of every Fusion Sequence.
+ STL
+ counterparts of these functions are usually implemented as member functions.
+ Intrinsic functions, unlike Algorithms,
+ are not generic across the full Sequence
+ repertoire. They need to be implemented for each Fusion Sequence
+ <sup>[<a name="id494546" href="#ftn.id494546">4</a>]</sup>
+ .
+ </p>
+<a name="fusion.sequence.intrinsic.header"></a><h4>
+<a name="id494565"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">intrinsic</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">intrinsic</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<div class="footnotes">
+<br><hr width="100" align="left">
+<div class="footnote"><p><sup>[<a name="ftn.id494546" href="#id494546">4</a>] </sup>
+ In practice, many of intrinsic functions have default implementations
+ that will work in majority of cases
+ </p></div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="concepts/associative_sequence.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../sequence.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="intrinsic/functions.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,52 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Functions</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../intrinsic.html" title="Intrinsic">
+<link rel="prev" href="../intrinsic.html" title="Intrinsic">
+<link rel="next" href="functions/begin.html" title="begin">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../intrinsic.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../intrinsic.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/begin.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.sequence.intrinsic.functions"></a>Functions</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">begin</span></dt>
+<dt><span class="section">end</span></dt>
+<dt><span class="section">empty</span></dt>
+<dt><span class="section">front</span></dt>
+<dt><span class="section">back</span></dt>
+<dt><span class="section">size</span></dt>
+<dt><span class="section">at</span></dt>
+<dt><span class="section">at_c</span></dt>
+<dt><span class="section">has_key</span></dt>
+<dt><span class="section">at_key</span></dt>
+<dt><span class="section">swap</span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../intrinsic.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../intrinsic.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/begin.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/at.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/at.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,170 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>at</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="size.html" title="size">
+<link rel="next" href="at_c.html" title="at_c">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="size.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at_c.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.functions.at"></a>at</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.functions.at.description"></a><h6>
+<a name="id500285"></a>
+ Description
+ </h6>
+<p>
+ Returns the N-th element from the beginning of the sequence.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.at.synopsis"></a><h6>
+<a name="id500317"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">N</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::at<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">at</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">N</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::at<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">at</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.at.parameters"></a><h6>
+<a name="id500647"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence we wish to investigate.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">N</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>
+ </p>
+ </td>
+<td>
+ <p>
+ An index from the beginning of the sequence.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.sequence.intrinsic.functions.at.expression_semantics"></a><h6>
+<a name="id500808"></a>
+ <a href="at.html#fusion.sequence.intrinsic.functions.at.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">at</span><span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Returns a reference to
+ the N-th element from the beginning of the sequence <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ if <tt class="computeroutput"><span class="identifier">seq</span></tt> is mutable and
+ <tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
+ <span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt>
+ is the N-th element from the beginning of the sequence, is a valid expression.
+ Else, returns a type convertable to the N-th element from the beginning
+ of the sequence.
+ </p>
+<p>
+ <span class="bold"><b>Precondition</b></span>: <tt class="computeroutput"><span class="number">0</span>
+ <span class="special">&lt;=</span> <span class="identifier">N</span><span class="special">::</span><span class="identifier">value</span> <span class="special">&lt;</span> size<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Equivalent to
+ </p>
+<pre class="programlisting">
+deref<span class="special">(</span>advance<span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span>begin<span class="special">(</span><span class="identifier">s</span><span class="special">)))</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.at.header"></a><h6>
+<a name="id501126"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">intrinsic</span><span class="special">/</span><span class="identifier">at</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">at</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.at.example"></a><h6>
+<a name="id501293"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">at</span><span class="special">&lt;</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;</span> <span class="special">&gt;(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">==</span> <span class="number">2</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="size.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at_c.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/at_c.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/at_c.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,170 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>at_c</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="at.html" title="at">
+<link rel="next" href="has_key.html" title="has_key">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="at.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="has_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.functions.at_c"></a>at_c</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.functions.at_c.description"></a><h6>
+<a name="id501522"></a>
+ Description
+ </h6>
+<p>
+ Returns the N-th element from the beginning of the sequence.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.at_c.synopsis"></a><h6>
+<a name="id501553"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">int</span> <span class="identifier">N</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::at_c<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">at_c</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">int</span> <span class="identifier">N</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::at_c<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">at_c</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.at_c.parameters"></a><h6>
+<a name="id501888"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence we wish to investigate.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">N</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An integral constant
+ </p>
+ </td>
+<td>
+ <p>
+ An index from the beginning of the sequence.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.sequence.intrinsic.functions.at_c.expression_semantics"></a><h6>
+<a name="id502041"></a>
+ <a href="at_c.html#fusion.sequence.intrinsic.functions.at_c.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">at_c</span><span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Returns a reference to
+ the N-th element from the beginning of the sequence <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ if <tt class="computeroutput"><span class="identifier">seq</span></tt> is mutable and
+ <tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
+ <span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt>
+ is the N-th element from the beginning of the sequence, is a valid expression.
+ Else, returns a type convertable to the N-th element from the beginning
+ of the sequence.
+ </p>
+<p>
+ <span class="bold"><b>Precondition</b></span>: <tt class="computeroutput"><span class="number">0</span>
+ <span class="special">&lt;=</span> <span class="identifier">N</span>
+ <span class="special">&lt;</span> size<span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Equivalent to
+ </p>
+<pre class="programlisting">
+deref<span class="special">(</span>advance<span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span>begin<span class="special">(</span><span class="identifier">s</span><span class="special">)))</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.at_c.header"></a><h6>
+<a name="id502350"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">intrinsic</span><span class="special">/</span><span class="identifier">at_c</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">at_c</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.at_c.example"></a><h6>
+<a name="id502519"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">at_c</span><span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">==</span> <span class="number">2</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="at.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="has_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/at_key.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/at_key.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,165 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>at_key</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="has_key.html" title="has_key">
+<link rel="next" href="swap.html" title="swap">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="has_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="swap.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.functions.at_key"></a>at_key</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.functions.at_key.description"></a><h6>
+<a name="id503631"></a>
+ Description
+ </h6>
+<p>
+ Returns the element associated with a Key from the sequence.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.at_key.synopsis"></a><h6>
+<a name="id503662"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Key</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::at_key<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">at_key</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Key</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::at_key<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">at_key</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.at_key.parameters"></a><h6>
+<a name="id503995"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/associative_sequence.html" title="Associative
+ Sequence">Associative
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence we wish to investigate.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Key</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The queried key.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.sequence.intrinsic.functions.at_key.expression_semantics"></a><h6>
+<a name="id504148"></a>
+ <a href="at_key.html#fusion.sequence.intrinsic.functions.at_key.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">at_key</span><span class="special">&lt;</span><span class="identifier">Key</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Returns a reference to
+ the element associated with Key from the sequence <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ if <tt class="computeroutput"><span class="identifier">seq</span></tt> is mutable and
+ <tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
+ <span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt>
+ is the element associated with Key, is a valid expression. Else, returns
+ a type convertable to the element associated with Key.
+ </p>
+<p>
+ <span class="bold"><b>Precondition</b></span>: <tt class="computeroutput"><span class="identifier">has_key</span><span class="special">&lt;</span><span class="identifier">Key</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">true</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the element associated
+ with Key.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.at_key.header"></a><h6>
+<a name="id504356"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">intrinsic</span><span class="special">/</span><span class="identifier">at_key</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">at_key</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.at_key.example"></a><h6>
+<a name="id504525"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+set<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">,</span> <span class="keyword">bool</span><span class="special">&gt;</span> <span class="identifier">s</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'x'</span><span class="special">,</span> <span class="keyword">true</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">at_key</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span> <span class="special">==</span> <span class="char">'x'</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="has_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="swap.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/back.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/back.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,146 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>back</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="front.html" title="front">
+<link rel="next" href="size.html" title="size">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="front.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="size.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.functions.back"></a>back</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.functions.back.description"></a><h6>
+<a name="id498534"></a>
+ Description
+ </h6>
+<p>
+ Returns the last element in the sequence.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.back.synopsis"></a><h6>
+<a name="id498565"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::back<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">back</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::back<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">back</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.back.parameters"></a><h6>
+<a name="id498842"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence we wish to investigate.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.sequence.intrinsic.functions.back.expression_semantics"></a><h6>
+<a name="id498958"></a>
+ <a href="back.html#fusion.sequence.intrinsic.functions.back.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">back</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Returns a reference to
+ the last element in the sequence <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ if <tt class="computeroutput"><span class="identifier">seq</span></tt> is mutable and
+ <tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
+ <span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt>
+ is the last element in the sequence, is a valid expression. Else, returns
+ a type convertable to the last element in the sequence.
+ </p>
+<p>
+ <span class="bold"><b>Precondition</b></span>: <tt class="computeroutput">empty<span class="special">(</span><span class="identifier">seq</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the last element
+ in the sequence.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.back.header"></a><h6>
+<a name="id499155"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">intrinsic</span><span class="special">/</span><span class="identifier">back</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">back</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.back.example"></a><h6>
+<a name="id499324"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">back</span><span class="special">(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">==</span> <span class="number">3</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="front.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="size.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/begin.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/begin.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,152 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>begin</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="../functions.html" title="Functions">
+<link rel="next" href="end.html" title="end">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="end.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.functions.begin"></a>begin</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.functions.begin.description"></a><h6>
+<a name="id494762"></a>
+ Description
+ </h6>
+<p>
+ Returns an iterator pointing to the first element in the sequence.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.begin.synopsis"></a><h6>
+<a name="id494793"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::begin<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">begin</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::begin<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">begin</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.begin.parameters"></a><h6>
+<a name="id495070"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence we wish to get an iterator from.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.sequence.intrinsic.functions.begin.expression_semantics"></a><h6>
+<a name="id495186"></a>
+ <a href="begin.html#fusion.sequence.intrinsic.functions.begin.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">begin</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <a href="../../../iterator/concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a> if <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ is a <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a> else, <a href="../../../iterator/concepts/bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a> if <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ is a <a href="../../concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a> else, <a href="../../../iterator/concepts/random_access_iterator.html" title="Random
+ Access Iterator">Random
+ Access Iterator</a> if <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ is a <a href="../../concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns an iterator pointing
+ to the first element in the sequence.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.begin.header"></a><h6>
+<a name="id495356"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">intrinsic</span><span class="special">/</span><span class="identifier">begin</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">begin</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.begin.example"></a><h6>
+<a name="id495526"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>deref<span class="special">(</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">v</span><span class="special">))</span> <span class="special">==</span> <span class="number">1</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../functions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="end.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/empty.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/empty.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,135 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>empty</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="end.html" title="end">
+<link rel="next" href="front.html" title="front">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="end.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="front.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.functions.empty"></a>empty</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.functions.empty.description"></a><h6>
+<a name="id496734"></a>
+ Description
+ </h6>
+<p>
+ Returns a type convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>
+ that evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt> if
+ the sequence is empty, else, evaluates to <tt class="computeroutput"><span class="keyword">false</span></tt>.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.empty.synopsis"></a><h6>
+<a name="id496800"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::empty<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">empty</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.empty.parameters"></a><h6>
+<a name="id496955"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence we wish to investigate.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.sequence.intrinsic.functions.empty.expression_semantics"></a><h6>
+<a name="id497070"></a>
+ <a href="empty.html#fusion.sequence.intrinsic.functions.empty.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">empty</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt> if the sequence is empty, else, evaluates
+ to <tt class="computeroutput"><span class="keyword">false</span></tt>.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.empty.header"></a><h6>
+<a name="id497185"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">intrinsic</span><span class="special">/</span><span class="identifier">empty</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">empty</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.empty.example"></a><h6>
+<a name="id497354"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">empty</span><span class="special">(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="end.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="front.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/end.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/end.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,152 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>end</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="begin.html" title="begin">
+<link rel="next" href="empty.html" title="empty">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="begin.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="empty.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.functions.end"></a>end</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.functions.end.description"></a><h6>
+<a name="id495740"></a>
+ Description
+ </h6>
+<p>
+ Returns an iterator pointing to one element past the end of the sequence.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.end.synopsis"></a><h6>
+<a name="id495771"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::end<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">end</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::end<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">end</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.end.parameters"></a><h6>
+<a name="id496046"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence we wish to get an iterator from.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.sequence.intrinsic.functions.end.expression_semantics"></a><h6>
+<a name="id496160"></a>
+ <a href="end.html#fusion.sequence.intrinsic.functions.end.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">end</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <a href="../../../iterator/concepts/forward_iterator.html" title="Forward
+ Iterator">Forward
+ Iterator</a> if <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ is a <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a> else, <a href="../../../iterator/concepts/bidirectional_iterator.html" title="Bidirectional
+ Iterator">Bidirectional
+ Iterator</a> if <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ is a <a href="../../concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a> else, <a href="../../../iterator/concepts/random_access_iterator.html" title="Random
+ Access Iterator">Random
+ Access Iterator</a> if <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ is a <a href="../../concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns an iterator pointing
+ to one element past the end of the sequence.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.end.header"></a><h6>
+<a name="id496331"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">intrinsic</span><span class="special">/</span><span class="identifier">end</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">end</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.end.example"></a><h6>
+<a name="id496500"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span>deref<span class="special">(</span>prior<span class="special">(</span><span class="identifier">end</span><span class="special">(</span><span class="identifier">v</span><span class="special">)))</span> <span class="special">==</span> <span class="number">3</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="begin.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="empty.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/front.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/front.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,146 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>front</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="empty.html" title="empty">
+<link rel="next" href="back.html" title="back">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="empty.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.functions.front"></a>front</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.functions.front.description"></a><h6>
+<a name="id497549"></a>
+ Description
+ </h6>
+<p>
+ Returns the first element in the sequence.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.front.synopsis"></a><h6>
+<a name="id497580"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::front<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">front</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::front<span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">front</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.front.parameters"></a><h6>
+<a name="id497857"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence we wish to investigate.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.sequence.intrinsic.functions.front.expression_semantics"></a><h6>
+<a name="id497971"></a>
+ <a href="front.html#fusion.sequence.intrinsic.functions.front.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">front</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Returns a reference to
+ the first element in the sequence <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ if <tt class="computeroutput"><span class="identifier">seq</span></tt> is mutable and
+ <tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
+ <span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt>
+ is the first element in the sequence, is a valid expression. Else, returns
+ a type convertable to the first element in the sequence.
+ </p>
+<p>
+ <span class="bold"><b>Precondition</b></span>: <tt class="computeroutput">empty<span class="special">(</span><span class="identifier">seq</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the first element
+ in the sequence.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.front.header"></a><h6>
+<a name="id498170"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">intrinsic</span><span class="special">/</span><span class="identifier">front</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">front</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.front.example"></a><h6>
+<a name="id498340"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">front</span><span class="special">(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">==</span> <span class="number">1</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="empty.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/has_key.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/has_key.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,155 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>has_key</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="at_c.html" title="at_c">
+<link rel="next" href="at_key.html" title="at_key">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="at_c.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.functions.has_key"></a>has_key</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.functions.has_key.description"></a><h6>
+<a name="id502724"></a>
+ Description
+ </h6>
+<p>
+ Returns a type convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>
+ that evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt> if
+ the sequence contains an element associated with a Key, else, evaluates
+ to <tt class="computeroutput"><span class="keyword">false</span></tt>.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.has_key.synopsis"></a><h6>
+<a name="id502792"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Key</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::has_key<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">has_key</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.has_key.parameters"></a><h6>
+<a name="id502975"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/associative_sequence.html" title="Associative
+ Sequence">Associative
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence we wish to investigate.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Key</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The queried key.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.sequence.intrinsic.functions.has_key.expression_semantics"></a><h6>
+<a name="id503130"></a>
+ <a href="has_key.html#fusion.sequence.intrinsic.functions.has_key.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">has_key</span><span class="special">&lt;</span><span class="identifier">Key</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt> if the sequence contains an element
+ associated with Key, else, evaluates to <tt class="computeroutput"><span class="keyword">false</span></tt>.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.has_key.header"></a><h6>
+<a name="id503255"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">intrinsic</span><span class="special">/</span><span class="identifier">has_key</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">has_key</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.has_key.example"></a><h6>
+<a name="id503424"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+set<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">,</span> <span class="keyword">bool</span><span class="special">&gt;</span> <span class="identifier">s</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'x'</span><span class="special">,</span> <span class="keyword">true</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">has_key</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">true</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="at_c.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/size.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/size.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,134 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>size</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="back.html" title="back">
+<link rel="next" href="at.html" title="at">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="back.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.functions.size"></a>size</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.functions.size.description"></a><h6>
+<a name="id499519"></a>
+ Description
+ </h6>
+<p>
+ Returns a type convertible to <tt class="computeroutput"><span class="keyword">int</span></tt>
+ that evaluates the number of elements in the sequence.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.size.synopsis"></a><h6>
+<a name="id499564"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> result_of::size<span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">size</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.size.parameters"></a><h6>
+<a name="id499718"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence we wish to investigate.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.sequence.intrinsic.functions.size.expression_semantics"></a><h6>
+<a name="id499833"></a>
+ <a href="size.html#fusion.sequence.intrinsic.functions.size.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">size</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Convertible to <tt class="computeroutput"><span class="keyword">int</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the number of elements
+ in the sequence.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.size.header"></a><h6>
+<a name="id499923"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">intrinsic</span><span class="special">/</span><span class="identifier">size</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">size</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.size.example"></a><h6>
+<a name="id500092"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">size</span><span class="special">(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">==</span> <span class="number">3</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="back.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/swap.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/functions/swap.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,131 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>swap</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../functions.html" title="Functions">
+<link rel="prev" href="at_key.html" title="at_key">
+<link rel="next" href="../metafunctions.html" title="Metafunctions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="at_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.functions.swap"></a>swap</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.functions.swap.description"></a><h6>
+<a name="id504732"></a>
+ Description
+ </h6>
+<p>
+ Performs an element by element swap of the elements in 2 sequences.
+ </p>
+<a name="fusion.sequence.intrinsic.functions.swap.synopsis"></a><h6>
+<a name="id504764"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Seq2</span><span class="special">&gt;</span>
+<span class="keyword">void</span> <span class="identifier">swap</span><span class="special">(</span><span class="identifier">Seq1</span><span class="special">&amp;</span> <span class="identifier">seq1</span><span class="special">,</span> <span class="identifier">Seq2</span><span class="special">&amp;</span> <span class="identifier">seq2</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.intrinsic.functions.swap.parameters"></a><h6>
+<a name="id504905"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameters
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">seq1</span></tt>, <tt class="computeroutput"><span class="identifier">seq2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Models of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequences whos elements we wish to swap.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.sequence.intrinsic.functions.swap.expression_semantics"></a><h6>
+<a name="id505032"></a>
+ <a href="swap.html#fusion.sequence.intrinsic.functions.swap.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">swap</span><span class="special">(</span><span class="identifier">seq1</span><span class="special">,</span> <span class="identifier">seq2</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">void</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Precondition</b></span>: <tt class="computeroutput">size<span class="special">(</span><span class="identifier">seq1</span><span class="special">)</span> <span class="special">==</span> size<span class="special">(</span><span class="identifier">seq2</span><span class="special">)</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Calls <tt class="computeroutput"><span class="identifier">swap</span><span class="special">(</span><span class="identifier">a1</span><span class="special">,</span> <span class="identifier">b1</span><span class="special">)</span></tt> for corresponding elements in <tt class="computeroutput"><span class="identifier">seq1</span></tt> and <tt class="computeroutput"><span class="identifier">seq2</span></tt>.
+ </p>
+<p>
+ /sequence/intrinsic/swap.hpp&gt;
+ </p>
+<a name="fusion.sequence.intrinsic.functions.swap.example"></a><h6>
+<a name="id505282"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="string">"hello"</span><span class="special">),</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">2</span><span class="special">,</span> <span class="string">"world"</span><span class="special">);</span>
+<span class="identifier">swap</span><span class="special">(</span><span class="identifier">v1</span><span class="special">,</span> <span class="identifier">v2</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v1</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">2</span><span class="special">,</span> <span class="string">"world"</span><span class="special">));</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v2</span> <span class="special">==</span> make_vector<span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="string">"hello"</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="at_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,55 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Metafunctions</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../intrinsic.html" title="Intrinsic">
+<link rel="prev" href="functions/swap.html" title="swap">
+<link rel="next" href="metafunctions/begin.html" title="begin">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/swap.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../intrinsic.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/begin.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.sequence.intrinsic.metafunctions"></a>Metafunctions</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">begin</span></dt>
+<dt><span class="section">end</span></dt>
+<dt><span class="section">empty</span></dt>
+<dt><span class="section">front</span></dt>
+<dt><span class="section">back</span></dt>
+<dt><span class="section">size</span></dt>
+<dt><span class="section">at</span></dt>
+<dt><span class="section">at_c</span></dt>
+<dt><span class="section">value_at</span></dt>
+<dt><span class="section">value_at_c</span></dt>
+<dt><span class="section">has_key</span></dt>
+<dt><span class="section">at_key</span></dt>
+<dt><span class="section">value_at_key</span></dt>
+<dt><span class="section">swap</span></dt>
+</dl></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="functions/swap.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../intrinsic.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/begin.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/at.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/at.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,162 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>at</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="size.html" title="size">
+<link rel="next" href="at_c.html" title="at_c">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="size.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at_c.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.metafunctions.at"></a>at</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.metafunctions.at.description"></a><h6>
+<a name="id509564"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of at
+ <sup>[<a name="id509602" href="#ftn.id509602">5</a>]</sup>
+ .
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.at.synopsis"></a><h6>
+<a name="id509721"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">N</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">at</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id509838"></a><p class="title"><b>Table 1.25. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Argument sequence
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">N</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Index of element
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.sequence.intrinsic.metafunctions.at.expression_semantics"></a><h6>
+<a name="id509982"></a>
+ <a href="at.html#fusion.sequence.intrinsic.metafunctions.at.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Any type.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the result type of
+ using at to access the <tt class="computeroutput"><span class="identifier">N</span></tt>th element of <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
+ </p>
+<p>
+ /sequence/intrinsic/at.hpp&gt;
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.at.example"></a><h6>
+<a name="id510133"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span>result_of::at<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&amp;&gt;));</span>
+</pre>
+<div class="footnotes">
+<br><hr width="100" align="left">
+<div class="footnote"><p><sup>[<a name="ftn.id509602" href="#id509602">5</a>] </sup>
+ result_of::at reflects the actual return
+ type of the function at. Sequence(s)
+ typically return references to its elements via the at function. If you want
+ to get the actual element type, use result_of::value_at
+ </p></div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="size.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at_c.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/at_c.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/at_c.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,161 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>at_c</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="at.html" title="at">
+<link rel="next" href="value_at.html" title="value_at">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="at.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="value_at.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.metafunctions.at_c"></a>at_c</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.metafunctions.at_c.description"></a><h6>
+<a name="id510393"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of at_c
+ <sup>[<a name="id510433" href="#ftn.id510433">6</a>]</sup>
+ .
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.at_c.synopsis"></a><h6>
+<a name="id510556"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">,</span>
+ <span class="keyword">int</span> <span class="identifier">M</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">at_c</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id510673"></a><p class="title"><b>Table 1.26. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Argument sequence
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">M</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Positive integer index
+ </p>
+ </td>
+<td>
+ <p>
+ Index of element
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.sequence.intrinsic.metafunctions.at_c.expression_semantics"></a><h6>
+<a name="id510813"></a>
+ <a href="at_c.html#fusion.sequence.intrinsic.metafunctions.at_c.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_c</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span> <span class="identifier">M</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Any type
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the result type of
+ using at_c to access the <tt class="computeroutput"><span class="identifier">M</span></tt>th element of <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
+ </p>
+<p>
+ /sequence/intrinsic/at.hpp&gt;
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.at_c.example"></a><h6>
+<a name="id510965"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span>result_of::at_c<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">,</span> <span class="number">1</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&amp;&gt;));</span>
+</pre>
+<div class="footnotes">
+<br><hr width="100" align="left">
+<div class="footnote"><p><sup>[<a name="ftn.id510433" href="#id510433">6</a>] </sup>
+ result_of::at_c reflects the actual
+ return type of the function at_c. Sequence(s)
+ typically return references to its elements via the at_c function. If you want
+ to get the actual element type, use result_of::value_at_c
+ </p></div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="at.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="value_at.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/at_key.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/at_key.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,163 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>at_key</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="has_key.html" title="has_key">
+<link rel="next" href="value_at_key.html" title="value_at_key">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="has_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="value_at_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.metafunctions.at_key"></a>at_key</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.metafunctions.at_key.description"></a><h6>
+<a name="id513380"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of at_key
+ <sup>[<a name="id513419" href="#ftn.id513419">7</a>]</sup>
+ .
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.at_key.synopsis"></a><h6>
+<a name="id513538"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Key</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">at_key</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id513656"></a><p class="title"><b>Table 1.30. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Argument sequence
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Key</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Key type
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.sequence.intrinsic.metafunctions.at_key.expression_semantics"></a><h6>
+<a name="id513795"></a>
+ <a href="at_key.html#fusion.sequence.intrinsic.metafunctions.at_key.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Any type.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the result of using
+ at_key to access the element
+ with key type <tt class="computeroutput"><span class="identifier">Key</span></tt> in
+ <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
+ </p>
+<p>
+ /sequence/intrinsic/at_key.hpp&gt;
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.at_key.example"></a><h6>
+<a name="id513947"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">typedef</span> map<span class="special">&lt;</span>pair<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;,</span> pair<span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;,</span> pair<span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">char</span><spa
n class="special">&gt;</span> <span class="special">&gt;</span> <span class="identifier">mymap</span><span class="special">;</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span>result_of::at_key<span class="special">&lt;</span><span class="identifier">mymap</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&amp;&gt;));</span>
+</pre>
+<div class="footnotes">
+<br><hr width="100" align="left">
+<div class="footnote"><p><sup>[<a name="ftn.id513419" href="#id513419">7</a>] </sup>
+ result_of::at_key reflects the actual
+ return type of the function at_key. <span class="underline">_sequence</span>_s
+ typically return references to its elements via the at_key function. If you
+ want to get the actual element type, use result_of::value_at_key
+ </p></div>
+</div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="has_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="value_at_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/back.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/back.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,129 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>back</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="front.html" title="front">
+<link rel="next" href="size.html" title="size">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="front.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="size.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.metafunctions.back"></a>back</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.metafunctions.back.description"></a><h6>
+<a name="id508278"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of back.
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.back.synopsis"></a><h6>
+<a name="id508326"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">back</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id508426"></a><p class="title"><b>Table 1.23. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Argument sequence
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.sequence.intrinsic.metafunctions.back.expression_semantics"></a><h6>
+<a name="id508527"></a>
+ <a href="back.html#fusion.sequence.intrinsic.metafunctions.back.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">back</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Any type
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: The type returned by dereferencing
+ an iterator to the last element in the sequence. Equivalent to <tt class="computeroutput">result_of::deref<span class="special">&lt;</span>result_of::prior<span class="special">&lt;</span>result_of::end<span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class
="identifier">type</span></tt>.
+ </p>
+<p>
+ /sequence/intrinsic/back.hpp&gt;
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.back.example"></a><h6>
+<a name="id508760"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span>result_of::back<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&amp;&gt;));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="front.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="size.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/begin.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/begin.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,131 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>begin</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="../metafunctions.html" title="Metafunctions">
+<link rel="next" href="end.html" title="end">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="end.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.metafunctions.begin"></a>begin</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.metafunctions.begin.description"></a><h6>
+<a name="id505635"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of begin.
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.begin.synopsis"></a><h6>
+<a name="id505684"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">begin</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id505782"></a><p class="title"><b>Table 1.19. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Argument sequence
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.sequence.intrinsic.metafunctions.begin.expression_semantics"></a><h6>
+<a name="id505884"></a>
+ <a href="begin.html#fusion.sequence.intrinsic.metafunctions.begin.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: An iterator modelling the
+ same traversal concept as <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the type of an iterator
+ to the first element of <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
+ </p>
+<p>
+ /sequence/intrinsic/begin.hpp&gt;
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.begin.example"></a><h6>
+<a name="id506007"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::begin<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">it</span><span class="special">;</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span>result_of::deref<span class="special">&lt;</span><span class="identifier">it</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&amp;&gt;))</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="end.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/empty.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/empty.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,134 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>empty</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="end.html" title="end">
+<link rel="next" href="front.html" title="front">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="end.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="front.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.metafunctions.empty"></a>empty</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.metafunctions.empty.description"></a><h6>
+<a name="id506944"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of empty.
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.empty.synopsis"></a><h6>
+<a name="id506993"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">empty</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id507092"></a><p class="title"><b>Table 1.21. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Argument sequence
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.sequence.intrinsic.metafunctions.empty.expression_semantics"></a><h6>
+<a name="id507195"></a>
+ <a href="empty.html#fusion.sequence.intrinsic.metafunctions.empty.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">empty</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>
+ if <tt class="computeroutput"><span class="identifier">Seq</span></tt> has zero elements,
+ <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span></tt> otherwise.
+ </p>
+<p>
+ /sequence/intrinsic/empty.hpp&gt;
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.empty.example"></a><h6>
+<a name="id507356"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;&gt;</span> <span class="identifier">empty_vec</span><span class="special">;</span>
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span>result_of::empty<span class="special">&lt;</span><span class="identifier">empty_vec</span><span class="special">&gt;));</span>
+<span class="identifier">BOOST_MPL_ASSERT_NOT</span><span class="special">((</span>result_of::empty<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="end.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="front.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/end.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/end.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,131 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>end</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="begin.html" title="begin">
+<link rel="next" href="empty.html" title="empty">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="begin.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="empty.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.metafunctions.end"></a>end</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.metafunctions.end.description"></a><h6>
+<a name="id506264"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of end.
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.end.synopsis"></a><h6>
+<a name="id506312"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">end</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id506411"></a><p class="title"><b>Table 1.20. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Argument sequence
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.sequence.intrinsic.metafunctions.end.expression_semantics"></a><h6>
+<a name="id506513"></a>
+ <a href="end.html#fusion.sequence.intrinsic.metafunctions.end.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">end</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: A model of the same traversal
+ concept as <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the type of an iterator
+ one past the end of <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
+ </p>
+<p>
+ /sequence/intrinsic/end.hpp&gt;
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.end.example"></a><h6>
+<a name="id506635"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::prior<span class="special">&lt;</span>result_of::end<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">first</span><span class="special">;</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span>result_of::equal_to<span class="special">&lt;</span><span class="identifier">first</span><span class="special">,</span> result_of::begin<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;))</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="begin.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="empty.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/front.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/front.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,130 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>front</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="empty.html" title="empty">
+<link rel="next" href="back.html" title="back">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="empty.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.metafunctions.front"></a>front</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.metafunctions.front.description"></a><h6>
+<a name="id507619"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of front.
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.front.synopsis"></a><h6>
+<a name="id507669"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">front</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id507768"></a><p class="title"><b>Table 1.22. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Argument sequence
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.sequence.intrinsic.metafunctions.front.expression_semantics"></a><h6>
+<a name="id507870"></a>
+ <a href="front.html#fusion.sequence.intrinsic.metafunctions.front.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">front</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Any type
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: The type returned by dereferencing
+ an iterator to the first element in <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
+ Equivalent to <tt class="computeroutput">result_of::deref<span class="special">&lt;</span>result_of::begin<span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>.
+ </p>
+<p>
+ /sequence/intrinsic/front.hpp&gt;
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.front.example"></a><h6>
+<a name="id508074"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span>result_of::front<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&amp;&gt;));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="empty.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/has_key.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/has_key.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,154 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>has_key</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="value_at_c.html" title="value_at_c">
+<link rel="next" href="at_key.html" title="at_key">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="value_at_c.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.metafunctions.has_key"></a>has_key</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.metafunctions.has_key.description"></a><h6>
+<a name="id512545"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of has_key.
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.has_key.synopsis"></a><h6>
+<a name="id512595"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Key</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">has_key</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id512713"></a><p class="title"><b>Table 1.29. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Argument sequence
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Key</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Key type
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.sequence.intrinsic.metafunctions.has_key.expression_semantics"></a><h6>
+<a name="id512851"></a>
+ <a href="has_key.html#fusion.sequence.intrinsic.metafunctions.has_key.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">has_key</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>
+ if <tt class="computeroutput"><span class="identifier">Seq</span></tt> contains an element
+ with key type <tt class="computeroutput"><span class="identifier">Key</span></tt>, returns
+ <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span></tt> otherwise.
+ </p>
+<p>
+ /sequence/intrinsic/has_key.hpp&gt;
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.has_key.example"></a><h6>
+<a name="id513034"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">typedef</span> map<span class="special">&lt;</span>pair<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;,</span> pair<span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;,</span> pair<span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">char</span><spa
n class="special">&gt;</span> <span class="special">&gt;</span> <span class="identifier">mymap</span><span class="special">;</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span>result_of::has_key<span class="special">&lt;</span><span class="identifier">mymap</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;));</span>
+<span class="identifier">BOOST_MPL_ASSERT_NOT</span><span class="special">((</span>result_of::has_key<span class="special">&lt;</span><span class="identifier">mymap</span><span class="special">,</span> <span class="keyword">void</span><span class="special">*&gt;));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="value_at_c.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/size.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/size.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,131 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>size</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="back.html" title="back">
+<link rel="next" href="at.html" title="at">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="back.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.metafunctions.size"></a>size</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.metafunctions.size.description"></a><h6>
+<a name="id508963"></a>
+ Description
+ </h6>
+<p>
+ Returns the result type of size.
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.size.synopsis"></a><h6>
+<a name="id509013"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">size</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id509112"></a><p class="title"><b>Table 1.24. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Argument sequence
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.sequence.intrinsic.metafunctions.size.expression_semantics"></a><h6>
+<a name="id509212"></a>
+ <a href="size.html#fusion.sequence.intrinsic.metafunctions.size.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the number of elements
+ in <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
+ </p>
+<p>
+ /sequence/intrinsic/size.hpp&gt;
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.size.example"></a><h6>
+<a name="id509331"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::size<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">size_mpl_integral_constant</span><span class="special">;</span>
+<span class="identifier">BOOST_MPL_ASSERT_RELATION</span><span class="special">(</span><span class="identifier">size_mpl_integral_constant</span><span class="special">::</span><span class="identifier">value</span><span class="special">,</span> <span class="special">==,</span> <span class="number">3</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="back.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/swap.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/swap.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,120 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>swap</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="value_at_key.html" title="value_at_key">
+<link rel="next" href="../../operator.html" title="Operator">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="value_at_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../operator.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.metafunctions.swap"></a>swap</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.metafunctions.swap.description"></a><h6>
+<a name="id515030"></a>
+ Description
+ </h6>
+<p>
+ Returns the return type of swap.
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.swap.synopsis"></a><h6>
+<a name="id515062"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Seq2</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">swap</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="keyword">void</span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id515181"></a><p class="title"><b>Table 1.32. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameters
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Seq1</span></tt>, <tt class="computeroutput"><span class="identifier">Seq2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Models of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ The sequences being swapped
+ </p>
+ </td>
+</tr></tbody>
+</table>
+</div>
+<a name="fusion.sequence.intrinsic.metafunctions.swap.expression_semantics"></a><h6>
+<a name="id515296"></a>
+ <a href="swap.html#fusion.sequence.intrinsic.metafunctions.swap.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">swap</span><span class="special">&lt;</span><span class="identifier">Seq1</span><span class="special">,</span> <span class="identifier">Seq2</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">void</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Always returns <tt class="computeroutput"><span class="keyword">void</span></tt>.
+ </p>
+<p>
+ /sequence/intrinsic/swap.hpp&gt;
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="value_at_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../operator.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/value_at.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/value_at.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,151 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>value_at</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="at_c.html" title="at_c">
+<link rel="next" href="value_at_c.html" title="value_at_c">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="at_c.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="value_at_c.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.metafunctions.value_at"></a>value_at</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.metafunctions.value_at.description"></a><h6>
+<a name="id511190"></a>
+ Description
+ </h6>
+<p>
+ Returns the actual type at a given index from the Sequence.
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.value_at.synopsis"></a><h6>
+<a name="id511229"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">N</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">value_at</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id511347"></a><p class="title"><b>Table 1.27. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Argument sequence
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">N</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Index of element
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.sequence.intrinsic.metafunctions.value_at.expression_semantics"></a><h6>
+<a name="id511492"></a>
+ <a href="value_at.html#fusion.sequence.intrinsic.metafunctions.value_at.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Any type.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the actual type at
+ the <tt class="computeroutput"><span class="identifier">N</span></tt>th element of <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
+ </p>
+<p>
+ /sequence/intrinsic/value_at.hpp&gt;
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.value_at.example"></a><h6>
+<a name="id511625"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span>result_of::value_at<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="at_c.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="value_at_c.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/value_at_c.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/value_at_c.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,150 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>value_at_c</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="value_at.html" title="value_at">
+<link rel="next" href="has_key.html" title="has_key">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="value_at.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="has_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.metafunctions.value_at_c"></a>value_at_c</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.metafunctions.value_at_c.description"></a><h6>
+<a name="id511889"></a>
+ Description
+ </h6>
+<p>
+ Returns the actual type at a given index from the Sequence.
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.value_at_c.synopsis"></a><h6>
+<a name="id511929"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">,</span>
+ <span class="keyword">int</span> <span class="identifier">M</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">value_at_c</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id512047"></a><p class="title"><b>Table 1.28. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Argument sequence
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">M</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Positive integer index
+ </p>
+ </td>
+<td>
+ <p>
+ Index of element
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.sequence.intrinsic.metafunctions.value_at_c.expression_semantics"></a><h6>
+<a name="id512186"></a>
+ <a href="value_at_c.html#fusion.sequence.intrinsic.metafunctions.value_at_c.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_c</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span> <span class="identifier">M</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Any type
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the actual type at
+ the <tt class="computeroutput"><span class="identifier">M</span></tt>th element of <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
+ </p>
+<p>
+ /sequence/intrinsic/value_at.hpp&gt;
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.value_at_c.example"></a><h6>
+<a name="id512319"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span>result_of::value_at_c<span class="special">&lt;</span><span class="identifier">vec</span><span class="special">,</span> <span class="number">1</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="value_at.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="has_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/value_at_key.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/intrinsic/metafunctions/value_at_key.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,151 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>value_at_key</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../metafunctions.html" title="Metafunctions">
+<link rel="prev" href="at_key.html" title="at_key">
+<link rel="next" href="swap.html" title="swap">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="at_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="swap.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.intrinsic.metafunctions.value_at_key"></a>value_at_key</h5></div></div></div>
+<a name="fusion.sequence.intrinsic.metafunctions.value_at_key.description"></a><h6>
+<a name="id514273"></a>
+ Description
+ </h6>
+<p>
+ Returns the actual element type associated with a Key from the Sequence.
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.value_at_key.synopsis"></a><h6>
+<a name="id514313"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">Key</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">value_at_key</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+<span class="special">};</span>
+</pre>
+<div class="table">
+<a name="id514431"></a><p class="title"><b>Table 1.31. Parameters</b></p>
+<table class="table" summary="Parameters">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Seq</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A model of <a href="../../concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ Argument sequence
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Key</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ Key type
+ </p>
+ </td>
+</tr>
+</tbody>
+</table>
+</div>
+<a name="fusion.sequence.intrinsic.metafunctions.value_at_key.expression_semantics"></a><h6>
+<a name="id514571"></a>
+ <a href="value_at_key.html#fusion.sequence.intrinsic.metafunctions.value_at_key.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_key</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Any type.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the actual element
+ type associated with key type <tt class="computeroutput"><span class="identifier">Key</span></tt>
+ in <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
+ </p>
+<p>
+ /sequence/intrinsic/value_at_key.hpp&gt;
+ </p>
+<a name="fusion.sequence.intrinsic.metafunctions.value_at_key.example"></a><h6>
+<a name="id514703"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="keyword">typedef</span> map<span class="special">&lt;</span>pair<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;,</span> pair<span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;,</span> pair<span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">char</span><spa
n class="special">&gt;</span> <span class="special">&gt;</span> <span class="identifier">mymap</span><span class="special">;</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span>result_of::at_key<span class="special">&lt;</span><span class="identifier">mymap</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="at_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="swap.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/operator.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/operator.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,48 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Operator</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../sequence.html" title="Sequence">
+<link rel="prev" href="intrinsic/metafunctions/swap.html" title="swap">
+<link rel="next" href="operator/i_o.html" title="I/O">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="intrinsic/metafunctions/swap.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../sequence.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="operator/i_o.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.sequence.operator"></a>Operator</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">I/O</span></dt>
+<dt><span class="section">Comparison</span></dt>
+</dl></div>
+<p>
+ These operators, like the Algorithms,
+ work generically on all Fusion sequences. All conforming Fusion sequences
+ automatically get these operators for free.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="intrinsic/metafunctions/swap.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../sequence.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="operator/i_o.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,69 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Comparison</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../operator.html" title="Operator">
+<link rel="prev" href="i_o/out.html" title="out">
+<link rel="next" href="comparison/equal.html" title="equal">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="i_o/out.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../operator.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="comparison/equal.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.sequence.operator.comparison"></a>Comparison</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">equal</span></dt>
+<dt><span class="section"><a href="comparison/not_equal.html">not
+ equal</a></span></dt>
+<dt><span class="section"><a href="comparison/less_than.html">less
+ than</a></span></dt>
+<dt><span class="section"><a href="comparison/less_than_equal.html">less
+ than equal</a></span></dt>
+<dt><span class="section"><a href="comparison/greater_than.html">greater
+ than</a></span></dt>
+<dt><span class="section"><a href="comparison/greater_than_equal.html">greater
+ than equal</a></span></dt>
+</dl></div>
+<p>
+ The Comparison operators: <tt class="computeroutput"><span class="special">==</span></tt>,
+ <tt class="computeroutput"><span class="special">!=</span></tt>, <tt class="computeroutput"><span class="special">&lt;</span></tt>,
+ <tt class="computeroutput"><span class="special">&lt;=</span></tt>, <tt class="computeroutput"><span class="special">&gt;=</span></tt>
+ and <tt class="computeroutput"><span class="special">&gt;=</span></tt> work generically
+ on all Fusion sequences. Comparison operators are "short- circuited":
+ elementary comparisons start from the first elements and are performed
+ only until the result is clear.
+ </p>
+<a name="fusion.sequence.operator.comparison.header"></a><h5>
+<a name="id518422"></a>
+ Header
+ </h5>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">comparison</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">comparison</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="i_o/out.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../operator.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="comparison/equal.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/equal.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/equal.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,155 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>equal</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../comparison.html" title="Comparison">
+<link rel="prev" href="../comparison.html" title="Comparison">
+<link rel="next" href="not_equal.html" title="not
+ equal">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../comparison.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="not_equal.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.operator.comparison.equal"></a>equal</h5></div></div></div>
+<a name="fusion.sequence.operator.comparison.equal.description"></a><h6>
+<a name="id518600"></a>
+ Description
+ </h6>
+<p>
+ Compare two sequences for equality.
+ </p>
+<a name="fusion.sequence.operator.comparison.equal.synopsis"></a><h6>
+<a name="id518632"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Seq2</span><span class="special">&gt;</span>
+<span class="keyword">bool</span>
+<span class="keyword">operator</span><span class="special">==(</span><span class="identifier">Seq1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">Seq2</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">b</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.operator.comparison.equal.parameters"></a><h6>
+<a name="id518786"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
+ <span class="identifier">b</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Instances of Sequence
+ </p>
+ </td>
+<td>
+ <p>
+ Sequence(s) to compare
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.sequence.operator.comparison.equal.expression_semantics"></a><h6>
+<a name="id518918"></a>
+ <a href="equal.html#fusion.sequence.operator.comparison.equal.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">a</span> <span class="special">==</span> <span class="identifier">b</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Requirements</b></span>:
+ </p>
+<p>
+ For each element, <tt class="computeroutput"><span class="identifier">e1</span></tt>,
+ in sequence <tt class="computeroutput"><span class="identifier">a</span></tt>, and for
+ each element, <tt class="computeroutput"><span class="identifier">e2</span></tt>, in
+ sequence <tt class="computeroutput"><span class="identifier">b</span></tt>, <tt class="computeroutput"><span class="identifier">a</span> <span class="special">==</span> <span class="identifier">b</span></tt> is a valid expression returning a
+ type that is convertible to bool.
+ </p>
+<p>
+ An attempt to compare two Sequences of different lengths results in a
+ compile time error.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>:
+ </p>
+<p>
+ For each element, <tt class="computeroutput"><span class="identifier">e1</span></tt>,
+ in sequence <tt class="computeroutput"><span class="identifier">a</span></tt>, and for
+ each element, <tt class="computeroutput"><span class="identifier">e2</span></tt>, in
+ sequence <tt class="computeroutput"><span class="identifier">b</span></tt>, <tt class="computeroutput"><span class="identifier">e1</span> <span class="special">==</span> <span class="identifier">e2</span></tt> returns true. For any 2 zero length
+ <span class="underline">_sequence</span>_s, e and f, e == f returns
+ true.
+ </p>
+<a name="fusion.sequence.operator.comparison.equal.header"></a><h6>
+<a name="id519180"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">comparison</span><span class="special">/</span><span class="identifier">equal_to</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">equal_to</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.operator.comparison.equal.example"></a><h6>
+<a name="id519351"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="char">'a'</span><span class="special">);</span>
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="char">'a'</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v1</span> <span class="special">==</span> <span class="identifier">v2</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../comparison.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="not_equal.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/greater_than.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/greater_than.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,149 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>greater
+ than</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../comparison.html" title="Comparison">
+<link rel="prev" href="less_than_equal.html" title="less
+ than equal">
+<link rel="next" href="greater_than_equal.html" title="greater
+ than equal">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="less_than_equal.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="greater_than_equal.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.operator.comparison.greater_than"></a><a href="greater_than.html" title="greater
+ than">greater
+ than</a></h5></div></div></div>
+<p>
+ Lexicographically compare two sequences.
+ </p>
+<a name="fusion.sequence.operator.comparison.greater_than.synopsis"></a><h6>
+<a name="id522536"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Seq2</span><span class="special">&gt;</span>
+<span class="keyword">bool</span>
+<span class="keyword">operator</span><span class="special">&gt;(</span><span class="identifier">Seq1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">Seq2</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">b</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.operator.comparison.greater_than.parameters"></a><h6>
+<a name="id522692"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
+ <span class="identifier">b</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Instances of Sequence
+ </p>
+ </td>
+<td>
+ <p>
+ Sequence(s) to compare
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.sequence.operator.comparison.greater_than.expression_semantics"></a><h6>
+<a name="id522826"></a>
+ <a href="greater_than.html#fusion.sequence.operator.comparison.greater_than.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">a</span> <span class="special">&gt;</span> <span class="identifier">b</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Requirements</b></span>:
+ </p>
+<p>
+ For each element, <tt class="computeroutput"><span class="identifier">e1</span></tt>,
+ in sequence <tt class="computeroutput"><span class="identifier">a</span></tt>, and for
+ each element, <tt class="computeroutput"><span class="identifier">e2</span></tt>, in
+ sequence <tt class="computeroutput"><span class="identifier">b</span></tt>, <tt class="computeroutput"><span class="identifier">a</span> <span class="special">&lt;</span> <span class="identifier">b</span></tt> is a valid expression returning a
+ type that is convertible to bool.
+ </p>
+<p>
+ An attempt to compare two Sequences of different lengths results in a
+ compile time error.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns b &lt; a.
+ </p>
+<a name="fusion.sequence.operator.comparison.greater_than.header"></a><h6>
+<a name="id523006"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">comparison</span><span class="special">/</span><span class="identifier">less_equal</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">less_equal</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.operator.comparison.greater_than.example"></a><h6>
+<a name="id523176"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">4</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
+vector<span class="special">&lt;</span><span class="keyword">short</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
+vector<span class="special">&lt;</span><span class="keyword">long</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">v3</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">4.4</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v2</span> <span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v3</span> <span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="less_than_equal.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="greater_than_equal.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/greater_than_equal.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/greater_than_equal.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,148 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>greater
+ than equal</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../comparison.html" title="Comparison">
+<link rel="prev" href="greater_than.html" title="greater
+ than">
+<link rel="next" href="../../../container.html" title="Container">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="greater_than.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../container.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.operator.comparison.greater_than_equal"></a><a href="greater_than_equal.html" title="greater
+ than equal">greater
+ than equal</a></h5></div></div></div>
+<p>
+ Lexicographically compare two sequences.
+ </p>
+<a name="fusion.sequence.operator.comparison.greater_than_equal.synopsis"></a><h6>
+<a name="id523522"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Seq2</span><span class="special">&gt;</span>
+<span class="keyword">bool</span>
+<span class="keyword">operator</span><span class="special">&gt;=(</span><span class="identifier">Seq1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">Seq2</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">b</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.operator.comparison.greater_than_equal.parameters"></a><h6>
+<a name="id523680"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
+ <span class="identifier">b</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Instances of Sequence
+ </p>
+ </td>
+<td>
+ <p>
+ Sequence(s) to compare
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.sequence.operator.comparison.greater_than_equal.expression_semantics"></a><h6>
+<a name="id523813"></a>
+ <a href="greater_than_equal.html#fusion.sequence.operator.comparison.greater_than_equal.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">a</span> <span class="special">&gt;=</span> <span class="identifier">b</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Requirements</b></span>:
+ </p>
+<p>
+ For each element, <tt class="computeroutput"><span class="identifier">e1</span></tt>,
+ in sequence <tt class="computeroutput"><span class="identifier">a</span></tt>, and for
+ each element, <tt class="computeroutput"><span class="identifier">e2</span></tt>, in
+ sequence <tt class="computeroutput"><span class="identifier">b</span></tt>, <tt class="computeroutput"><span class="identifier">a</span> <span class="special">&lt;</span> <span class="identifier">b</span></tt> is a valid expression returning a
+ type that is convertible to bool.
+ </p>
+<p>
+ An attempt to compare two Sequences of different lengths results in a
+ compile time error.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns !(a &lt; b).
+ </p>
+<a name="fusion.sequence.operator.comparison.greater_than_equal.header"></a><h6>
+<a name="id523994"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">comparison</span><span class="special">/</span><span class="identifier">greater_equal</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">greater_equal</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.operator.comparison.greater_than_equal.example"></a><h6>
+<a name="id524164"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">4</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
+vector<span class="special">&lt;</span><span class="keyword">short</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
+vector<span class="special">&lt;</span><span class="keyword">long</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">v3</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">4.4</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v2</span> <span class="special">&gt;=</span> <span class="identifier">v1</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v3</span> <span class="special">&gt;=</span> <span class="identifier">v2</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="greater_than.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../container.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/less_than.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/less_than.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,151 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>less
+ than</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../comparison.html" title="Comparison">
+<link rel="prev" href="not_equal.html" title="not
+ equal">
+<link rel="next" href="less_than_equal.html" title="less
+ than equal">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="not_equal.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="less_than_equal.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.operator.comparison.less_than"></a><a href="less_than.html" title="less
+ than">less
+ than</a></h5></div></div></div>
+<p>
+ Lexicographically compare two sequences.
+ </p>
+<a name="fusion.sequence.operator.comparison.less_than.synopsis"></a><h6>
+<a name="id520536"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Seq2</span><span class="special">&gt;</span>
+<span class="keyword">bool</span>
+<span class="keyword">operator</span><span class="special">&lt;(</span><span class="identifier">Seq1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">Seq2</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">b</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.operator.comparison.less_than.parameters"></a><h6>
+<a name="id520691"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
+ <span class="identifier">b</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Instances of Sequence
+ </p>
+ </td>
+<td>
+ <p>
+ Sequence(s) to compare
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.sequence.operator.comparison.less_than.expression_semantics"></a><h6>
+<a name="id520824"></a>
+ <a href="less_than.html#fusion.sequence.operator.comparison.less_than.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">a</span> <span class="special">&lt;</span> <span class="identifier">b</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Requirements</b></span>:
+ </p>
+<p>
+ For each element, <tt class="computeroutput"><span class="identifier">e1</span></tt>,
+ in sequence <tt class="computeroutput"><span class="identifier">a</span></tt>, and for
+ each element, <tt class="computeroutput"><span class="identifier">e2</span></tt>, in
+ sequence <tt class="computeroutput"><span class="identifier">b</span></tt>, <tt class="computeroutput"><span class="identifier">a</span> <span class="special">&lt;</span> <span class="identifier">b</span></tt> is a valid expression returning a
+ type that is convertible to bool.
+ </p>
+<p>
+ An attempt to compare two Sequences of different lengths results in a
+ compile time error.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the lexicographical
+ comparison of between <tt class="computeroutput"><span class="identifier">a</span></tt>
+ and <tt class="computeroutput"><span class="identifier">b</span></tt>.
+ </p>
+<a name="fusion.sequence.operator.comparison.less_than.header"></a><h6>
+<a name="id521028"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">comparison</span><span class="special">/</span><span class="identifier">less</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">less</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.operator.comparison.less_than.example"></a><h6>
+<a name="id521197"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">4</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
+vector<span class="special">&lt;</span><span class="keyword">short</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
+vector<span class="special">&lt;</span><span class="keyword">long</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">v3</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">4.4</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v1</span> <span class="special">&lt;</span> <span class="identifier">v2</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v2</span> <span class="special">&lt;</span> <span class="identifier">v3</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="not_equal.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="less_than_equal.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/less_than_equal.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/less_than_equal.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,149 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>less
+ than equal</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../comparison.html" title="Comparison">
+<link rel="prev" href="less_than.html" title="less
+ than">
+<link rel="next" href="greater_than.html" title="greater
+ than">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="less_than.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="greater_than.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.operator.comparison.less_than_equal"></a><a href="less_than_equal.html" title="less
+ than equal">less
+ than equal</a></h5></div></div></div>
+<p>
+ Lexicographically compare two sequences.
+ </p>
+<a name="fusion.sequence.operator.comparison.less_than_equal.synopsis"></a><h6>
+<a name="id521546"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Seq2</span><span class="special">&gt;</span>
+<span class="keyword">bool</span>
+<span class="keyword">operator</span><span class="special">&lt;=(</span><span class="identifier">Seq1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">Seq2</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">b</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.operator.comparison.less_than_equal.parameters"></a><h6>
+<a name="id521701"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
+ <span class="identifier">b</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Instances of Sequence
+ </p>
+ </td>
+<td>
+ <p>
+ Sequence(s) to compare
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.sequence.operator.comparison.less_than_equal.expression_semantics"></a><h6>
+<a name="id521836"></a>
+ <a href="less_than_equal.html#fusion.sequence.operator.comparison.less_than_equal.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">a</span> <span class="special">&lt;=</span> <span class="identifier">b</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Requirements</b></span>:
+ </p>
+<p>
+ For each element, <tt class="computeroutput"><span class="identifier">e1</span></tt>,
+ in sequence <tt class="computeroutput"><span class="identifier">a</span></tt>, and for
+ each element, <tt class="computeroutput"><span class="identifier">e2</span></tt>, in
+ sequence <tt class="computeroutput"><span class="identifier">b</span></tt>, <tt class="computeroutput"><span class="identifier">a</span> <span class="special">&lt;</span> <span class="identifier">b</span></tt> is a valid expression returning a
+ type that is convertible to bool.
+ </p>
+<p>
+ An attempt to compare two Sequences of different lengths results in a
+ compile time error.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns !(b &lt; a).
+ </p>
+<a name="fusion.sequence.operator.comparison.less_than_equal.header"></a><h6>
+<a name="id522016"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">comparison</span><span class="special">/</span><span class="identifier">less_equal</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">less_equal</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.operator.comparison.less_than_equal.example"></a><h6>
+<a name="id522187"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">4</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
+vector<span class="special">&lt;</span><span class="keyword">short</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
+vector<span class="special">&lt;</span><span class="keyword">long</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">v3</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">4.4</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v1</span> <span class="special">&lt;=</span> <span class="identifier">v2</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v2</span> <span class="special">&lt;=</span> <span class="identifier">v3</span><span class="special">);</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="less_than.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="greater_than.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/not_equal.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/operator/comparison/not_equal.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,151 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>not
+ equal</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../comparison.html" title="Comparison">
+<link rel="prev" href="equal.html" title="equal">
+<link rel="next" href="less_than.html" title="less
+ than">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="equal.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="less_than.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.operator.comparison.not_equal"></a><a href="not_equal.html" title="not
+ equal">not
+ equal</a></h5></div></div></div>
+<p>
+ Compare two sequences for inequality.
+ </p>
+<a name="fusion.sequence.operator.comparison.not_equal.synopsis"></a><h6>
+<a name="id519590"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Seq2</span><span class="special">&gt;</span>
+<span class="keyword">bool</span>
+<span class="keyword">operator</span><span class="special">!=(</span><span class="identifier">Seq1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">Seq2</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">b</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.operator.comparison.not_equal.parameters"></a><h6>
+<a name="id519745"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
+ <span class="identifier">b</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Instances of Sequence
+ </p>
+ </td>
+<td>
+ <p>
+ Sequence(s) to compare
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.sequence.operator.comparison.not_equal.expression_semantics"></a><h6>
+<a name="id519879"></a>
+ <a href="not_equal.html#fusion.sequence.operator.comparison.not_equal.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">a</span> <span class="special">!=</span> <span class="identifier">b</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Requirements</b></span>:
+ </p>
+<p>
+ For each element, <tt class="computeroutput"><span class="identifier">e1</span></tt>,
+ in sequence <tt class="computeroutput"><span class="identifier">a</span></tt>, and for
+ each element, <tt class="computeroutput"><span class="identifier">e2</span></tt>, in
+ sequence <tt class="computeroutput"><span class="identifier">b</span></tt>, <tt class="computeroutput"><span class="identifier">a</span> <span class="special">==</span> <span class="identifier">b</span></tt> is a valid expression returning a
+ type that is convertible to bool.
+ </p>
+<p>
+ An attempt to compare two Sequences of different lengths results in a
+ compile time error.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>:
+ </p>
+<p>
+ Returns !(a == b).
+ </p>
+<a name="fusion.sequence.operator.comparison.not_equal.header"></a><h6>
+<a name="id520062"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">comparison</span><span class="special">/</span><span class="identifier">not_equal_to</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">not_equal_to</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.operator.comparison.not_equal.example"></a><h6>
+<a name="id520232"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">v3</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="char">'b'</span><span class="special">);</span>
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">t4</span><span class="special">(</span><span class="number">2</span><span class="special">,</span> <span class="char">'a'</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v1</span> <span class="special">!=</span> <span class="identifier">v3</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v1</span> <span class="special">!=</span> <span class="identifier">t4</span><span class="special">);</span>
+<span class="identifier">assert</span><span class="special">(!(</span><span class="identifier">v1</span> <span class="special">!=</span> <span class="identifier">v2</span><span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="equal.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="less_than.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/operator/i_o.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/operator/i_o.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,137 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>I/O</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../operator.html" title="Operator">
+<link rel="prev" href="../operator.html" title="Operator">
+<link rel="next" href="i_o/in.html" title="in">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../operator.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../operator.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="i_o/in.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.sequence.operator.i_o"></a>I/O</h4></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">in</span></dt>
+<dt><span class="section">out</span></dt>
+</dl></div>
+<p>
+ The I/O operators: <tt class="computeroutput"><span class="special">&lt;&lt;</span></tt>
+ and <tt class="computeroutput"><span class="special">&gt;&gt;</span></tt> work generically
+ on all Fusion sequences. The global <tt class="computeroutput"><span class="keyword">operator</span><span class="special">&lt;&lt;</span></tt> has been overloaded for generic
+ output streams such that Sequence(s)
+ are output by recursively calling <tt class="computeroutput"><span class="keyword">operator</span><span class="special">&lt;&lt;</span></tt> for each element. Analogously,
+ the global <tt class="computeroutput"><span class="keyword">operator</span><span class="special">&gt;&gt;</span></tt>
+ has been overloaded to extract Sequence(s)
+ from generic input streams by recursively calling <tt class="computeroutput"><span class="keyword">operator</span><span class="special">&gt;&gt;</span></tt> for each element.
+ </p>
+<p>
+ The default delimiter between the elements is space, and the Sequence
+ is enclosed in parenthesis. For Example:
+ </p>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">float</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;</span> <span class="identifier">a</span><span class="special">(</span><span class="number">1.0f</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">(</span><span class="string">"Howdy folks!"</span><span class="special">);</span>
+<span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">a</span><span class="special">;</span>
+</pre>
+<p>
+ outputs the vector
+ as: (1.0 2 Howdy folks!)
+ </p>
+<p>
+ The library defines three manipulators for changing the default behavior:
+ </p>
+<div class="variablelist">
+<p class="title"><b>Manipulators</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">tuple_open</span><span class="special">(</span><span class="identifier">arg</span><span class="special">)</span></tt></span></dt>
+<dd><p>
+ Defines the character that is output before the first element.
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">tuple_close</span><span class="special">(</span><span class="identifier">arg</span><span class="special">)</span></tt></span></dt>
+<dd><p>
+ Defines the character that is output after the last element.
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">tuple_delimiter</span><span class="special">(</span><span class="identifier">arg</span><span class="special">)</span></tt></span></dt>
+<dd><p>
+ Defines the delimiter character between elements.
+ </p></dd>
+</dl>
+</div>
+<p>
+ The argument to <tt class="computeroutput"><span class="identifier">tuple_open</span></tt>,
+ <tt class="computeroutput"><span class="identifier">tuple_close</span></tt> and <tt class="computeroutput"><span class="identifier">tuple_delimiter</span></tt> may be a <tt class="computeroutput"><span class="keyword">char</span></tt>, <tt class="computeroutput"><span class="keyword">wchar_t</span></tt>,
+ a C-string, or a wide C-string.
+ </p>
+<p>
+ Example:
+ </p>
+<pre class="programlisting">
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">tuple_open</span><span class="special">(</span><span class="char">'['</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">tuple_close</span><span class="special">(</span><span class="char">']'</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">tuple_delimiter</span><span class="special">(</span><span class="string">", "</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">a</span><span class="special">;</span>
+</pre>
+<p>
+ outputs the same vector, <tt class="computeroutput"><span class="identifier">a</span></tt>
+ as: [1.0, 2, Howdy folks!]
+ </p>
+<p>
+ The same manipulators work with <tt class="computeroutput"><span class="keyword">operator</span><span class="special">&gt;&gt;</span></tt> and <tt class="computeroutput"><span class="identifier">istream</span></tt>
+ as well. Suppose the <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">cin</span></tt>
+ stream contains the following data:
+ </p>
+<pre class="programlisting">
+<span class="special">(</span><span class="number">1</span> <span class="number">2</span> <span class="number">3</span><span class="special">)</span> <span class="special">[</span><span class="number">4</span><span class="special">:</span><span class="number">5</span><span class="special">]</span>
+</pre>
+<p>
+ The code:
+ </p>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">i</span><span class="special">;</span>
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">j</span><span class="special">;</span>
+
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cin</span> <span class="special">&gt;&gt;</span> <span class="identifier">i</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cin</span> <span class="special">&gt;&gt;</span> <span class="identifier">set_open</span><span class="special">(</span><span class="char">'['</span><span class="special">)</span> <span class="special">&gt;&gt;</span> <span class="identifier">set_close</span><span class="special">(</span><span class="char">']'</span><span class="special">)</span> <span class="special">&gt;&gt;</span> <span class="identifier">set_delimiter</span><span class="special">(</span><span class="char">':'</span><span class="special">);</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cin</span> <span class="special">&gt;&gt;</span> <span class="identifier">j</span><span class="special">;</span>
+</pre>
+<p>
+ reads the data into the vector(s) <tt class="computeroutput"><span class="identifier">i</span></tt>
+ and <tt class="computeroutput"><span class="identifier">j</span></tt>.
+ </p>
+<p>
+ Note that extracting Sequence(s)
+ with <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span></tt> or C-style string elements does
+ not generally work, since the streamed Sequence
+ representation may not be unambiguously parseable.
+ </p>
+<a name="fusion.sequence.operator.i_o.header"></a><h5>
+<a name="id516639"></a>
+ Header
+ </h5>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">io</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">io</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../operator.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../operator.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="i_o/in.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/operator/i_o/in.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/operator/i_o/in.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,152 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>in</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../i_o.html" title="I/O">
+<link rel="prev" href="../i_o.html" title="I/O">
+<link rel="next" href="out.html" title="out">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../i_o.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../i_o.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="out.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.operator.i_o.in"></a>in</h5></div></div></div>
+<a name="fusion.sequence.operator.i_o.in.description"></a><h6>
+<a name="id516818"></a>
+ Description
+ </h6>
+<p>
+ Read a Sequence from an input
+ stream.
+ </p>
+<a name="fusion.sequence.operator.i_o.in.synopsis"></a><h6>
+<a name="id516856"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">IStream</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="identifier">IStream</span><span class="special">&amp;</span>
+<span class="keyword">operator</span><span class="special">&gt;&gt;(</span><span class="identifier">IStream</span><span class="special">&amp;</span> <span class="identifier">is</span><span class="special">,</span> <span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.operator.i_o.in.parameters"></a><h6>
+<a name="id517002"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ is
+ </p>
+ </td>
+<td>
+ <p>
+ An input stream.
+ </p>
+ </td>
+<td>
+ <p>
+ Stream to extract information from.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ seq
+ </p>
+ </td>
+<td>
+ <p>
+ A Sequence.
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to read.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.sequence.operator.i_o.in.expression_semantics"></a><h6>
+<a name="id517133"></a>
+ <a href="in.html#fusion.sequence.operator.i_o.in.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">is</span> <span class="special">&gt;&gt;</span> <span class="identifier">seq</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: IStream&amp;
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: For each element, <tt class="computeroutput"><span class="identifier">e</span></tt>, in sequence, <tt class="computeroutput"><span class="identifier">seq</span></tt>,
+ call <tt class="computeroutput"><span class="identifier">is</span> <span class="special">&gt;&gt;</span>
+ <span class="identifier">e</span></tt>.
+ </p>
+<a name="fusion.sequence.operator.i_o.in.header"></a><h6>
+<a name="id517253"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">io</span><span class="special">/</span><span class="identifier">in</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">in</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.operator.i_o.in.example"></a><h6>
+<a name="id517421"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cin</span> <span class="special">&gt;&gt;</span> <span class="identifier">v</span><span class="special">;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../i_o.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../i_o.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="out.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/sequence/operator/i_o/out.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/sequence/operator/i_o/out.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,151 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>out</title>
+<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../i_o.html" title="I/O">
+<link rel="prev" href="in.html" title="in">
+<link rel="next" href="../comparison.html" title="Comparison">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="in.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../i_o.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../comparison.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h5 class="title">
+<a name="fusion.sequence.operator.i_o.out"></a>out</h5></div></div></div>
+<a name="fusion.sequence.operator.i_o.out.description"></a><h6>
+<a name="id517582"></a>
+ Description
+ </h6>
+<p>
+ Write a Sequence to an output
+ stream.
+ </p>
+<a name="fusion.sequence.operator.i_o.out.synopsis"></a><h6>
+<a name="id517620"></a>
+ Synopsis
+ </h6>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">OStream</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="identifier">OStream</span><span class="special">&amp;</span>
+<span class="keyword">operator</span><span class="special">&lt;&lt;(</span><span class="identifier">OStream</span><span class="special">&amp;</span> <span class="identifier">os</span><span class="special">,</span> <span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
+</pre>
+<a name="fusion.sequence.operator.i_o.out.parameters"></a><h6>
+<a name="id517767"></a>
+ Parameters
+ </h6>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ os
+ </p>
+ </td>
+<td>
+ <p>
+ An output stream.
+ </p>
+ </td>
+<td>
+ <p>
+ Stream to write information to.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ seq
+ </p>
+ </td>
+<td>
+ <p>
+ A Sequence.
+ </p>
+ </td>
+<td>
+ <p>
+ The sequence to write.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.sequence.operator.i_o.out.expression_semantics"></a><h6>
+<a name="id517897"></a>
+ <a href="out.html#fusion.sequence.operator.i_o.out.expression_semantics">Expression
+ Semantics</a>
+ </h6>
+<pre class="programlisting">
+<span class="identifier">os</span> <span class="special">&lt;&lt;</span> <span class="identifier">seq</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: OStream&amp;
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: For each element, <tt class="computeroutput"><span class="identifier">e</span></tt>, in sequence, <tt class="computeroutput"><span class="identifier">seq</span></tt>,
+ call <tt class="computeroutput"><span class="identifier">os</span> <span class="special">&lt;&lt;</span>
+ <span class="identifier">e</span></tt>.
+ </p>
+<a name="fusion.sequence.operator.i_o.out.header"></a><h6>
+<a name="id518018"></a>
+ Header
+ </h6>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">io</span><span class="special">/</span><span class="identifier">out</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">out</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.sequence.operator.i_o.out.example"></a><h6>
+<a name="id518187"></a>
+ Example
+ </h6>
+<pre class="programlisting">
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> make_vector<span class="special">(</span><span class="number">123</span><span class="special">,</span> <span class="string">"Hello"</span><span class="special">,</span> <span class="char">'x'</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="in.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../i_o.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../comparison.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/support.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/support.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,51 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Support</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="organization.html" title="Organization">
+<link rel="next" href="support/is_sequence.html" title="is_sequence">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="organization.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="support/is_sequence.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.support"></a>Support</h2></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">is_sequence</span></dt>
+<dt><span class="section">is_view</span></dt>
+<dt><span class="section">tag_of</span></dt>
+<dt><span class="section">category_of</span></dt>
+<dt><span class="section">deduce</span></dt>
+<dt><span class="section">deduce_sequence</span></dt>
+<dt><span class="section">pair</span></dt>
+</dl></div>
+<p>
+ A couple of classes and metafunctions provide basic support for Fusion.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="organization.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="support/is_sequence.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/support/category_of.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/support/category_of.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,193 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>category_of</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../support.html" title="Support">
+<link rel="prev" href="tag_of.html" title="tag_of">
+<link rel="next" href="deduce.html" title="deduce">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="tag_of.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../support.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="deduce.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.support.category_of"></a>category_of</h3></div></div></div>
+<a name="fusion.support.category_of.description"></a><h4>
+<a name="id462833"></a>
+ Description
+ </h4>
+<p>
+ A metafunction that establishes the conceptual classification of a particular
+ Sequence or Iterator
+ (see Iterator Concepts and
+ Sequence Concepts).
+ </p>
+<a name="fusion.support.category_of.synopsis"></a><h4>
+<a name="id462901"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">traits</span>
+<span class="special">{</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">category_of</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.support.category_of.parameters"></a><h4>
+<a name="id463031"></a>
+ Parameters
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The type to query.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.support.category_of.expression_semantics"></a><h4>
+<a name="id463137"></a>
+ <a href="category_of.html#fusion.support.category_of.expression_semantics">Expression
+ Semantics</a>
+ </h4>
+<pre class="programlisting">
+<span class="keyword">typedef</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">category_of</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">category</span><span class="special">;</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>:
+ </p>
+<p>
+ For Iterators, the return type is derived from one of:
+ </p>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">fusion</span>
+<span class="special">{</span>
+ <span class="keyword">struct</span> <span class="identifier">incrementable_traversal_tag</span> <span class="special">{};</span>
+
+ <span class="keyword">struct</span> <span class="identifier">single_pass_traversal_tag</span>
+ <span class="special">:</span> <span class="identifier">incrementable_traversal_tag</span> <span class="special">{};</span>
+
+ <span class="keyword">struct</span> <span class="identifier">forward_traversal_tag</span>
+ <span class="special">:</span> <span class="identifier">single_pass_traversal_tag</span> <span class="special">{};</span>
+
+ <span class="keyword">struct</span> <span class="identifier">bidirectional_traversal_tag</span>
+ <span class="special">:</span> <span class="identifier">forward_traversal_tag</span> <span class="special">{};</span>
+
+ <span class="keyword">struct</span> <span class="identifier">random_access_traversal_tag</span>
+ <span class="special">:</span> <span class="identifier">bidirectional_traversal_tag</span> <span class="special">{};</span>
+<span class="special">}}</span>
+</pre>
+<p>
+ For Sequences, the return type is derived from one of:
+ </p>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">fusion</span>
+<span class="special">{</span>
+ <span class="keyword">struct</span> <span class="identifier">incrementable_sequence_tag</span> <span class="special">{};</span>
+
+ <span class="keyword">struct</span> <span class="identifier">single_pass_sequence_tag</span>
+ <span class="special">:</span> <span class="identifier">incrementable_sequence_tag</span> <span class="special">{};</span>
+
+ <span class="keyword">struct</span> <span class="identifier">forward_traversal_tag</span>
+ <span class="special">:</span> <span class="identifier">single_pass_sequence_tag</span> <span class="special">{};</span>
+
+ <span class="keyword">struct</span> <span class="identifier">bidirectional_traversal_tag</span>
+ <span class="special">:</span> <span class="identifier">forward_traversal_tag</span> <span class="special">{};</span>
+
+ <span class="keyword">struct</span> <span class="identifier">random_access_traversal_tag</span>
+ <span class="special">:</span> <span class="identifier">bidirectional_traversal_tag</span> <span class="special">{};</span>
+<span class="special">}}</span>
+</pre>
+<p>
+ And optionally from:
+ </p>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">fusion</span>
+<span class="special">{</span>
+ <span class="keyword">struct</span> <span class="identifier">associative_sequence_tag</span> <span class="special">{};</span>
+<span class="special">}}</span>
+</pre>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Establishes the conceptual classification
+ of a particular Sequence or Iterator.
+ </p>
+<a name="fusion.support.category_of.header"></a><h4>
+<a name="id463741"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">support</span><span class="special">/</span><span class="identifier">category_of</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">category_of</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.support.category_of.example"></a><h4>
+<a name="id463898"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="keyword">using</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_base_of</span><span class="special">;</span>
+<span class="keyword">typedef</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">category_of</span><span class="special">&lt;</span>list<span class="special">&lt;&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">list_category</span><span class="special">;</span>
+<span class="keyword">typedef</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">category_of</span><span class="special">&lt;</span>vector<span class="special">&lt;&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">vector_category</span><span class="special">;</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span> <span class="identifier">is_base_of</span><span class="special">&lt;</span><span class="identifier">forward_traversal_tag</span><span class="special">,</span> <span class="identifier">list_category</span><span class="special">&gt;</span> <span class="special">));</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span> <span class="identifier">is_base_of</span><span class="special">&lt;</span><span class="identifier">random_access_traversal_tag</span><span class="special">,</span> <span class="identifier">vector_category</span><span class="special">&gt;</span> <span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="tag_of.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../support.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="deduce.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/support/deduce.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/support/deduce.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,100 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>deduce</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../support.html" title="Support">
+<link rel="prev" href="category_of.html" title="category_of">
+<link rel="next" href="deduce_sequence.html" title="deduce_sequence">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="category_of.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../support.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="deduce_sequence.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.support.deduce"></a>deduce</h3></div></div></div>
+<a name="fusion.support.deduce.description"></a><h4>
+<a name="id464218"></a>
+ Description
+ </h4>
+<p>
+ Metafunction to apply <a href="../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
+ conversion</em></span></a> to the full argument type.
+ </p>
+<p>
+ It removes references to <tt class="computeroutput"><span class="keyword">const</span></tt>,
+ references to array types are kept, even if the array is <tt class="computeroutput"><span class="keyword">const</span></tt>.
+ Reference wrappers are removed (see boost::ref).
+ </p>
+<a name="fusion.support.deduce.header"></a><h4>
+<a name="id464317"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">support</span><span class="special">/</span><span class="identifier">deduce</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">deduce</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.support.deduce.synopsis"></a><h4>
+<a name="id464474"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">traits</span>
+<span class="special">{</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">deduce</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.support.deduce.example"></a><h4>
+<a name="id464605"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">holder</span>
+<span class="special">{</span>
+ <span class="keyword">typename</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">deduce</span><span class="special">&lt;</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;&gt;::</span><span class="identifier">type</span> <span class="identifier">element</span><span class="special">;</span>
+
+ <span class="identifier">holder</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a</span><span class="special">)</span>
+ <span class="special">:</span> <span class="identifier">element</span><span class="special">(</span><span class="identifier">a</span><span class="special">)</span>
+ <span class="special">{</span> <span class="special">}</span>
+<span class="special">};</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="identifier">holder</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="identifier">make_holder</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a</span><span class="special">)</span>
+<span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">holder</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;(</span><span class="identifier">a</span><span class="special">);</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.support.deduce.see_also"></a><h4>
+<a name="id464970"></a>
+ See also
+ </h4>
+<div class="itemizedlist"><ul type="disc"><li>deduce_sequence</li></ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="category_of.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../support.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="deduce_sequence.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/support/deduce_sequence.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/support/deduce_sequence.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,102 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>deduce_sequence</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../support.html" title="Support">
+<link rel="prev" href="deduce.html" title="deduce">
+<link rel="next" href="pair.html" title="pair">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="deduce.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../support.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="pair.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.support.deduce_sequence"></a>deduce_sequence</h3></div></div></div>
+<a name="fusion.support.deduce_sequence.description"></a><h4>
+<a name="id465038"></a>
+ Description
+ </h4>
+<p>
+ Applies <a href="../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
+ conversion</em></span></a> to each element in a <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>. The resulting type is a <a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> that provides a converting constructor accepting the
+ original type as its argument.
+ </p>
+<a name="fusion.support.deduce_sequence.header"></a><h4>
+<a name="id465099"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">support</span><span class="special">/</span><span class="identifier">deduce_sequence</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">deduce_sequence</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.support.deduce_sequence.synopsis"></a><h4>
+<a name="id465257"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">traits</span>
+<span class="special">{</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">deduce_sequence</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.support.deduce_sequence.example"></a><h4>
+<a name="id465389"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">holder</span>
+<span class="special">{</span>
+ <span class="keyword">typename</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">deduce_sequence</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">element</span><span class="special">;</span>
+
+ <span class="identifier">holder</span><span class="special">(</span><span class="identifier">Seq</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a</span><span class="special">)</span>
+ <span class="special">:</span> <span class="identifier">element</span><span class="special">(</span><span class="identifier">a</span><span class="special">)</span>
+ <span class="special">{</span> <span class="special">}</span>
+<span class="special">};</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T0</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">&gt;</span>
+<span class="identifier">holder</span><span class="special">&lt;</span> vector<span class="special">&lt;</span><span class="identifier">T0</span> <span class="keyword">const</span> <span class="special">&amp;,</span> <span class="identifier">T1</span> <span class="keyword">const</span> <span class="special">&amp;&gt;</span> <span class="special">&gt;</span>
+<span class="identifier">make_holder</span><span class="special">(</span><span class="identifier">T0</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a0</span><span class="special">,</span> <span class="identifier">T1</span> <span class="keyword">const</span> <span class="special">&amp;</span> <span class="identifier">a1</span><span class="special">)</span>
+<span class="special">{</span>
+ <span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="identifier">T0</span> <span class="keyword">const</span> <span class="special">&amp;,</span> <span class="identifier">T1</span> <span class="keyword">const</span> <span class="special">&amp;&gt;</span> <span class="identifier">arg_vec_t</span><span class="special">;</span>
+ <span class="keyword">return</span> <span class="identifier">holder</span><span class="special">&lt;</span><span class="identifier">arg_vec_t</span><span class="special">&gt;(</span> <span class="identifier">arg_vec_t</span><span class="special">(</span><span class="identifier">a0</span><span class="special">,</span><span class="identifier">a1</span><span class="special">)</span> <span class="special">);</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.support.deduce_sequence.see_also"></a><h4>
+<a name="id465948"></a>
+ See also
+ </h4>
+<div class="itemizedlist"><ul type="disc"><li>deduce</li></ul></div>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="deduce.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../support.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="pair.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/support/is_sequence.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/support/is_sequence.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,147 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>is_sequence</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../support.html" title="Support">
+<link rel="prev" href="../support.html" title="Support">
+<link rel="next" href="is_view.html" title="is_view">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../support.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../support.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="is_view.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.support.is_sequence"></a>is_sequence</h3></div></div></div>
+<a name="fusion.support.is_sequence.description"></a><h4>
+<a name="id459579"></a>
+ Description
+ </h4>
+<p>
+ Metafunction that evaluates to <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>
+ if a certain type <tt class="computeroutput"><span class="identifier">T</span></tt> is a
+ conforming Fusion Sequence, <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span></tt>
+ otherwise. This may be specialized to accomodate clients which provide Fusion
+ conforming sequences.
+ </p>
+<a name="fusion.support.is_sequence.synopsis"></a><h4>
+<a name="id459672"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">traits</span>
+<span class="special">{</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">is_sequence</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.support.is_sequence.parameters"></a><h4>
+<a name="id459804"></a>
+ Parameters
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The type to query.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.support.is_sequence.expression_semantics"></a><h4>
+<a name="id459910"></a>
+ <a href="is_sequence.html#fusion.support.is_sequence.expression_semantics">Expression
+ Semantics</a>
+ </h4>
+<pre class="programlisting">
+<span class="keyword">typedef</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">is_sequence</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">c</span><span class="special">;</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Boolean Constant</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Metafunction that evaluates to
+ <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt> if a certain type <tt class="computeroutput"><span class="identifier">T</span></tt>
+ is a conforming Fusion sequence, <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span></tt>
+ otherwise.
+ </p>
+<a name="fusion.support.is_sequence.header"></a><h4>
+<a name="id460080"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">support</span><span class="special">/</span><span class="identifier">is_sequence</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">is_sequence</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.support.is_sequence.example"></a><h4>
+<a name="id460237"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="identifier">BOOST_MPL_ASSERT_NOT</span><span class="special">((</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">is_sequence</span><span class="special">&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="special">));</span>
+<span class="identifier">BOOST_MPL_ASSERT_NOT</span><span class="special">((</span> <span class="identifier">is_sequence</span><span class="special">&lt;</span> <span class="keyword">int</span> <span class="special">&gt;</span> <span class="special">));</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">is_sequence</span><span class="special">&lt;</span>list<span class="special">&lt;&gt;</span> <span class="special">&gt;</span> <span class="special">));</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">is_sequence</span><span class="special">&lt;</span>list<span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="special">));</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">is_sequence</span><span class="special">&lt;</span>vector<span class="special">&lt;&gt;</span> <span class="special">&gt;</span> <span class="special">));</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">is_sequence</span><span class="special">&lt;</span>vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../support.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../support.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="is_view.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/support/is_view.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/support/is_view.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,151 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>is_view</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../support.html" title="Support">
+<link rel="prev" href="is_sequence.html" title="is_sequence">
+<link rel="next" href="tag_of.html" title="tag_of">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="is_sequence.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../support.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tag_of.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.support.is_view"></a>is_view</h3></div></div></div>
+<a name="fusion.support.is_view.description"></a><h4>
+<a name="id460682"></a>
+ Description
+ </h4>
+<p>
+ Metafunction that evaluates to <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>
+ if a certain type <tt class="computeroutput"><span class="identifier">T</span></tt> is a
+ conforming Fusion View, <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span></tt>
+ otherwise. A view is a specialized sequence that does not actually contain
+ data. Views hold sequences which may be other views. In general, views are
+ held by other views by value, while non-views are held by other views by
+ reference. <tt class="computeroutput"><span class="identifier">is_view</span></tt> may be
+ specialized to accomodate clients providing Fusion conforming views.
+ </p>
+<a name="fusion.support.is_view.synopsis"></a><h4>
+<a name="id460794"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">traits</span>
+<span class="special">{</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">is_view</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.support.is_view.parameters"></a><h4>
+<a name="id460924"></a>
+ Parameters
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The type to query.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.support.is_view.expression_semantics"></a><h4>
+<a name="id461030"></a>
+ Expression Semantics
+ </h4>
+<pre class="programlisting">
+<span class="keyword">typedef</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">is_view</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">c</span><span class="special">;</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Boolean Constant</a>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Metafunction that evaluates to
+ <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt> if a certain type <tt class="computeroutput"><span class="identifier">T</span></tt>
+ is a conforming Fusion view, <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span></tt>
+ otherwise.
+ </p>
+<a name="fusion.support.is_view.header"></a><h4>
+<a name="id461201"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">support</span><span class="special">/</span><span class="identifier">is_view</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">is_view</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.support.is_view.example"></a><h4>
+<a name="id461357"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="identifier">BOOST_MPL_ASSERT_NOT</span><span class="special">((</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">is_view</span><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="special">));</span>
+<span class="identifier">BOOST_MPL_ASSERT_NOT</span><span class="special">((</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">is_view</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="special">));</span>
+
+<span class="keyword">using</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span>
+<span class="keyword">using</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_pointer</span><span class="special">;</span>
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">*,</span> <span class="keyword">char</span><span class="special">,</span> <span class="keyword">long</span><span class="special">*,</span> <span class="keyword">bool</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">vector_type</span><span class="special">;</span>
+<span class="keyword">typedef</span> filter_view<span class="special">&lt;</span><span class="identifier">vector_type</span><span class="special">,</span> <span class="identifier">is_pointer</span><span class="special">&lt;</span><span class="identifier">_</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="identifier">filter_view_type</span><span class="special">;</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">is_view</span><span class="special">&lt;</span><span class="identifier">filter_view_type</span><span class="special">&gt;</span> <span class="special">));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="is_sequence.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../support.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tag_of.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/support/pair.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/support/pair.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,338 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>pair</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../support.html" title="Support">
+<link rel="prev" href="deduce_sequence.html" title="deduce_sequence">
+<link rel="next" href="../iterator.html" title="Iterator">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="deduce_sequence.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../support.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../iterator.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.support.pair"></a>pair</h3></div></div></div>
+<a name="fusion.support.pair.description"></a><h4>
+<a name="id466014"></a>
+ Description
+ </h4>
+<p>
+ Fusion <tt class="computeroutput"><span class="identifier">pair</span></tt> type is a half
+ runtime pair. A half runtime pair is similar to a std::pair,
+ but, unlike std::pair,
+ the first type does not have data. It is used as elements in <span class="underline">_map</span>_s,
+ for example.
+ </p>
+<a name="fusion.support.pair.synopsis"></a><h4>
+<a name="id466118"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">First</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Second</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">pair</span><span class="special">;</span>
+
+<span class="keyword">namespace</span> <span class="identifier">result_of</span>
+<span class="special">{</span>
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">First</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Second</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">first</span><span class="special">;</span>
+
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">First</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Second</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">second</span><span class="special">;</span>
+
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">First</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Second</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">make_pair</span><span class="special">;</span>
+<span class="special">}</span>
+
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">First</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Second</span><span class="special">&gt;</span>
+<span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">make_pair</span><span class="special">&lt;</span><span class="identifier">First</span><span class="special">,</span><span class="identifier">Second</span><span class="special">&gt;::</span><span class="identifier">type</span>
+<span class="identifier">make_pair</span><span class="special">(</span><span class="identifier">Second</span> <span class="keyword">const</span> <span class="special">&amp;);</span>
+</pre>
+<a name="fusion.support.pair.template_parameters"></a><h4>
+<a name="id466561"></a>
+ Template parameters
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ First
+ </p>
+ </td>
+<td>
+ <p>
+ The first type. This is purely a type. No data is held.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ Second
+ </p>
+ </td>
+<td>
+ <p>
+ The second type. This contains data.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">P</span></tt></span></dt>
+<dd><p>
+ Fusion pair type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">p</span></tt>,
+ <tt class="computeroutput"><span class="identifier">p2</span></tt></span></dt>
+<dd><p>
+ Fusion pairs
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">F</span></tt>,
+ <tt class="computeroutput"><span class="identifier">S</span></tt></span></dt>
+<dd><p>
+ Arbitrary types
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
+<dd><p>
+ Value of type <tt class="computeroutput"><span class="identifier">S</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">o</span></tt></span></dt>
+<dd><p>
+ Output stream
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">i</span></tt></span></dt>
+<dd><p>
+ Input stream
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.support.pair.expression_semantics"></a><h4>
+<a name="id466841"></a>
+ Expression Semantics
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">P</span><span class="special">::</span><span class="identifier">first_type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The type of the first template parameter, <tt class="computeroutput"><span class="identifier">F</span></tt>,
+ equivalent to <tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">first</span><span class="special">&lt;</span><span class="identifier">P</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">P</span><span class="special">::</span><span class="identifier">second_type</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ The type of the second template parameter, <tt class="computeroutput"><span class="identifier">S</span></tt>,
+ equivalent to <tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">second</span><span class="special">&lt;</span><span class="identifier">P</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">P</span><span class="special">()</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Default construction.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">P</span><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Construct a pair given value for the second type, <tt class="computeroutput"><span class="identifier">s</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">P</span><span class="special">(</span><span class="identifier">p2</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Copy constructs a pair from another pair, <tt class="computeroutput"><span class="identifier">p2</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">p</span> <span class="special">=</span>
+ <span class="identifier">p2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Assigns a pair, p1, from another pair, <tt class="computeroutput"><span class="identifier">p2</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ make_pair&lt;F&gt;(s)
+ </p>
+ </td>
+<td>
+ <p>
+ Make a pair given the first type, <tt class="computeroutput"><span class="identifier">F</span></tt>,
+ and a value for the second type, <tt class="computeroutput"><span class="identifier">s</span></tt>.
+ The second type assumes the type of <tt class="computeroutput"><span class="identifier">s</span></tt>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">o</span> <span class="special">&lt;&lt;</span>
+ <span class="identifier">p</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Output <tt class="computeroutput"><span class="identifier">p</span></tt> to output
+ stream, <tt class="computeroutput"><span class="identifier">o</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">i</span> <span class="special">&gt;&gt;</span>
+ <span class="identifier">p</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Input <tt class="computeroutput"><span class="identifier">p</span></tt> from input
+ stream, <tt class="computeroutput"><span class="identifier">i</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">p</span> <span class="special">==</span>
+ <span class="identifier">p2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Tests two pairs for equality.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">p</span> <span class="special">!=</span>
+ <span class="identifier">p2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Tests two pairs for inequality.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.support.pair.header"></a><h4>
+<a name="id467556"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">support</span><span class="special">/</span><span class="identifier">pair</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">pair</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.support.pair.example"></a><h4>
+<a name="id467712"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="identifier">pair</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">p</span><span class="special">(</span><span class="char">'X'</span><span class="special">);</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">p</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">make_pair</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;(</span><span class="char">'X'</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+<span class="identifier">assert</span><span class="special">((</span><span class="identifier">p</span> <span class="special">==</span> <span class="identifier">make_pair</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;(</span><span class="char">'X'</span><span class="special">)));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="deduce_sequence.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../support.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../iterator.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/support/tag_of.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/support/tag_of.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,147 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>tag_of</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../support.html" title="Support">
+<link rel="prev" href="is_view.html" title="is_view">
+<link rel="next" href="category_of.html" title="category_of">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="is_view.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../support.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="category_of.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.support.tag_of"></a>tag_of</h3></div></div></div>
+<a name="fusion.support.tag_of.description"></a><h4>
+<a name="id461807"></a>
+ Description
+ </h4>
+<p>
+ All conforming Fusion sequences and iterators have an associated tag type.
+ The purpose of the tag is to enable <a href="../notes.html#fusion.notes.tag_dispatching"><span class="emphasis"><em>tag
+ dispatching</em></span></a> from Intrinsic
+ functions to implementations appropriate for the type.
+ </p>
+<p>
+ This metafunction may be specialized to accomodate clients providing Fusion
+ conforming sequences.
+ </p>
+<a name="fusion.support.tag_of.synopsis"></a><h4>
+<a name="id461866"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">namespace</span> <span class="identifier">traits</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">tag_of</span>
+ <span class="special">{</span>
+ <span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
+ <span class="special">};</span>
+<span class="special">}</span>
+</pre>
+<a name="fusion.support.tag_of.parameters"></a><h4>
+<a name="id461996"></a>
+ Parameters
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Requirement
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ The type to query.
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.support.tag_of.expression_semantics"></a><h4>
+<a name="id462102"></a>
+ Expression Semantics
+ </h4>
+<pre class="programlisting">
+<span class="keyword">typedef</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">tag</span><span class="special">;</span>
+</pre>
+<p>
+ <span class="bold"><b>Return type</b></span>: Any type.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the tag type associated
+ with <tt class="computeroutput"><span class="identifier">T</span></tt>.
+ </p>
+<a name="fusion.support.tag_of.header"></a><h4>
+<a name="id462221"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">support</span><span class="special">/</span><span class="identifier">tag_of</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">tag_of</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.support.tag_of.example"></a><h4>
+<a name="id462377"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="keyword">typedef</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span><span class="special">&lt;</span>list<span class="special">&lt;&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">tag1</span><span class="special">;</span>
+<span class="keyword">typedef</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span><span class="special">&lt;</span>list<span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">tag2</span><span class="special">;</span>
+<span class="keyword">typedef</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span><span class="special">&lt;</span>vector<span class="special">&lt;&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">tag3</span><span class="special">;</span>
+<span class="keyword">typedef</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span><span class="special">&lt;</span>vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">tag4</span><span class="special">;</span>
+
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><span class="identifier">tag1</span><span class="special">,</span> <span class="identifier">tag2</span><span class="special">&gt;));</span>
+<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><span class="identifier">tag3</span><span class="special">,</span> <span class="identifier">tag4</span><span class="special">&gt;));</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="is_view.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../support.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="category_of.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/tuple.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/tuple.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,65 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Tuple</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="algorithm/transformation/metafunctions/push_front.html" title="push_front">
+<link rel="next" href="tuple/class_template_tuple.html" title="Class template tuple">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="algorithm/transformation/metafunctions/push_front.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tuple/class_template_tuple.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.tuple"></a>Tuple</h2></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">Class template tuple</span></dt>
+<dd><dl>
+<dt><span class="section">Construction</span></dt>
+<dt><span class="section"><a href="tuple/class_template_tuple/tuple_creation_functions.html">Tuple
+ creation functions</a></span></dt>
+<dt><span class="section"><a href="tuple/class_template_tuple/tuple_helper_classes.html">Tuple
+ helper classes</a></span></dt>
+<dt><span class="section"><a href="tuple/class_template_tuple/element_access.html">Element
+ access</a></span></dt>
+<dt><span class="section"><a href="tuple/class_template_tuple/relational_operators.html">Relational
+ operators</a></span></dt>
+</dl></dd>
+<dt><span class="section">Pairs</span></dt>
+</dl></div>
+<p>
+ The TR1 technical report describes extensions to the C++ standard library.
+ Many of these extensions will be considered for the next iteration of the C++
+ standard. TR1 describes a tuple type, and support for treating <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></tt>
+ as a type of tuple.
+ </p>
+<p>
+ Fusion provides full support for the <a href="http://std.dkuug.dk/jtc1/sc22/wg21/docs/papers/2002/n1403.pdf" target="_top">TR1
+ Tuple</a> interface, and the extended uses of <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></tt> described
+ in the TR1 document.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="algorithm/transformation/metafunctions/push_front.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tuple/class_template_tuple.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,76 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Class template tuple</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../tuple.html" title="Tuple">
+<link rel="prev" href="../tuple.html" title="Tuple">
+<link rel="next" href="class_template_tuple/construction.html" title="Construction">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../tuple.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tuple.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="class_template_tuple/construction.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.tuple.class_template_tuple"></a>Class template tuple</h3></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">Construction</span></dt>
+<dt><span class="section"><a href="class_template_tuple/tuple_creation_functions.html">Tuple
+ creation functions</a></span></dt>
+<dt><span class="section"><a href="class_template_tuple/tuple_helper_classes.html">Tuple
+ helper classes</a></span></dt>
+<dt><span class="section"><a href="class_template_tuple/element_access.html">Element
+ access</a></span></dt>
+<dt><span class="section"><a href="class_template_tuple/relational_operators.html">Relational
+ operators</a></span></dt>
+</dl></div>
+<p>
+ Fusion's implementation of the <a href="http://std.dkuug.dk/jtc1/sc22/wg21/docs/papers/2002/n1403.pdf" target="_top">TR1
+ Tuple</a> is also a fusion <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>. As such the fusion tuple type provides a lot of functionality
+ beyond that required by TR1.
+ </p>
+<p>
+ Currently tuple is basically a synonym for vector, although this may be changed
+ in future releases of fusion.
+ </p>
+<a name="fusion.tuple.class_template_tuple.synopsis"></a><h4>
+<a name="id632736"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span>
+ <span class="keyword">typename</span> <span class="identifier">T1</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">T2</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span><span class="special">,</span>
+ <span class="special">...</span>
+ <span class="keyword">typename</span> <span class="identifier">TN</span> <span class="special">=</span> <span class="emphasis"><em>unspecified</em></span><span class="special">&gt;</span>
+<span class="keyword">class</span> <span class="identifier">tuple</span><span class="special">;</span>
+</pre>
+<p>
+ /tuple.hpp&gt;
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../tuple.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tuple.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="class_template_tuple/construction.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple/construction.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple/construction.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,130 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Construction</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../class_template_tuple.html" title="Class template tuple">
+<link rel="prev" href="../class_template_tuple.html" title="Class template tuple">
+<link rel="next" href="tuple_creation_functions.html" title="Tuple
+ creation functions">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../class_template_tuple.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../class_template_tuple.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tuple_creation_functions.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.tuple.class_template_tuple.construction"></a>Construction</h4></div></div></div>
+<a name="fusion.tuple.class_template_tuple.construction.description"></a><h5>
+<a name="id632906"></a>
+ Description
+ </h5>
+<p>
+ The <a href="http://std.dkuug.dk/jtc1/sc22/wg21/docs/papers/2002/n1403.pdf" target="_top">TR1
+ Tuple</a> type provides a default constructor, a constructor that takes
+ initializers for all of its elements, a copy constructor, and a converting
+ copy constructor. The details of the various constructors are described
+ in this section.
+ </p>
+<a name="fusion.tuple.class_template_tuple.construction.specification"></a><h5>
+<a name="id632947"></a>
+ Specification
+ </h5>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">T1</span>
+ <span class="special">...</span> <span class="identifier">TN</span></tt>,
+ <tt class="computeroutput"><span class="identifier">U1</span> <span class="special">...</span>
+ <span class="identifier">UN</span></tt></span></dt>
+<dd><p>
+ Tuple element types
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">P1</span>
+ <span class="special">...</span> <span class="identifier">PN</span></tt></span></dt>
+<dd><p>
+ Parameter types
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">Ti</span></tt>,
+ <tt class="computeroutput"><span class="identifier">Ui</span></tt></span></dt>
+<dd><p>
+ The type of the <tt class="computeroutput"><span class="identifier">i</span></tt>th
+ element of a tuple
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">Pi</span></tt></span></dt>
+<dd><p>
+ The type of the <tt class="computeroutput"><span class="identifier">i</span></tt>th
+ parameter
+ </p></dd>
+</dl>
+</div>
+<pre class="programlisting">
+<span class="identifier">tuple</span><span class="special">();</span>
+</pre>
+<p>
+ <span class="bold"><b>Requirements</b></span>: Each <tt class="computeroutput"><span class="identifier">Ti</span></tt>
+ is default constructable.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Default initializes each element
+ of the tuple.
+ </p>
+<pre class="programlisting">
+<span class="identifier">tuple</span><span class="special">(</span><span class="identifier">P1</span><span class="special">,</span><span class="identifier">P2</span><span class="special">,...,</span><span class="identifier">PN</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Requirements</b></span>: Each <tt class="computeroutput"><span class="identifier">Pi</span></tt>
+ is <tt class="computeroutput"><span class="identifier">Ti</span></tt> if <tt class="computeroutput"><span class="identifier">Ti</span></tt> is a reference type, <tt class="computeroutput"><span class="keyword">const</span> <span class="identifier">Ti</span><span class="special">&amp;</span></tt> otherwise.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Copy initializes each element
+ with the corresponding parameter.
+ </p>
+<pre class="programlisting">
+<span class="identifier">tuple</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">tuple</span><span class="special">&amp;</span> <span class="identifier">t</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Requirements</b></span>: Each <tt class="computeroutput"><span class="identifier">Ti</span></tt>
+ should be copy constructable.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Copy constructs each element
+ of <tt class="computeroutput"><span class="special">*</span><span class="keyword">this</span></tt>
+ with the corresponding element of <tt class="computeroutput"><span class="identifier">t</span></tt>.
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">U1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">U2</span><span class="special">,</span> <span class="special">...,</span> <span class="keyword">typename</span> <span class="identifier">UN</span><span class="special">&gt;</span>
+<span class="identifier">tuple</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">tuple</span><span class="special">&lt;</span><span class="identifier">U1</span><span class="special">,</span> <span class="identifier">U2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">UN</span><span class="special">&gt;&amp;</span> <span class="identifier">t</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Requirements</b></span>: Each <tt class="computeroutput"><span class="identifier">Ti</span></tt>
+ shall be constructible from the corresponding <tt class="computeroutput"><span class="identifier">Ui</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Constructs each element of
+ <tt class="computeroutput"><span class="special">*</span><span class="keyword">this</span></tt>
+ with the corresponding element of <tt class="computeroutput"><span class="identifier">t</span></tt>.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../class_template_tuple.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../class_template_tuple.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tuple_creation_functions.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple/element_access.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple/element_access.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,95 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Element
+ access</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../class_template_tuple.html" title="Class template tuple">
+<link rel="prev" href="tuple_helper_classes.html" title="Tuple
+ helper classes">
+<link rel="next" href="relational_operators.html" title="Relational
+ operators">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="tuple_helper_classes.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../class_template_tuple.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="relational_operators.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.tuple.class_template_tuple.element_access"></a><a href="element_access.html" title="Element
+ access">Element
+ access</a></h4></div></div></div>
+<a name="fusion.tuple.class_template_tuple.element_access.description"></a><h5>
+<a name="id634901"></a>
+ Description
+ </h5>
+<p>
+ The <a href="http://std.dkuug.dk/jtc1/sc22/wg21/docs/papers/2002/n1403.pdf" target="_top">TR1
+ Tuple</a> provides the <tt class="computeroutput"><span class="identifier">get</span></tt>
+ function to provide access to it's elements by zero based numeric index.
+ </p>
+<a name="fusion.tuple.class_template_tuple.element_access.specification"></a><h5>
+<a name="id634950"></a>
+ Specification
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="identifier">I</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="identifier">RJ</span> <span class="identifier">get</span><span class="special">(</span><span class="identifier">T</span><span class="special">&amp;</span> <span class="identifier">t</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Requires</b></span>: <tt class="computeroutput"><span class="number">0</span>
+ <span class="special">&lt;</span> <span class="identifier">I</span>
+ <span class="special">&lt;=</span> <span class="identifier">N</span></tt>.
+ The program is ill formed if <tt class="computeroutput"><span class="identifier">I</span></tt>
+ is out of bounds. <tt class="computeroutput"><span class="identifier">T</span></tt> is
+ any fusion sequence type, including <tt class="computeroutput"><span class="identifier">tuple</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="identifier">RJ</span></tt>
+ is equivalent to <tt class="computeroutput">result_of::at_c<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Returns</b></span>: A reference to the <tt class="computeroutput"><span class="identifier">I</span></tt>th element of <tt class="computeroutput"><span class="identifier">T</span></tt>.
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="identifier">I</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="identifier">PJ</span> <span class="identifier">get</span><span class="special">(</span><span class="identifier">T</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">t</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Requires</b></span>: <tt class="computeroutput"><span class="number">0</span>
+ <span class="special">&lt;</span> <span class="identifier">I</span>
+ <span class="special">&lt;=</span> <span class="identifier">N</span></tt>.
+ The program is ill formed if <tt class="computeroutput"><span class="identifier">I</span></tt>
+ is out of bounds. <tt class="computeroutput"><span class="identifier">T</span></tt> is
+ any fusion sequence type, including <tt class="computeroutput"><span class="identifier">tuple</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="identifier">PJ</span></tt>
+ is equivalent to <tt class="computeroutput">result_of::at_c<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Returns</b></span>: A const reference to the <tt class="computeroutput"><span class="identifier">I</span></tt>th element of <tt class="computeroutput"><span class="identifier">T</span></tt>.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="tuple_helper_classes.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../class_template_tuple.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="relational_operators.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple/relational_operators.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple/relational_operators.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,207 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Relational
+ operators</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../class_template_tuple.html" title="Class template tuple">
+<link rel="prev" href="element_access.html" title="Element
+ access">
+<link rel="next" href="../pairs.html" title="Pairs">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="element_access.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../class_template_tuple.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../pairs.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.tuple.class_template_tuple.relational_operators"></a><a href="relational_operators.html" title="Relational
+ operators">Relational
+ operators</a></h4></div></div></div>
+<a name="fusion.tuple.class_template_tuple.relational_operators.description"></a><h5>
+<a name="id635568"></a>
+ Description
+ </h5>
+<p>
+ The <a href="http://std.dkuug.dk/jtc1/sc22/wg21/docs/papers/2002/n1403.pdf" target="_top">TR1
+ Tuple</a> provides the standard boolean relational operators.
+ </p>
+<a name="fusion.tuple.class_template_tuple.relational_operators.specification"></a><h5>
+<a name="id635606"></a>
+ Specification
+ </h5>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">T1</span>
+ <span class="special">...</span> <span class="identifier">TN</span></tt>,
+ <tt class="computeroutput"><span class="identifier">U1</span> <span class="special">...</span>
+ <span class="identifier">UN</span></tt></span></dt>
+<dd><p>
+ Tuple element types
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">P1</span>
+ <span class="special">...</span> <span class="identifier">PN</span></tt></span></dt>
+<dd><p>
+ Parameter types
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">Ti</span></tt>,
+ <tt class="computeroutput"><span class="identifier">Ui</span></tt></span></dt>
+<dd><p>
+ The type of the <tt class="computeroutput"><span class="identifier">i</span></tt>th
+ element of a tuple
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">Pi</span></tt></span></dt>
+<dd><p>
+ The type of the <tt class="computeroutput"><span class="identifier">i</span></tt>th
+ parameter
+ </p></dd>
+</dl>
+</div>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span><span class="special">,</span> <span class="special">...,</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">U1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">U2</span><span class="special">,</span> <span class="special">...,</span> <span class="keyword">typename</span> <span class="identifier">UN</span><span class="special">&gt;</span>
+<span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">==(</span>
+ <span class="keyword">const</span> <span class="identifier">tuple</span><span class="special">&lt;</span><span class="identifier">T1</span><span class="special">,</span> <span class="identifier">T2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">TN</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+ <span class="keyword">const</span> <span class="identifier">tuple</span><span class="special">&lt;</span><span class="identifier">U1</span><span class="special">,</span> <span class="identifier">U2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">UN</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Requirements</b></span>: For all <tt class="computeroutput"><span class="identifier">i</span></tt>,
+ <tt class="computeroutput"><span class="number">1</span> <span class="special">&lt;=</span>
+ <span class="identifier">i</span> <span class="special">&lt;</span>
+ <span class="identifier">N</span></tt>, <tt class="computeroutput"><a href="element_access.html" title="Element
+ access"><tt class="computeroutput"><span class="identifier">get</span></tt></a><span class="special">&lt;</span><span class="identifier">i</span><span class="special">&gt;(</span><span class="identifier">lhs</span><span class="special">)</span> <span class="special">==</span> <a href="element_access.html" title="Element
+ access"><tt class="computeroutput"><span class="identifier">get</span></tt></a><span class="special">&lt;</span><span class="identifier">i</span><span class="special">&gt;(</span><span class="identifier">rhs</span><span class="special">)</span></tt>
+ is a valid expression returning a type that is convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns <tt class="computeroutput"><span class="keyword">true</span></tt>
+ if and only if <tt class="computeroutput"><a href="element_access.html" title="Element
+ access"><tt class="computeroutput"><span class="identifier">get</span></tt></a><span class="special">&lt;</span><span class="identifier">i</span><span class="special">&gt;(</span><span class="identifier">lhs</span><span class="special">)</span> <span class="special">==</span> <a href="element_access.html" title="Element
+ access"><tt class="computeroutput"><span class="identifier">get</span></tt></a><span class="special">&lt;</span><span class="identifier">i</span><span class="special">&gt;(</span><span class="identifier">rhs</span><span class="special">)</span></tt>
+ for all <tt class="computeroutput"><span class="identifier">i</span></tt>. For any 2 zero
+ length tuples <tt class="computeroutput"><span class="identifier">e</span></tt> and <tt class="computeroutput"><span class="identifier">f</span></tt>, <tt class="computeroutput"><span class="identifier">e</span>
+ <span class="special">==</span> <span class="identifier">f</span></tt>
+ returns <tt class="computeroutput"><span class="keyword">true</span></tt>.
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span><span class="special">,</span> <span class="special">...,</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">U1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">U2</span><span class="special">,</span> <span class="special">...,</span> <span class="keyword">typename</span> <span class="identifier">UN</span><span class="special">&gt;</span>
+<span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">&lt;(</span>
+ <span class="keyword">const</span> <span class="identifier">tuple</span><span class="special">&lt;</span><span class="identifier">T1</span><span class="special">,</span> <span class="identifier">T2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">TN</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+ <span class="keyword">const</span> <span class="identifier">tuple</span><span class="special">&lt;</span><span class="identifier">U1</span><span class="special">,</span> <span class="identifier">U2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">UN</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Requirements</b></span>: For all <tt class="computeroutput"><span class="identifier">i</span></tt>,
+ <tt class="computeroutput"><span class="number">1</span> <span class="special">&lt;=</span>
+ <span class="identifier">i</span> <span class="special">&lt;</span>
+ <span class="identifier">N</span></tt>, <tt class="computeroutput"><a href="element_access.html" title="Element
+ access"><tt class="computeroutput"><span class="identifier">get</span></tt></a><span class="special">&lt;</span><span class="identifier">i</span><span class="special">&gt;(</span><span class="identifier">lhs</span><span class="special">)</span> <span class="special">&lt;</span> <a href="element_access.html" title="Element
+ access"><tt class="computeroutput"><span class="identifier">get</span></tt></a><span class="special">&lt;</span><span class="identifier">i</span><span class="special">&gt;(</span><span class="identifier">rhs</span><span class="special">)</span></tt>
+ is a valid expression returning a type that is convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns the lexicographical
+ comparison of between <tt class="computeroutput"><span class="identifier">lhs</span></tt>
+ and <tt class="computeroutput"><span class="identifier">rhs</span></tt>.
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span><span class="special">,</span> <span class="special">...,</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">U1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">U2</span><span class="special">,</span> <span class="special">...,</span> <span class="keyword">typename</span> <span class="identifier">UN</span><span class="special">&gt;</span>
+<span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">!=(</span>
+ <span class="keyword">const</span> <span class="identifier">tuple</span><span class="special">&lt;</span><span class="identifier">T1</span><span class="special">,</span> <span class="identifier">T2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">TN</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+ <span class="keyword">const</span> <span class="identifier">tuple</span><span class="special">&lt;</span><span class="identifier">U1</span><span class="special">,</span> <span class="identifier">U2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">UN</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Requirements</b></span>: For all <tt class="computeroutput"><span class="identifier">i</span></tt>,
+ <tt class="computeroutput"><span class="number">1</span> <span class="special">&lt;=</span>
+ <span class="identifier">i</span> <span class="special">&lt;</span>
+ <span class="identifier">N</span></tt>, <tt class="computeroutput"><a href="element_access.html" title="Element
+ access"><tt class="computeroutput"><span class="identifier">get</span></tt></a><span class="special">&lt;</span><span class="identifier">i</span><span class="special">&gt;(</span><span class="identifier">lhs</span><span class="special">)</span> <span class="special">==</span> <a href="element_access.html" title="Element
+ access"><tt class="computeroutput"><span class="identifier">get</span></tt></a><span class="special">&lt;</span><span class="identifier">i</span><span class="special">&gt;(</span><span class="identifier">rhs</span><span class="special">)</span></tt>
+ is a valid expression returning a type that is convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns <tt class="computeroutput"><span class="special">!(</span><span class="identifier">lhs</span> <span class="special">==</span> <span class="identifier">rhs</span><span class="special">)</span></tt>.
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span><span class="special">,</span> <span class="special">...,</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">U1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">U2</span><span class="special">,</span> <span class="special">...,</span> <span class="keyword">typename</span> <span class="identifier">UN</span><span class="special">&gt;</span>
+<span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">&lt;=(</span>
+ <span class="keyword">const</span> <span class="identifier">tuple</span><span class="special">&lt;</span><span class="identifier">T1</span><span class="special">,</span> <span class="identifier">T2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">TN</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+ <span class="keyword">const</span> <span class="identifier">tuple</span><span class="special">&lt;</span><span class="identifier">U1</span><span class="special">,</span> <span class="identifier">U2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">UN</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Requirements</b></span>: For all <tt class="computeroutput"><span class="identifier">i</span></tt>,
+ <tt class="computeroutput"><span class="number">1</span> <span class="special">&lt;=</span>
+ <span class="identifier">i</span> <span class="special">&lt;</span>
+ <span class="identifier">N</span></tt>, <tt class="computeroutput"><a href="element_access.html" title="Element
+ access"><tt class="computeroutput"><span class="identifier">get</span></tt></a><span class="special">&lt;</span><span class="identifier">i</span><span class="special">&gt;(</span><span class="identifier">rhs</span><span class="special">)</span> <span class="special">&lt;</span> <a href="element_access.html" title="Element
+ access"><tt class="computeroutput"><span class="identifier">get</span></tt></a><span class="special">&lt;</span><span class="identifier">i</span><span class="special">&gt;(</span><span class="identifier">lhs</span><span class="special">)</span></tt>
+ is a valid expression returning a type that is convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns <tt class="computeroutput"><span class="special">!(</span><span class="identifier">rhs</span> <span class="special">&lt;</span> <span class="identifier">lhs</span><span class="special">)</span></tt>
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span><span class="special">,</span> <span class="special">...,</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">U1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">U2</span><span class="special">,</span> <span class="special">...,</span> <span class="keyword">typename</span> <span class="identifier">UN</span><span class="special">&gt;</span>
+<span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">&gt;(</span>
+ <span class="keyword">const</span> <span class="identifier">tuple</span><span class="special">&lt;</span><span class="identifier">T1</span><span class="special">,</span> <span class="identifier">T2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">TN</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+ <span class="keyword">const</span> <span class="identifier">tuple</span><span class="special">&lt;</span><span class="identifier">U1</span><span class="special">,</span> <span class="identifier">U2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">UN</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Requirements</b></span>: For all <tt class="computeroutput"><span class="identifier">i</span></tt>,
+ <tt class="computeroutput"><span class="number">1</span> <span class="special">&lt;=</span>
+ <span class="identifier">i</span> <span class="special">&lt;</span>
+ <span class="identifier">N</span></tt>, <tt class="computeroutput"><a href="element_access.html" title="Element
+ access"><tt class="computeroutput"><span class="identifier">get</span></tt></a><span class="special">&lt;</span><span class="identifier">i</span><span class="special">&gt;(</span><span class="identifier">rhs</span><span class="special">)</span> <span class="special">&lt;</span> <a href="element_access.html" title="Element
+ access"><tt class="computeroutput"><span class="identifier">get</span></tt></a><span class="special">&lt;</span><span class="identifier">i</span><span class="special">&gt;(</span><span class="identifier">lhs</span><span class="special">)</span></tt>
+ is a valid expression returning a type that is convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns <tt class="computeroutput"><span class="identifier">rhs</span>
+ <span class="special">&lt;</span> <span class="identifier">lhs</span></tt>.
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span><span class="special">,</span> <span class="special">...,</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">,</span>
+ <span class="keyword">typename</span> <span class="identifier">U1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">U2</span><span class="special">,</span> <span class="special">...,</span> <span class="keyword">typename</span> <span class="identifier">UN</span><span class="special">&gt;</span>
+<span class="keyword">bool</span> <span class="keyword">operator</span><span class="special">&gt;=(</span>
+ <span class="keyword">const</span> <span class="identifier">tuple</span><span class="special">&lt;</span><span class="identifier">T1</span><span class="special">,</span> <span class="identifier">T2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">TN</span><span class="special">&gt;&amp;</span> <span class="identifier">lhs</span><span class="special">,</span>
+ <span class="keyword">const</span> <span class="identifier">tuple</span><span class="special">&lt;</span><span class="identifier">U1</span><span class="special">,</span> <span class="identifier">U2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">UN</span><span class="special">&gt;&amp;</span> <span class="identifier">rhs</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Requirements</b></span>: For all <tt class="computeroutput"><span class="identifier">i</span></tt>,
+ <tt class="computeroutput"><span class="number">1</span> <span class="special">&lt;=</span>
+ <span class="identifier">i</span> <span class="special">&lt;</span>
+ <span class="identifier">N</span></tt>, <tt class="computeroutput"><a href="element_access.html" title="Element
+ access"><tt class="computeroutput"><span class="identifier">get</span></tt></a><span class="special">&lt;</span><span class="identifier">i</span><span class="special">&gt;(</span><span class="identifier">lhs</span><span class="special">)</span> <span class="special">&lt;</span> <a href="element_access.html" title="Element
+ access"><tt class="computeroutput"><span class="identifier">get</span></tt></a><span class="special">&lt;</span><span class="identifier">i</span><span class="special">&gt;(</span><span class="identifier">rhs</span><span class="special">)</span></tt>
+ is a valid expression returning a type that is convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Semantics</b></span>: Returns <tt class="computeroutput"><span class="special">!(</span><span class="identifier">lhs</span> <span class="special">&lt;</span> <span class="identifier">rhs</span><span class="special">)</span></tt>.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="element_access.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../class_template_tuple.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../pairs.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple/tuple_creation_functions.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple/tuple_creation_functions.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,80 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Tuple
+ creation functions</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../class_template_tuple.html" title="Class template tuple">
+<link rel="prev" href="construction.html" title="Construction">
+<link rel="next" href="tuple_helper_classes.html" title="Tuple
+ helper classes">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="construction.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../class_template_tuple.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tuple_helper_classes.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.tuple.class_template_tuple.tuple_creation_functions"></a><a href="tuple_creation_functions.html" title="Tuple
+ creation functions">Tuple
+ creation functions</a></h4></div></div></div>
+<a name="fusion.tuple.class_template_tuple.tuple_creation_functions.description"></a><h5>
+<a name="id633680"></a>
+ Description
+ </h5>
+<p>
+ TR1 describes 2 utility functions for creating <span class="underline">_tr1</span><span class="underline">tuple</span>_s. <tt class="computeroutput"><span class="identifier">make_tuple</span></tt>
+ builds a tuple out of it's argument list, and <tt class="computeroutput"><span class="identifier">tie</span></tt>
+ builds a tuple of references to it's arguments. The details of these creation
+ functions are described in this section.
+ </p>
+<a name="fusion.tuple.class_template_tuple.tuple_creation_functions.specification"></a><h5>
+<a name="id633751"></a>
+ Specification
+ </h5>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span><span class="special">,</span> <span class="special">...,</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">&gt;</span>
+<span class="identifier">tuple</span><span class="special">&lt;</span><span class="identifier">V1</span><span class="special">,</span> <span class="identifier">V2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">VN</span><span class="special">&gt;</span> <span class="identifier">make_tuple</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">T1</span><span class="special">&amp;</span> <span class="identifier">t1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T2</span><span class="special">&amp;</span> <span class="identifier">t2</span><span class="special">,</span> <span class="special">...,</span> <span class="keyword">const</span> <span class="identifier">TN</span><span class="special">&amp;</span> <span class="identifier">tn</span><span class="special">);</span>
+</pre>
+<p>
+ Where <tt class="computeroutput"><span class="identifier">Vi</span></tt> is <tt class="computeroutput"><span class="identifier">X</span><span class="special">&amp;</span></tt>
+ if the cv-unqualified type <tt class="computeroutput"><span class="identifier">Ti</span></tt>
+ is <tt class="computeroutput"><span class="identifier">reference_wrapper</span><span class="special">&lt;</span><span class="identifier">X</span><span class="special">&gt;</span></tt>,
+ otherwise <tt class="computeroutput"><span class="identifier">Vi</span></tt> is <tt class="computeroutput"><span class="identifier">Ti</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Returns</b></span>: <tt class="computeroutput"><span class="identifier">tuple</span><span class="special">&lt;</span><span class="identifier">V1</span><span class="special">,</span> <span class="identifier">V2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">VN</span><span class="special">&gt;(</span><span class="identifier">t1</span><span class="special">,</span> <span class="identifier">t2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">tN</span><span class="special">)</span></tt>
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span><span class="special">,</span> <span class="special">...,</span> <span class="keyword">typename</span> <span class="identifier">TN</span><span class="special">&gt;</span>
+<span class="identifier">tuple</span><span class="special">&lt;</span><span class="identifier">T1</span><span class="special">&amp;,</span> <span class="identifier">T2</span><span class="special">&amp;,</span> <span class="special">...,</span> <span class="identifier">TN</span><span class="special">&amp;&gt;</span> <span class="identifier">tie</span><span class="special">(</span><span class="identifier">T1</span><span class="special">&amp;</span> <span class="identifier">t1</span><span class="special">,</span> <span class="identifier">T2</span><span class="special">&amp;</span> <span class="identifier">t2</span><span class="special">,</span> <span class="special">...,</span> <span class="identifier">TN</span><span class="special">&amp;</span> <span class="identifier">tn</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Returns</b></span>: tuple&lt;T1&amp;, T2&amp;, ...,
+ TN&amp;&gt;(t1, t2, ..., tN). When argument <tt class="computeroutput"><span class="identifier">ti</span></tt>
+ is <tt class="computeroutput"><span class="identifier">ignore</span></tt>, assigning any
+ value to the corresponding tuple element has has no effect.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="construction.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../class_template_tuple.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="tuple_helper_classes.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple/tuple_helper_classes.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/tuple/class_template_tuple/tuple_helper_classes.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,87 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Tuple
+ helper classes</title>
+<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../class_template_tuple.html" title="Class template tuple">
+<link rel="prev" href="tuple_creation_functions.html" title="Tuple
+ creation functions">
+<link rel="next" href="element_access.html" title="Element
+ access">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="tuple_creation_functions.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../class_template_tuple.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="element_access.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h4 class="title">
+<a name="fusion.tuple.class_template_tuple.tuple_helper_classes"></a><a href="tuple_helper_classes.html" title="Tuple
+ helper classes">Tuple
+ helper classes</a></h4></div></div></div>
+<a name="fusion.tuple.class_template_tuple.tuple_helper_classes.description"></a><h5>
+<a name="id634463"></a>
+ Description
+ </h5>
+<p>
+ The <a href="http://std.dkuug.dk/jtc1/sc22/wg21/docs/papers/2002/n1403.pdf" target="_top">TR1
+ Tuple</a> provides 2 helper traits, for compile time access to the
+ tuple size, and the element types.
+ </p>
+<a name="fusion.tuple.class_template_tuple.tuple_helper_classes.specification"></a><h5>
+<a name="id634502"></a>
+ Specification
+ </h5>
+<pre class="programlisting">
+<span class="identifier">tuple_size</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value</span>
+</pre>
+<p>
+ <span class="bold"><b>Requires</b></span>: <tt class="computeroutput"><span class="identifier">T</span></tt>
+ is any fusion sequence type, including <tt class="computeroutput"><span class="identifier">tuple</span></tt>.
+ </p>
+<p>
+ <span class="bold"><b>Type</b></span>: <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>
+ </p>
+<p>
+ <span class="bold"><b>Value</b></span>: The number of elements in the sequence.
+ Equivalent to <tt class="computeroutput">result_of::size<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>.
+ </p>
+<pre class="programlisting">
+<span class="identifier">tuple_element</span><span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span> <span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Requires</b></span>: <tt class="computeroutput"><span class="identifier">T</span></tt>
+ is any fusion sequence type, including <tt class="computeroutput"><span class="identifier">tuple</span></tt>.
+ <tt class="computeroutput"><span class="number">0</span> <span class="special">&lt;=</span>
+ <span class="identifier">I</span> <span class="special">&lt;</span>
+ <span class="identifier">N</span></tt> or the program is ill formed.
+ </p>
+<p>
+ <span class="bold"><b>Value</b></span>: The type of the <tt class="computeroutput"><span class="identifier">I</span></tt>th
+ element of <tt class="computeroutput"><span class="identifier">T</span></tt>. Equivalent
+ to <tt class="computeroutput">result_of::value_at<span class="special">&lt;</span><span class="identifier">I</span><span class="special">,</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="tuple_creation_functions.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../class_template_tuple.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="element_access.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/tuple/pairs.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/tuple/pairs.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,108 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Pairs</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../tuple.html" title="Tuple">
+<link rel="prev" href="class_template_tuple/relational_operators.html" title="Relational
+ operators">
+<link rel="next" href="../extension.html" title="Extension">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="class_template_tuple/relational_operators.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tuple.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../extension.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.tuple.pairs"></a>Pairs</h3></div></div></div>
+<a name="fusion.tuple.pairs.description"></a><h4>
+<a name="id638902"></a>
+ Description
+ </h4>
+<p>
+ The <a href="http://std.dkuug.dk/jtc1/sc22/wg21/docs/papers/2002/n1403.pdf" target="_top">TR1
+ Tuple</a> interface is specified to provide uniform access to <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></tt>
+ as if it were a 2 element tuple.
+ </p>
+<a name="fusion.tuple.pairs.specification"></a><h4>
+<a name="id638959"></a>
+ Specification
+ </h4>
+<pre class="programlisting">
+<span class="identifier">tuple_size</span><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span><span class="special">&lt;</span><span class="identifier">T1</span><span class="special">,</span> <span class="identifier">T2</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">value</span>
+</pre>
+<p>
+ <span class="bold"><b>Type</b></span>: An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
+ Integral Constant</a>
+ </p>
+<p>
+ <span class="bold"><b>Value</b></span>: Returns 2, the number of elements
+ in a pair.
+ </p>
+<pre class="programlisting">
+<span class="identifier">tuple_element</span><span class="special">&lt;</span><span class="number">0</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span><span class="special">&lt;</span><span class="identifier">T1</span><span class="special">,</span> <span class="identifier">T2</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Type</b></span>: <tt class="computeroutput"><span class="identifier">T1</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Value</b></span>: Returns the type of the first element
+ of the pair
+ </p>
+<pre class="programlisting">
+<span class="identifier">tuple_element</span><span class="special">&lt;</span><span class="number">1</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span><span class="special">&lt;</span><span class="identifier">T1</span><span class="special">,</span> <span class="identifier">T2</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span>
+</pre>
+<p>
+ <span class="bold"><b>Type</b></span>: <tt class="computeroutput"><span class="identifier">T2</span></tt>
+ </p>
+<p>
+ <span class="bold"><b>Value</b></span>: Returns thetype of the second element
+ of the pair
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="identifier">I</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span><span class="special">&gt;</span>
+<span class="identifier">P</span><span class="special">&amp;</span> <span class="identifier">get</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span><span class="special">&lt;</span><span class="identifier">T1</span><span class="special">,</span> <span class="identifier">T2</span><span class="special">&gt;&amp;</span> <span class="identifier">pr</span><span class="special">);</span>
+
+<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">int</span> <span class="identifier">I</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T2</span><span class="special">&gt;</span>
+<span class="keyword">const</span> <span class="identifier">P</span><span class="special">&amp;</span> <span class="identifier">get</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span><span class="special">&lt;</span><span class="identifier">T1</span><span class="special">,</span> <span class="identifier">T2</span><span class="special">&gt;&amp;</span> <span class="identifier">pr</span><span class="special">);</span>
+</pre>
+<p>
+ <span class="bold"><b>Type</b></span>: If <tt class="computeroutput"><span class="identifier">I</span>
+ <span class="special">==</span> <span class="number">0</span></tt>
+ <tt class="computeroutput"><span class="identifier">P</span></tt> is <tt class="computeroutput"><span class="identifier">T1</span></tt>,
+ else if <tt class="computeroutput"><span class="identifier">I</span> <span class="special">==</span>
+ <span class="number">1</span></tt> <tt class="computeroutput"><span class="identifier">P</span></tt>
+ is <tt class="computeroutput"><span class="identifier">T2</span></tt> else the program is
+ ill-formed.
+ </p>
+<p>
+ <span class="bold"><b>Returns: <tt class="computeroutput"><span class="identifier">pr</span><span class="special">.</span><span class="identifier">first</span></tt>
+ if <tt class="computeroutput"><span class="identifier">I</span> <span class="special">==</span>
+ <span class="number">0</span></tt> else <tt class="computeroutput"><span class="identifier">pr</span><span class="special">.</span><span class="identifier">second</span></tt>.</b></span>[*Returns:
+ <tt class="computeroutput"><span class="identifier">pr</span><span class="special">.</span><span class="identifier">first</span></tt> if <tt class="computeroutput"><span class="identifier">I</span>
+ <span class="special">==</span> <span class="number">0</span></tt>
+ else <tt class="computeroutput"><span class="identifier">pr</span><span class="special">.</span><span class="identifier">second</span></tt>.
+ </p>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="class_template_tuple/relational_operators.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tuple.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../extension.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/view.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/view.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,65 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>View</title>
+<link rel="stylesheet" href="../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="prev" href="container/conversion/metafunctions/as_map.html" title="as_map">
+<link rel="next" href="view/single_view.html" title="single_view">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="container/conversion/metafunctions/as_map.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="view/single_view.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="fusion.view"></a>View</h2></div></div></div>
+<div class="toc"><dl>
+<dt><span class="section">single_view</span></dt>
+<dt><span class="section">filter_view</span></dt>
+<dt><span class="section">iterator_range</span></dt>
+<dt><span class="section">joint_view</span></dt>
+<dt><span class="section">zip_view</span></dt>
+<dt><span class="section">transform_view</span></dt>
+<dt><span class="section">reverse_view</span></dt>
+</dl></div>
+<p>
+ Views are sequences that do not actually contain data, but instead impart an
+ alternative presentation over the data from one or more underlying sequences.
+ Views are proxies. They provide an efficient yet purely functional way to work
+ on potentially expensive sequence operations. Views are inherently lazy. Their
+ elements are only computed on demand only when the elements of the underlying
+ sequence(s) are actually accessed. Views' lazy nature make them very cheap
+ to copy and be passed around by value.
+ </p>
+<a name="fusion.view.header"></a><h3>
+<a name="id560112"></a>
+ Header
+ </h3>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">view</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">view</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="container/conversion/metafunctions/as_map.html"><img src="../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="view/single_view.html"><img src="../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/view/filter_view.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/view/filter_view.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,242 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>filter_view</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../view.html" title="View">
+<link rel="prev" href="single_view.html" title="single_view">
+<link rel="next" href="iterator_range.html" title="iterator_range">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="single_view.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../view.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="iterator_range.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.view.filter_view"></a>filter_view</h3></div></div></div>
+<a name="fusion.view.filter_view.description"></a><h4>
+<a name="id561256"></a>
+ Description
+ </h4>
+<p>
+ <tt class="computeroutput"><span class="identifier">filter_view</span></tt> is a view into
+ a subset of its underlying sequence's elements satisfying a given predicate
+ (an MPL metafunction).
+ The <tt class="computeroutput"><span class="identifier">filter_view</span></tt> presents
+ only those elements for which its predicate evaluates to <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>.
+ </p>
+<a name="fusion.view.filter_view.header"></a><h4>
+<a name="id561339"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">view</span><span class="special">/</span><span class="identifier">filter_view</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">filter_view</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.view.filter_view.synopsis"></a><h4>
+<a name="id561496"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Pred</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">filter_view</span><span class="special">;</span>
+</pre>
+<a name="fusion.view.filter_view.template_parameters"></a><h4>
+<a name="id561595"></a>
+ Template parameters
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Pred</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Unary Metafunction returning an <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">bool_</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.view.filter_view.model_of"></a><h4>
+<a name="id561763"></a>
+ Model of
+ </h4>
+<div class="itemizedlist"><ul type="disc"><li><a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a></li></ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">F</span></tt></span></dt>
+<dd><p>
+ A <tt class="computeroutput"><span class="identifier">filter_view</span></tt> type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">f</span></tt>,
+ <tt class="computeroutput"><span class="identifier">f2</span></tt></span></dt>
+<dd><p>
+ Instances of <tt class="computeroutput"><span class="identifier">filter_view</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
+<dd><p>
+ A <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.view.filter_view.expression_semantics"></a><h4>
+<a name="id561925"></a>
+ Expression Semantics
+ </h4>
+<p>
+ Semantics of an expression is defined only where it differs from, or is not
+ defined in <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">F</span><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a <tt class="computeroutput"><span class="identifier">filter_view</span></tt>
+ given a sequence, <tt class="computeroutput"><span class="identifier">s</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">F</span><span class="special">(</span><span class="identifier">f</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Copy constructs a <tt class="computeroutput"><span class="identifier">filter_view</span></tt>
+ from another <tt class="computeroutput"><span class="identifier">filter_view</span></tt>,
+ <tt class="computeroutput"><span class="identifier">f</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">f</span> <span class="special">=</span>
+ <span class="identifier">f2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Assigns to a <tt class="computeroutput"><span class="identifier">filter_view</span></tt>,
+ <tt class="computeroutput"><span class="identifier">f</span></tt>, from another
+ <tt class="computeroutput"><span class="identifier">filter_view</span></tt>, <tt class="computeroutput"><span class="identifier">f2</span></tt>.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.view.filter_view.example"></a><h4>
+<a name="id562238"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="keyword">using</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">;</span>
+<span class="keyword">using</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">not_</span><span class="special">;</span>
+<span class="keyword">using</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_class</span><span class="special">;</span>
+
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">,</span> <span class="keyword">char</span><span class="special">,</span> <span class="keyword">long</span><span class="special">,</span> <span class="keyword">bool</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">vector_type</span><span class="special">;</span>
+
+<span class="identifier">vector_type</span> <span class="identifier">v</span><span class="special">(</span><span class="string">"a-string"</span><span class="special">,</span> <span class="char">'@'</span><span class="special">,</span> <span class="number">987654</span><span class="special">,</span> <span class="keyword">true</span><span class="special">,</span> <span class="number">6.6</span><span class="special">);</span>
+<span class="identifier">filter_view</span><span class="special">&lt;</span><span class="identifier">vector_type</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">not_</span><span class="special">&lt;</span><span class="identifier">is_class</span><span class="special">&lt;</span><span class="identifier">_</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="special">&gt;</span> <span class="identifier">view</span><span class="special">(</span><span class="identifier">v</span><span class="special">);</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">view</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="single_view.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../view.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="iterator_range.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/view/iterator_range.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/view/iterator_range.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,257 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>iterator_range</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../view.html" title="View">
+<link rel="prev" href="filter_view.html" title="filter_view">
+<link rel="next" href="joint_view.html" title="joint_view">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="filter_view.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../view.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="joint_view.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.view.iterator_range"></a>iterator_range</h3></div></div></div>
+<a name="fusion.view.iterator_range.description"></a><h4>
+<a name="id562713"></a>
+ Description
+ </h4>
+<p>
+ <tt class="computeroutput"><span class="identifier">iterator_range</span></tt> presents a
+ sub-range of its underlying sequence delimited by a pair of iterators.
+ </p>
+<a name="fusion.view.iterator_range.header"></a><h4>
+<a name="id562754"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">view</span><span class="special">/</span><span class="identifier">iterator_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">iterator_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.view.iterator_range.synopsis"></a><h4>
+<a name="id562912"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">First</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Last</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">iterator_range</span><span class="special">;</span>
+</pre>
+<a name="fusion.view.iterator_range.template_parameters"></a><h4>
+<a name="id563010"></a>
+ Template parameters
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">First</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A fusion Iterator
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Last</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A fusion Iterator
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.view.iterator_range.model_of"></a><h4>
+<a name="id563165"></a>
+ Model of
+ </h4>
+<div class="itemizedlist"><ul type="disc"><li>
+<a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a>,
+ <a href="../sequence/concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a> or <a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> depending on the traversal characteristics (see
+ Sequence Traversal Concept)
+ of its underlying sequence.
+ </li></ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">IR</span></tt></span></dt>
+<dd><p>
+ An <tt class="computeroutput"><span class="identifier">iterator_range</span></tt> type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">f</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">First</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">l</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">Last</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">ir</span></tt>,
+ <tt class="computeroutput"><span class="identifier">ir2</span></tt></span></dt>
+<dd><p>
+ Instances of <tt class="computeroutput"><span class="identifier">iterator_range</span></tt>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.view.iterator_range.expression_semantics"></a><h4>
+<a name="id563395"></a>
+ <a href="iterator_range.html#fusion.view.iterator_range.expression_semantics">Expression
+ Semantics</a>
+ </h4>
+<p>
+ Semantics of an expression is defined only where it differs from, or is not
+ defined in <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">IR</span><span class="special">(</span><span class="identifier">f</span><span class="special">,</span> <span class="identifier">l</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates an <tt class="computeroutput"><span class="identifier">iterator_range</span></tt>
+ given iterators, <tt class="computeroutput"><span class="identifier">f</span></tt>
+ and <tt class="computeroutput"><span class="identifier">l</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">IR</span><span class="special">(</span><span class="identifier">ir</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Copy constructs an <tt class="computeroutput"><span class="identifier">iterator_range</span></tt>
+ from another <tt class="computeroutput"><span class="identifier">iterator_range</span></tt>,
+ <tt class="computeroutput"><span class="identifier">ir</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">ir</span> <span class="special">=</span>
+ <span class="identifier">ir2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Assigns to a <tt class="computeroutput"><span class="identifier">iterator_range</span></tt>,
+ <tt class="computeroutput"><span class="identifier">ir</span></tt>, from another
+ <tt class="computeroutput"><span class="identifier">iterator_range</span></tt>,
+ <tt class="computeroutput"><span class="identifier">ir2</span></tt>.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.view.iterator_range.example"></a><h4>
+<a name="id563731"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="keyword">char</span> <span class="keyword">const</span><span class="special">*</span> <span class="identifier">s</span> <span class="special">=</span> <span class="string">"Ruby"</span><span class="special">;</span>
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">,</span> <span class="keyword">double</span><span class="special">,</span> <span class="keyword">char</span> <span class="keyword">const</span><span class="special">*&gt;</span> <span class="identifier">vector_type</span><span class="special">;</span>
+<span class="identifier">vector_type</span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'x'</span><span class="special">,</span> <span class="number">3.3</span><span class="special">,</span> <span class="identifier">s</span><span class="special">);</span>
+
+<span class="keyword">typedef</span> result_of::begin<span class="special">&lt;</span><span class="identifier">vector_type</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">A</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::end<span class="special">&lt;</span><span class="identifier">vector_type</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">B</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::next<span class="special">&lt;</span><span class="identifier">A</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">C</span><span class="special">;</span>
+<span class="keyword">typedef</span> result_of::prior<span class="special">&lt;</span><span class="identifier">B</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">D</span><span class="special">;</span>
+
+<span class="identifier">C</span> <span class="identifier">c</span><span class="special">(</span><span class="identifier">vec</span><span class="special">);</span>
+<span class="identifier">D</span> <span class="identifier">d</span><span class="special">(</span><span class="identifier">vec</span><span class="special">);</span>
+
+<span class="identifier">iterator_range</span><span class="special">&lt;</span><span class="identifier">C</span><span class="special">,</span> <span class="identifier">D</span><span class="special">&gt;</span> <span class="identifier">range</span><span class="special">(</span><span class="identifier">c</span><span class="special">,</span> <span class="identifier">d</span><span class="special">);</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">range</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="filter_view.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../view.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="joint_view.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/view/joint_view.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/view/joint_view.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,243 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>joint_view</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../view.html" title="View">
+<link rel="prev" href="iterator_range.html" title="iterator_range">
+<link rel="next" href="zip_view.html" title="zip_view">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="iterator_range.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../view.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="zip_view.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.view.joint_view"></a>joint_view</h3></div></div></div>
+<a name="fusion.view.joint_view.description"></a><h4>
+<a name="id564396"></a>
+ Description
+ </h4>
+<p>
+ <tt class="computeroutput"><span class="identifier">joint_view</span></tt> presents a view
+ which is a concatenation of two sequences.
+ </p>
+<a name="fusion.view.joint_view.header"></a><h4>
+<a name="id564438"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">view</span><span class="special">/</span><span class="identifier">joint_view</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">joint_view</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.view.joint_view.synopsis"></a><h4>
+<a name="id564595"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence2</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">joint_view</span><span class="special">;</span>
+</pre>
+<a name="fusion.view.joint_view.template_parameters"></a><h4>
+<a name="id564693"></a>
+ Template parameters
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence1</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.view.joint_view.model_of"></a><h4>
+<a name="id564849"></a>
+ Model of
+ </h4>
+<div class="itemizedlist"><ul type="disc"><li><a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a></li></ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">JV</span></tt></span></dt>
+<dd><p>
+ A <tt class="computeroutput"><span class="identifier">joint_view</span></tt> type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s1</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">Sequence1</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s2</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">Sequence2</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">jv</span></tt>,
+ <tt class="computeroutput"><span class="identifier">jv2</span></tt></span></dt>
+<dd><p>
+ Instances of <tt class="computeroutput"><span class="identifier">joint_view</span></tt>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.view.joint_view.expression_semantics"></a><h4>
+<a name="id565049"></a>
+ Expression Semantics
+ </h4>
+<p>
+ Semantics of an expression is defined only where it differs from, or is not
+ defined in <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">JV</span><span class="special">(</span><span class="identifier">s1</span><span class="special">,</span> <span class="identifier">s2</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a <tt class="computeroutput"><span class="identifier">joint_view</span></tt>
+ given sequences, <tt class="computeroutput"><span class="identifier">s1</span></tt>
+ and <tt class="computeroutput"><span class="identifier">s2</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">JV</span><span class="special">(</span><span class="identifier">jv</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Copy constructs a <tt class="computeroutput"><span class="identifier">joint_view</span></tt>
+ from another <tt class="computeroutput"><span class="identifier">joint_view</span></tt>,
+ <tt class="computeroutput"><span class="identifier">jv</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">jv</span> <span class="special">=</span>
+ <span class="identifier">jv2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Assigns to a <tt class="computeroutput"><span class="identifier">joint_view</span></tt>,
+ <tt class="computeroutput"><span class="identifier">jv</span></tt>, from another
+ <tt class="computeroutput"><span class="identifier">joint_view</span></tt>, <tt class="computeroutput"><span class="identifier">jv2</span></tt>.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.view.joint_view.example"></a><h4>
+<a name="id565385"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">3</span><span class="special">,</span> <span class="char">'x'</span><span class="special">);</span>
+vector<span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="string">"hello"</span><span class="special">,</span> <span class="number">123</span><span class="special">);</span>
+<span class="identifier">joint_view</span><span class="special">&lt;</span>
+ vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span>
+ <span class="special">,</span> vector<span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span>
+<span class="special">&gt;</span> <span class="identifier">view</span><span class="special">(</span><span class="identifier">v1</span><span class="special">,</span> <span class="identifier">v2</span><span class="special">);</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">view</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="iterator_range.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../view.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="zip_view.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/view/reverse_view.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/view/reverse_view.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,215 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>reverse_view</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../view.html" title="View">
+<link rel="prev" href="transform_view.html" title="transform_view">
+<link rel="next" href="../adapted.html" title="Adapted">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="transform_view.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../view.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../adapted.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.view.reverse_view"></a>reverse_view</h3></div></div></div>
+<p>
+ <tt class="computeroutput"><span class="identifier">reverse_view</span></tt> presents a reversed
+ view of underlying sequence. The first element will be its last and the last
+ element will be its first.
+ </p>
+<a name="fusion.view.reverse_view.header"></a><h4>
+<a name="id569491"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">view</span><span class="special">/</span><span class="identifier">reverse_view</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">reverse_view</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.view.reverse_view.synopsis"></a><h4>
+<a name="id569649"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">reverse_view</span><span class="special">;</span>
+</pre>
+<a name="fusion.view.reverse_view.template_parameters"></a><h4>
+<a name="id569730"></a>
+ Template parameters
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A <a href="../sequence/concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.view.reverse_view.model_of"></a><h4>
+<a name="id569842"></a>
+ Model of
+ </h4>
+<div class="itemizedlist"><ul type="disc"><li><a href="../sequence/concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a></li></ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">RV</span></tt></span></dt>
+<dd><p>
+ A <tt class="computeroutput"><span class="identifier">reverse_view</span></tt> type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">rv</span></tt>,
+ <tt class="computeroutput"><span class="identifier">rv2</span></tt></span></dt>
+<dd><p>
+ Instances of <tt class="computeroutput"><span class="identifier">reverse_view</span></tt>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.view.reverse_view.expression_semantics"></a><h4>
+<a name="id570008"></a>
+ <a href="reverse_view.html#fusion.view.reverse_view.expression_semantics">Expression
+ Semantics</a>
+ </h4>
+<p>
+ Semantics of an expression is defined only where it differs from, or is not
+ defined in <a href="../sequence/concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a>.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">RV</span><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a unary <tt class="computeroutput"><span class="identifier">reverse_view</span></tt>
+ given sequence, <tt class="computeroutput"><span class="identifier">s</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">RV</span><span class="special">(</span><span class="identifier">rv</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Copy constructs a <tt class="computeroutput"><span class="identifier">reverse_view</span></tt>
+ from another <tt class="computeroutput"><span class="identifier">reverse_view</span></tt>,
+ <tt class="computeroutput"><span class="identifier">rv</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">rv</span> <span class="special">=</span>
+ <span class="identifier">rv2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Assigns to a <tt class="computeroutput"><span class="identifier">reverse_view</span></tt>,
+ <tt class="computeroutput"><span class="identifier">rv</span></tt>, from another
+ <tt class="computeroutput"><span class="identifier">reverse_view</span></tt>, <tt class="computeroutput"><span class="identifier">rv2</span></tt>.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.view.reverse_view.example"></a><h4>
+<a name="id570320"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">short</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">vector_type</span><span class="special">;</span>
+<span class="identifier">vector_type</span> <span class="identifier">vec</span><span class="special">(</span><span class="number">2</span><span class="special">,</span> <span class="number">5</span><span class="special">,</span> <span class="number">3.3</span><span class="special">);</span>
+
+<span class="identifier">reverse_view</span><span class="special">&lt;</span><span class="identifier">vector_type</span><span class="special">&gt;</span> <span class="identifier">reverse</span><span class="special">(</span><span class="identifier">vec</span><span class="special">);</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">reverse</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="transform_view.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../view.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../adapted.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/view/single_view.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/view/single_view.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,207 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>single_view</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../view.html" title="View">
+<link rel="prev" href="../view.html" title="View">
+<link rel="next" href="filter_view.html" title="filter_view">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../view.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../view.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="filter_view.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.view.single_view"></a>single_view</h3></div></div></div>
+<p>
+ <tt class="computeroutput"><span class="identifier">single_view</span></tt> is a view into
+ a value as a single element sequence.
+ </p>
+<a name="fusion.view.single_view.header"></a><h4>
+<a name="id560292"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">view</span><span class="special">/</span><span class="identifier">single_view</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">single_view</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.view.single_view.synopsis"></a><h4>
+<a name="id560449"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">single_view</span><span class="special">;</span>
+</pre>
+<a name="fusion.view.single_view.template_parameters"></a><h4>
+<a name="id560529"></a>
+ Template parameters
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Any type
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.view.single_view.model_of"></a><h4>
+<a name="id560633"></a>
+ Model of
+ </h4>
+<div class="itemizedlist"><ul type="disc"><li><a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a></li></ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">S</span></tt></span></dt>
+<dd><p>
+ A <tt class="computeroutput"><span class="identifier">single_view</span></tt> type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt>,
+ <tt class="computeroutput"><span class="identifier">s2</span></tt></span></dt>
+<dd><p>
+ Instances of <tt class="computeroutput"><span class="identifier">single_view</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">x</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">T</span></tt>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.view.single_view.expression_semantics"></a><h4>
+<a name="id560798"></a>
+ Expression Semantics
+ </h4>
+<p>
+ Semantics of an expression is defined only where it differs from, or is not
+ defined in <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">S</span><span class="special">(</span><span class="identifier">x</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a <tt class="computeroutput"><span class="identifier">single_view</span></tt>
+ from <tt class="computeroutput"><span class="identifier">x</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">S</span><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Copy constructs a <tt class="computeroutput"><span class="identifier">single_view</span></tt>
+ from another <tt class="computeroutput"><span class="identifier">single_view</span></tt>,
+ <tt class="computeroutput"><span class="identifier">s</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">s</span> <span class="special">=</span>
+ <span class="identifier">s2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Assigns to a <tt class="computeroutput"><span class="identifier">single_view</span></tt>,
+ <tt class="computeroutput"><span class="identifier">s</span></tt>, from another
+ <tt class="computeroutput"><span class="identifier">single_view</span></tt>, <tt class="computeroutput"><span class="identifier">s2</span></tt>.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.view.single_view.example"></a><h4>
+<a name="id561110"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="identifier">single_view</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">view</span><span class="special">(</span><span class="number">3</span><span class="special">);</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">view</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="../view.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../view.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="filter_view.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/view/transform_view.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/view/transform_view.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,378 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>transform_view</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../view.html" title="View">
+<link rel="prev" href="zip_view.html" title="zip_view">
+<link rel="next" href="reverse_view.html" title="reverse_view">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="zip_view.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../view.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="reverse_view.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.view.transform_view"></a>transform_view</h3></div></div></div>
+<p>
+ The unary version of <tt class="computeroutput"><span class="identifier">transform_view</span></tt>
+ presents a view of its underlying sequence given a unary function object
+ or function pointer. The binary version of <tt class="computeroutput"><span class="identifier">transform_view</span></tt>
+ presents a view of 2 underlying sequences, given a binary function object
+ or function pointer. The <tt class="computeroutput"><span class="identifier">transform_view</span></tt>
+ inherits the traversal characteristics (see <a href="../sequence/concepts.html#fusion.sequence.concepts.traversal">Sequence
+ Traversal Concept</a>) of its underlying sequence or sequences.
+ </p>
+<a name="fusion.view.transform_view.header"></a><h4>
+<a name="id567192"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">view</span><span class="special">/</span><span class="identifier">transform_view</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">transform_view</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.view.transform_view.synopsis"></a><h4>
+<a name="id567350"></a>
+ Synopsis
+ </h4>
+<p>
+ <span class="bold"><b>Unary Version</b></span>
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">F1</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">transform_view</span><span class="special">;</span>
+</pre>
+<p>
+ <span class="bold"><b>Binary Version</b></span>
+ </p>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence2</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">F2</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">transform_view</span><span class="special">;</span>
+</pre>
+<a name="fusion.view.transform_view.template_parameters"></a><h4>
+<a name="id567558"></a>
+ Template parameters
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence1</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequence2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">F1</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A unary function object or function pointer. <tt class="computeroutput">boost::result_of<span class="special">&lt;</span><span class="identifier">F1</span><span class="special">(</span><span class="identifier">E</span><span class="special">)&gt;::</span><span class="identifier">type</span></tt> is the return type of an instance
+ of <tt class="computeroutput"><span class="identifier">F1</span></tt> when called
+ with a value of each element type <tt class="computeroutput"><span class="identifier">E</span></tt>
+ in the input sequence.
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">F2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A binary function object or function pointer. <tt class="computeroutput">boost::result_of<span class="special">&lt;</span><span class="identifier">F2</span><span class="special">(</span><span class="identifier">E1</span><span class="special">,</span> <span class="identifier">E2</span><span class="special">)&gt;::</span><span class="identifier">type</span></tt> is the return type of an instance
+ of <tt class="computeroutput"><span class="identifier">F2</span></tt> when called
+ with a value of each corresponding pair of element type <tt class="computeroutput"><span class="identifier">E1</span></tt> and <tt class="computeroutput"><span class="identifier">E2</span></tt>
+ in the input sequences.
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.view.transform_view.model_of"></a><h4>
+<a name="id568023"></a>
+ Model of
+ </h4>
+<div class="itemizedlist"><ul type="disc"><li>
+<a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a>,
+ <a href="../sequence/concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a> or <a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> depending on the traversal characteristics (see
+ Sequence Traversal Concept)
+ of its underlying sequence.
+ </li></ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">TV</span></tt></span></dt>
+<dd><p>
+ A <tt class="computeroutput"><span class="identifier">transform_view</span></tt> type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">BTV</span></tt></span></dt>
+<dd><p>
+ A binary <tt class="computeroutput"><span class="identifier">transform_view</span></tt>
+ type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">UTV</span></tt></span></dt>
+<dd><p>
+ A unary <tt class="computeroutput"><span class="identifier">transform_view</span></tt>
+ type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">f1</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">F1</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">f2</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">F2</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s1</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">Sequence1</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s2</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">Sequence2</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">tv</span></tt>,
+ <tt class="computeroutput"><span class="identifier">tv2</span></tt></span></dt>
+<dd><p>
+ Instances of <tt class="computeroutput"><span class="identifier">transform_view</span></tt>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.view.transform_view.expression_semantics"></a><h4>
+<a name="id568424"></a>
+ <a href="transform_view.html#fusion.view.transform_view.expression_semantics">Expression
+ Semantics</a>
+ </h4>
+<p>
+ Semantics of an expression is defined only where it differs from, or is not
+ defined in <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>, <a href="../sequence/concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a> or <a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> depending on the traversal characteristics (see Sequence Traversal Concept)
+ of its underlying sequence or sequences.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">UTV</span><span class="special">(</span><span class="identifier">s</span><span class="special">,</span> <span class="identifier">f1</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a unary <tt class="computeroutput"><span class="identifier">transform_view</span></tt>
+ given sequence, <tt class="computeroutput"><span class="identifier">s</span></tt>
+ and unary function object or function pointer, <tt class="computeroutput"><span class="identifier">f1</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">BTV</span><span class="special">(</span><span class="identifier">s1</span><span class="special">,</span> <span class="identifier">s2</span><span class="special">,</span> <span class="identifier">f2</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a binary <tt class="computeroutput"><span class="identifier">transform_view</span></tt>
+ given sequences, <tt class="computeroutput"><span class="identifier">s1</span></tt>
+ and <tt class="computeroutput"><span class="identifier">s2</span></tt> and binary
+ function object or function pointer, <tt class="computeroutput"><span class="identifier">f2</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">TV</span><span class="special">(</span><span class="identifier">tv</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Copy constructs a <tt class="computeroutput"><span class="identifier">transform_view</span></tt>
+ from another <tt class="computeroutput"><span class="identifier">transform_view</span></tt>,
+ <tt class="computeroutput"><span class="identifier">tv</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">tv</span> <span class="special">=</span>
+ <span class="identifier">tv2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Assigns to a <tt class="computeroutput"><span class="identifier">transform_view</span></tt>,
+ <tt class="computeroutput"><span class="identifier">tv</span></tt>, from another
+ <tt class="computeroutput"><span class="identifier">transform_view</span></tt>,
+ <tt class="computeroutput"><span class="identifier">tv2</span></tt>.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.view.transform_view.example"></a><h4>
+<a name="id568903"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="keyword">struct</span> <span class="identifier">square</span>
+<span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sig</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">result</span><span class="special">;</span>
+
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">U</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <span class="identifier">result</span><span class="special">&lt;</span><span class="identifier">square</span><span class="special">(</span><span class="identifier">U</span><span class="special">)&gt;</span>
+ <span class="special">:</span> <span class="identifier">remove_reference</span><span class="special">&lt;</span><span class="identifier">U</span><span class="special">&gt;</span>
+ <span class="special">{};</span>
+
+ <span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="identifier">T</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">T</span> <span class="identifier">x</span><span class="special">)</span> <span class="keyword">const</span>
+ <span class="special">{</span>
+ <span class="keyword">return</span> <span class="identifier">x</span> <span class="special">*</span> <span class="identifier">x</span><span class="special">;</span>
+ <span class="special">}</span>
+<span class="special">};</span>
+
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">short</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">vector_type</span><span class="special">;</span>
+<span class="identifier">vector_type</span> <span class="identifier">vec</span><span class="special">(</span><span class="number">2</span><span class="special">,</span> <span class="number">5</span><span class="special">,</span> <span class="number">3.3</span><span class="special">);</span>
+
+<span class="identifier">transform_view</span><span class="special">&lt;</span><span class="identifier">vector_type</span><span class="special">,</span> <span class="identifier">square</span><span class="special">&gt;</span> <span class="identifier">transform</span><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> <span class="identifier">square</span><span class="special">());</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">transform</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
+</pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="zip_view.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../view.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="reverse_view.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Added: trunk/libs/fusion/doc/html/fusion/view/zip_view.html
==============================================================================
--- (empty file)
+++ trunk/libs/fusion/doc/html/fusion/view/zip_view.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -0,0 +1,229 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>zip_view</title>
+<link rel="stylesheet" href="../../boostbook.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
+<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
+<link rel="up" href="../view.html" title="View">
+<link rel="prev" href="joint_view.html" title="joint_view">
+<link rel="next" href="transform_view.html" title="transform_view">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<table cellpadding="2" width="100%"><tr>
+<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
+<td align="center">Home</td>
+<td align="center">Libraries</td>
+<td align="center">People</td>
+<td align="center">FAQ</td>
+<td align="center">More</td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="joint_view.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../view.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="transform_view.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="fusion.view.zip_view"></a>zip_view</h3></div></div></div>
+<a name="fusion.view.zip_view.description"></a><h4>
+<a name="id565793"></a>
+ Description
+ </h4>
+<p>
+ <tt class="computeroutput"><span class="identifier">zip_view</span></tt> presents a view
+ which iterates over a collection of Sequence(s)
+ in parallel. A <tt class="computeroutput"><span class="identifier">zip_view</span></tt> is
+ constructed from a Sequence of references
+ to the component <span class="underline">_sequence</span>_s.
+ </p>
+<a name="fusion.view.zip_view.header"></a><h4>
+<a name="id565871"></a>
+ Header
+ </h4>
+<pre class="programlisting">
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">view</span><span class="special">/</span><span class="identifier">zip_view</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">zip_view</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
+</pre>
+<a name="fusion.view.zip_view.synopsis"></a><h4>
+<a name="id566028"></a>
+ Synopsis
+ </h4>
+<pre class="programlisting">
+<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequences</span><span class="special">&gt;</span>
+<span class="keyword">struct</span> <span class="identifier">zip_view</span><span class="special">;</span>
+</pre>
+<a name="fusion.view.zip_view.template_parameters"></a><h4>
+<a name="id566108"></a>
+ Template parameters
+ </h4>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Parameter
+ </p>
+ </th>
+<th>
+ <p>
+ Description
+ </p>
+ </th>
+<th>
+ <p>
+ Default
+ </p>
+ </th>
+</tr></thead>
+<tbody><tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">Sequences</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ A <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a> of references to other Fusion <span class="underline">_sequence</span>_s
+ </p>
+ </td>
+<td>
+ <p>
+ </p>
+ </td>
+</tr></tbody>
+</table></div>
+<a name="fusion.view.zip_view.model_of"></a><h4>
+<a name="id566228"></a>
+ Model of
+ </h4>
+<div class="itemizedlist"><ul type="disc"><li>
+<a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward Sequence</a>,
+ <a href="../sequence/concepts/bidirectional_sequence.html" title="Bidirectional
+ Sequence">Bidirectional
+ Sequence</a> or <a href="../sequence/concepts/random_access_sequence.html" title="Random
+ Access Sequence">Random
+ Access Sequence</a> depending on the traversal characteristics (see
+ Sequence Traversal Concept)
+ of its underlying sequence.
+ </li></ul></div>
+<div class="variablelist">
+<p class="title"><b>Notation</b></p>
+<dl>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">ZV</span></tt></span></dt>
+<dd><p>
+ A <tt class="computeroutput"><span class="identifier">joint_view</span></tt> type
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
+<dd><p>
+ An instance of <tt class="computeroutput"><span class="identifier">Sequences</span></tt>
+ </p></dd>
+<dt><span class="term"><tt class="computeroutput"><span class="identifier">zv1</span></tt>,
+ <tt class="computeroutput"><span class="identifier">zv2</span></tt></span></dt>
+<dd><p>
+ Instances of <tt class="computeroutput"><span class="identifier">ZV</span></tt>
+ </p></dd>
+</dl>
+</div>
+<a name="fusion.view.zip_view.expression_semantics"></a><h4>
+<a name="id566424"></a>
+ Expression Semantics
+ </h4>
+<p>
+ Semantics of an expression is defined only where it differs from, or is not
+ defined in <a href="../sequence/concepts/forward_sequence.html" title="Forward
+ Sequence">Forward
+ Sequence</a>.
+ </p>
+<div class="informaltable"><table class="table">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<thead><tr>
+<th>
+ <p>
+ Expression
+ </p>
+ </th>
+<th>
+ <p>
+ Semantics
+ </p>
+ </th>
+</tr></thead>
+<tbody>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">ZV</span><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Creates a <tt class="computeroutput"><span class="identifier">zip_view</span></tt>
+ given a sequence of references to the component <span class="underline">_sequence</span>_s.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">ZV</span><span class="special">(</span><span class="identifier">zv1</span><span class="special">)</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Copy constructs a <tt class="computeroutput"><span class="identifier">zip_view</span></tt>
+ from another <tt class="computeroutput"><span class="identifier">zip_view</span></tt>,
+ <tt class="computeroutput"><span class="identifier">zv</span></tt>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <tt class="computeroutput"><span class="identifier">zv1</span> <span class="special">=</span>
+ <span class="identifier">zv2</span></tt>
+ </p>
+ </td>
+<td>
+ <p>
+ Assigns to a <tt class="computeroutput"><span class="identifier">zip_view</span></tt>,
+ <tt class="computeroutput"><span class="identifier">zv</span></tt>, from another
+ <tt class="computeroutput"><span class="identifier">zip_view</span></tt>, <tt class="computeroutput"><span class="identifier">zv2</span></tt>.
+ </p>
+ </td>
+</tr>
+</tbody>
+</table></div>
+<a name="fusion.view.zip_view.example"></a><h4>
+<a name="id566732"></a>
+ Example
+ </h4>
+<pre class="programlisting">
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec1</span><span class="special">;</span>
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec2</span><span class="special">;</span>
+<span class="identifier">vec1</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
+<span class="identifier">vec2</span> <span class="identifier">v2</span><span class="special">(</span><span class="char">'a'</span><span class="special">,</span><span class="char">'b'</span><span class="special">);</span>
+<span class="keyword">typedef</span> vector<span class="special">&lt;</span><span class="identifier">vec1</span><span class="special">&amp;,</span> <span class="identifier">vec2</span><span class="special">&amp;&gt;</span> <span class="identifier">sequences</span><span class="special">;</span>
+<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">zip_view</span><span class="special">&lt;</span><span class="identifier">sequences</span><span class="special">&gt;(</span><span class="identifier">sequences</span><span class="special">(</span><span class="identifier">v1</span><span class="special">,</span> <span class="identifier">v2</span><span class="special">))</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span> <span class="comment">// ((1 a) (2 b))
+</span></pre>
+</div>
+<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
+<td align="left"></td>
+<td align="right"><small>Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
+ Schwinger</small></td>
+</tr></table>
+<hr>
+<div class="spirit-nav">
+<a accesskey="p" href="joint_view.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../view.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="transform_view.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
+</div>
+</body>
+</html>

Modified: trunk/libs/fusion/doc/html/index.html
==============================================================================
--- trunk/libs/fusion/doc/html/index.html (original)
+++ trunk/libs/fusion/doc/html/index.html 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -22,10 +22,19 @@
 <div class="titlepage"><div>
 <div><h2 class="title">
 <a name="fusion"></a>Chapter 1. Fusion 2.0</h2></div>
+<div><div class="author"><h3 class="author">
+<span class="firstname">Joel</span> <span class="surname">de Guzman</span>
+</h3></div></div>
+<div><div class="author"><h3 class="author">
+<span class="firstname">Dan</span> <span class="surname">Marsden</span>
+</h3></div></div>
+<div><div class="author"><h3 class="author">
+<span class="firstname">Tobias</span> <span class="surname">Schwinger</span>
+</h3></div></div>
 <div><p class="copyright">Copyright © 2001-2007 Joel de Guzman, Dan Marsden, Tobias
       Schwinger</p></div>
 <div><div class="legalnotice">
-<a name="id385503"></a><p>
+<a name="id455875"></a><p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -48,142 +57,152 @@
 <dt><span class="section">deduce_sequence</span></dt>
 <dt><span class="section">pair</span></dt>
 </dl></dd>
-<dt><span class="section">Iterators</span></dt>
+<dt><span class="section">Iterator</span></dt>
 <dd><dl>
-<dt><span class="section">Concepts</span></dt>
+<dt><span class="section">Concepts</span></dt>
 <dd><dl>
-<dt><span class="section"><a href="fusion/iterators/concepts/forward_iterator.html">Forward
+<dt><span class="section"><a href="fusion/iterator/concepts/forward_iterator.html">Forward
         Iterator</a></span></dt>
-<dt><span class="section"><a href="fusion/iterators/concepts/bidirectional_iterator.html">Bidirectional
+<dt><span class="section"><a href="fusion/iterator/concepts/bidirectional_iterator.html">Bidirectional
         Iterator</a></span></dt>
-<dt><span class="section"><a href="fusion/iterators/concepts/random_access_iterator.html">Random
+<dt><span class="section"><a href="fusion/iterator/concepts/random_access_iterator.html">Random
         Access Iterator</a></span></dt>
 </dl></dd>
-<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Functions</span></dt>
 <dd><dl>
-<dt><span class="section">deref</span></dt>
-<dt><span class="section">next</span></dt>
-<dt><span class="section">prior</span></dt>
-<dt><span class="section">distance</span></dt>
-<dt><span class="section">advance</span></dt>
-<dt><span class="section">advance_c</span></dt>
+<dt><span class="section">deref</span></dt>
+<dt><span class="section">next</span></dt>
+<dt><span class="section">prior</span></dt>
+<dt><span class="section">distance</span></dt>
+<dt><span class="section">advance</span></dt>
+<dt><span class="section">advance_c</span></dt>
 </dl></dd>
-<dt><span class="section">Operators</span></dt>
+<dt><span class="section">Operator</span></dt>
 <dd><dl>
-<dt><span class="section"><a href="fusion/iterators/operators/operator_unary_star.html"> Operator
+<dt><span class="section"><a href="fusion/iterator/operator/operator_unary_star.html"> Operator
         *</a></span></dt>
-<dt><span class="section"><a href="fusion/iterators/operators/operator_equality.html"> Operator
+<dt><span class="section"><a href="fusion/iterator/operator/operator_equality.html"> Operator
         ==</a></span></dt>
-<dt><span class="section"><a href="fusion/iterators/operators/operator_inequality.html"> Operator
+<dt><span class="section"><a href="fusion/iterator/operator/operator_inequality.html"> Operator
         !=</a></span></dt>
 </dl></dd>
-<dt><span class="section">Metafunctions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
 <dd><dl>
-<dt><span class="section">value_of</span></dt>
-<dt><span class="section">deref</span></dt>
-<dt><span class="section">next</span></dt>
-<dt><span class="section">prior</span></dt>
-<dt><span class="section">equal_to</span></dt>
-<dt><span class="section">distance</span></dt>
-<dt><span class="section">advance</span></dt>
-<dt><span class="section">advance_c</span></dt>
+<dt><span class="section">value_of</span></dt>
+<dt><span class="section">deref</span></dt>
+<dt><span class="section">next</span></dt>
+<dt><span class="section">prior</span></dt>
+<dt><span class="section">equal_to</span></dt>
+<dt><span class="section">distance</span></dt>
+<dt><span class="section">advance</span></dt>
+<dt><span class="section">advance_c</span></dt>
 </dl></dd>
 </dl></dd>
-<dt><span class="section">Sequences</span></dt>
+<dt><span class="section">Sequence</span></dt>
 <dd><dl>
-<dt><span class="section">Concepts</span></dt>
+<dt><span class="section">Concepts</span></dt>
 <dd><dl>
-<dt><span class="section"><a href="fusion/sequences/concepts/forward_sequence.html">Forward
+<dt><span class="section"><a href="fusion/sequence/concepts/forward_sequence.html">Forward
         Sequence</a></span></dt>
-<dt><span class="section"><a href="fusion/sequences/concepts/bidirectional_sequence.html">Bidirectional
+<dt><span class="section"><a href="fusion/sequence/concepts/bidirectional_sequence.html">Bidirectional
         Sequence</a></span></dt>
-<dt><span class="section"><a href="fusion/sequences/concepts/random_access_sequence.html">Random
+<dt><span class="section"><a href="fusion/sequence/concepts/random_access_sequence.html">Random
         Access Sequence</a></span></dt>
-<dt><span class="section"><a href="fusion/sequences/concepts/associative_sequence.html">Associative
+<dt><span class="section"><a href="fusion/sequence/concepts/associative_sequence.html">Associative
         Sequence</a></span></dt>
 </dl></dd>
-<dt><span class="section">Containers</span></dt>
+<dt><span class="section">Intrinsic</span></dt>
 <dd><dl>
-<dt><span class="section">vector</span></dt>
-<dt><span class="section">cons</span></dt>
-<dt><span class="section">list</span></dt>
-<dt><span class="section">set</span></dt>
-<dt><span class="section">map</span></dt>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
 </dl></dd>
-<dt><span class="section">Views</span></dt>
+<dt><span class="section">Operator</span></dt>
 <dd><dl>
-<dt><span class="section">single_view</span></dt>
-<dt><span class="section">filter_view</span></dt>
-<dt><span class="section">iterator_range</span></dt>
-<dt><span class="section">joint_view</span></dt>
-<dt><span class="section">zip_view</span></dt>
-<dt><span class="section">transform_view</span></dt>
-<dt><span class="section">reverse_view</span></dt>
+<dt><span class="section">I/O</span></dt>
+<dt><span class="section">Comparison</span></dt>
 </dl></dd>
-<dt><span class="section">Adapted</span></dt>
-<dd><dl>
-<dt><span class="section">std::pair</span></dt>
-<dt><span class="section">mpl sequence</span></dt>
-<dt><span class="section">boost::array</span></dt>
-<dt><span class="section">boost::tuple</span></dt>
-<dt><span class="section">boost::variant</span></dt>
 </dl></dd>
-<dt><span class="section">Intrinsics</span></dt>
+<dt><span class="section">Container</span></dt>
 <dd><dl>
-<dt><span class="section">Functions</span></dt>
-<dt><span class="section">Metafunctions</span></dt>
-</dl></dd>
-<dt><span class="section">Generation</span></dt>
+<dt><span class="section">vector</span></dt>
+<dt><span class="section">cons</span></dt>
+<dt><span class="section">list</span></dt>
+<dt><span class="section">set</span></dt>
+<dt><span class="section">map</span></dt>
+<dt><span class="section">Generation</span></dt>
 <dd><dl>
-<dt><span class="section">Functions</span></dt>
-<dt><span class="section">MetaFunctions</span></dt>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">MetaFunctions</span></dt>
 </dl></dd>
-<dt><span class="section">Conversion</span></dt>
+<dt><span class="section">Conversion</span></dt>
 <dd><dl>
-<dt><span class="section">Functions</span></dt>
-<dt><span class="section">Metafunctions</span></dt>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
 </dl></dd>
-<dt><span class="section">Operators</span></dt>
+</dl></dd>
+<dt><span class="section">View</span></dt>
 <dd><dl>
-<dt><span class="section">I/O</span></dt>
-<dt><span class="section">Comparison</span></dt>
+<dt><span class="section">single_view</span></dt>
+<dt><span class="section">filter_view</span></dt>
+<dt><span class="section">iterator_range</span></dt>
+<dt><span class="section">joint_view</span></dt>
+<dt><span class="section">zip_view</span></dt>
+<dt><span class="section">transform_view</span></dt>
+<dt><span class="section">reverse_view</span></dt>
 </dl></dd>
+<dt><span class="section">Adapted</span></dt>
+<dd><dl>
+<dt><span class="section">std::pair</span></dt>
+<dt><span class="section">mpl sequence</span></dt>
+<dt><span class="section">boost::array</span></dt>
+<dt><span class="section">boost::tuple</span></dt>
+<dt><span class="section">boost::variant</span></dt>
 </dl></dd>
-<dt><span class="section">Algorithms</span></dt>
+<dt><span class="section">Algorithm</span></dt>
 <dd><dl>
-<dt><span class="section">Iteration</span></dt>
+<dt><span class="section">Iteration</span></dt>
 <dd><dl>
-<dt><span class="section">Functions</span></dt>
-<dt><span class="section">Metafunctions</span></dt>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
 </dl></dd>
-<dt><span class="section">Query</span></dt>
+<dt><span class="section">Query</span></dt>
 <dd><dl>
-<dt><span class="section">Functions</span></dt>
-<dt><span class="section">Metafunctions</span></dt>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
 </dl></dd>
-<dt><span class="section">Transformation</span></dt>
+<dt><span class="section">Transformation</span></dt>
 <dd><dl>
-<dt><span class="section">Functions</span></dt>
-<dt><span class="section">Metafunctions</span></dt>
+<dt><span class="section">Functions</span></dt>
+<dt><span class="section">Metafunctions</span></dt>
 </dl></dd>
 </dl></dd>
-<dt><span class="section">Tuples</span></dt>
+<dt><span class="section">Tuple</span></dt>
 <dd><dl>
-<dt><span class="section">Class template tuple</span></dt>
+<dt><span class="section">Class template tuple</span></dt>
 <dd><dl>
-<dt><span class="section">Construction</span></dt>
-<dt><span class="section"><a href="fusion/tuples/class_template_tuple/tuple_creation_functions.html">Tuple
+<dt><span class="section">Construction</span></dt>
+<dt><span class="section"><a href="fusion/tuple/class_template_tuple/tuple_creation_functions.html">Tuple
         creation functions</a></span></dt>
-<dt><span class="section"><a href="fusion/tuples/class_template_tuple/tuple_helper_classes.html">Tuple
+<dt><span class="section"><a href="fusion/tuple/class_template_tuple/tuple_helper_classes.html">Tuple
         helper classes</a></span></dt>
-<dt><span class="section"><a href="fusion/tuples/class_template_tuple/element_access.html">Element
+<dt><span class="section"><a href="fusion/tuple/class_template_tuple/element_access.html">Element
         access</a></span></dt>
-<dt><span class="section"><a href="fusion/tuples/class_template_tuple/relational_operators.html">Relational
+<dt><span class="section"><a href="fusion/tuple/class_template_tuple/relational_operators.html">Relational
         operators</a></span></dt>
 </dl></dd>
-<dt><span class="section">Pairs</span></dt>
+<dt><span class="section">Pairs</span></dt>
 </dl></dd>
 <dt><span class="section">Extension</span></dt>
+<dd><dl>
+<dt><span class="section"> The Full Extension Mechanism</span></dt>
+<dt><span class="section">Sequence Facade</span></dt>
+<dt><span class="section">Iterator Facade</span></dt>
+<dt><span class="section">Macros</span></dt>
+<dd><dl>
+<dt><span class="section"> BOOST_FUSION_ADAPT_STRUCT</span></dt>
+<dt><span class="section"> BOOST_FUSION_ADAPT_ASSOC_STRUCT</span></dt>
+</dl></dd>
+</dl></dd>
 <dt><span class="section">Functional</span></dt>
 <dd><dl>
 <dt><span class="section">Concepts</span></dt>
@@ -225,7 +244,7 @@
 </div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: September 22, 2007 at 01:00:16 GMT</small></p></td>
+<td align="left"><p><small>Last revised: November 06, 2007 at 12:07:46 GMT</small></p></td>
 <td align="right"><small></small></td>
 </tr></table>
 <hr>

Modified: trunk/libs/fusion/doc/quick_start.qbk
==============================================================================
--- trunk/libs/fusion/doc/quick_start.qbk (original)
+++ trunk/libs/fusion/doc/quick_start.qbk 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -5,7 +5,7 @@
 multiple heterogeneous elements (triples, quadruples, etc.). The tuple is
 more or less a synonym for fusion's `__vector__`.
 
-For starters, we shall include all of Fusion's __sequence__s [footnote There
+For starters, we shall include all of Fusion's __sequence__(s) [footnote There
 are finer grained header files available if you wish to have more control
 over which components to include (see section __organization__ for
 details).]:

Modified: trunk/libs/fusion/doc/sequence.qbk
==============================================================================
--- trunk/libs/fusion/doc/sequence.qbk (original)
+++ trunk/libs/fusion/doc/sequence.qbk 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -1064,7 +1064,7 @@
 [heading Description]
 
 Returns the result type of __at__[footnote __result_of_at__ reflects the
-actual return type of the function __at__. __sequence__s typically return
+actual return type of the function __at__. __sequence__(s) typically return
 references to its elements via the __at__ function. If you want to get
 the actual element type, use __result_of_value_at__].
 
@@ -1103,7 +1103,7 @@
 [heading Description]
 
 Returns the result type of __at_c__[footnote __result_of_at_c__ reflects
-the actual return type of the function __at_c__. __sequence__s typically
+the actual return type of the function __at_c__. __sequence__(s) typically
 return references to its elements via the __at_c__ function. If you want to
 get the actual element type, use __result_of_value_at_c__].
 
@@ -1362,9 +1362,9 @@
 
 The I/O operators: `<<` and `>>` work generically on all Fusion sequences.
 The global `operator<<` has been overloaded for generic output streams such
-that __sequence__s are output by recursively calling `operator<<` for each
+that __sequence__(s) are output by recursively calling `operator<<` for each
 element. Analogously, the global `operator>>` has been overloaded to
-extract __sequence__s from generic input streams by recursively calling
+extract __sequence__(s) from generic input streams by recursively calling
 `operator>>` for each element.
 
 The default delimiter between the elements is space, and the __sequence__
@@ -1406,9 +1406,9 @@
     std::cin >> set_open('[') >> set_close(']') >> set_delimiter(':');
     std::cin >> j;
 
-reads the data into the __vector__s `i` and `j`.
+reads the data into the __vector__(s) `i` and `j`.
 
-Note that extracting __sequence__s with `std::string` or C-style string
+Note that extracting __sequence__(s) with `std::string` or C-style string
 elements does not generally work, since the streamed __sequence__
 representation may not be unambiguously parseable.
 
@@ -1526,7 +1526,7 @@
 
 [table
     [[Parameter] [Requirement] [Description]]
- [[`a, b`] [Instances of __sequence__] [__sequence__s to compare]]
+ [[`a, b`] [Instances of __sequence__] [__sequence__(s) to compare]]
 ]
 
 [heading Expression Semantics]
@@ -1577,7 +1577,7 @@
 
 [table
     [[Parameter] [Requirement] [Description]]
- [[`a, b`] [Instances of __sequence__] [__sequence__s to compare]]
+ [[`a, b`] [Instances of __sequence__] [__sequence__(s) to compare]]
 ]
 
 [heading Expression Semantics]
@@ -1628,7 +1628,7 @@
 
 [table
     [[Parameter] [Requirement] [Description]]
- [[`a, b`] [Instances of __sequence__] [__sequence__s to compare]]
+ [[`a, b`] [Instances of __sequence__] [__sequence__(s) to compare]]
 ]
 
 [heading Expression Semantics]
@@ -1677,7 +1677,7 @@
 
 [table
     [[Parameter] [Requirement] [Description]]
- [[`a, b`] [Instances of __sequence__] [__sequence__s to compare]]
+ [[`a, b`] [Instances of __sequence__] [__sequence__(s) to compare]]
 ]
 
 [heading Expression Semantics]
@@ -1726,7 +1726,7 @@
 
 [table
     [[Parameter] [Requirement] [Description]]
- [[`a, b`] [Instances of __sequence__] [__sequence__s to compare]]
+ [[`a, b`] [Instances of __sequence__] [__sequence__(s) to compare]]
 ]
 
 [heading Expression Semantics]
@@ -1775,7 +1775,7 @@
 
 [table
     [[Parameter] [Requirement] [Description]]
- [[`a, b`] [Instances of __sequence__] [__sequence__s to compare]]
+ [[`a, b`] [Instances of __sequence__] [__sequence__(s) to compare]]
 ]
 
 [heading Expression Semantics]

Modified: trunk/libs/fusion/doc/view.qbk
==============================================================================
--- trunk/libs/fusion/doc/view.qbk (original)
+++ trunk/libs/fusion/doc/view.qbk 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -259,7 +259,7 @@
 
 [heading Description]
 
-`zip_view` presents a view which iterates over a collection of __sequence__s in parallel. A `zip_view`
+`zip_view` presents a view which iterates over a collection of __sequence__(s) in parallel. A `zip_view`
 is constructed from a __sequence__ of references to the component __sequence__s.
 
 [heading Header]

Modified: trunk/libs/fusion/test/algorithm/clear.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/clear.cpp (original)
+++ trunk/libs/fusion/test/algorithm/clear.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -8,7 +8,7 @@
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/algorithm/transformation/clear.hpp>
 #include <boost/mpl/vector_c.hpp>
 

Modified: trunk/libs/fusion/test/algorithm/erase.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/erase.cpp (original)
+++ trunk/libs/fusion/test/algorithm/erase.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -10,7 +10,7 @@
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/algorithm/transformation/erase.hpp>
 #include <boost/mpl/vector_c.hpp>
 #include <boost/mpl/begin_end.hpp>

Modified: trunk/libs/fusion/test/algorithm/erase_key.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/erase_key.cpp (original)
+++ trunk/libs/fusion/test/algorithm/erase_key.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -6,14 +6,14 @@
 ==============================================================================*/
 #include <boost/detail/lightweight_test.hpp>
 #include <boost/fusion/container/set/set.hpp>
-#include <boost/fusion/sequence/generation/make_set.hpp>
+#include <boost/fusion/container/generation/make_set.hpp>
 #include <boost/fusion/container/map/map.hpp>
-#include <boost/fusion/sequence/generation/make_map.hpp>
+#include <boost/fusion/container/generation/make_map.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/container/vector/convert.hpp>
 #include <boost/fusion/container/set/convert.hpp>
 #include <boost/fusion/container/map/convert.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/sequence/intrinsic/size.hpp>
 #include <boost/fusion/iterator/deref.hpp>
 #include <boost/fusion/algorithm/transformation/erase_key.hpp>

Modified: trunk/libs/fusion/test/algorithm/ext_/find_if_s.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/ext_/find_if_s.cpp (original)
+++ trunk/libs/fusion/test/algorithm/ext_/find_if_s.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -10,7 +10,7 @@
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/algorithm/query/ext_/find_if_s.hpp>
 #include <boost/fusion/container/ext_/tree.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/mpl/vector.hpp>
 #include <boost/mpl/vector_c.hpp>
 #include <boost/mpl/less.hpp>

Modified: trunk/libs/fusion/test/algorithm/ext_/for_each_s.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/ext_/for_each_s.cpp (original)
+++ trunk/libs/fusion/test/algorithm/ext_/for_each_s.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -10,7 +10,7 @@
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/algorithm/iteration/ext_/for_each_s.hpp>
 #include <boost/mpl/vector_c.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/container/ext_/tree.hpp>
 
 struct print

Modified: trunk/libs/fusion/test/algorithm/filter.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/filter.cpp (original)
+++ trunk/libs/fusion/test/algorithm/filter.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -9,7 +9,7 @@
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/algorithm/transformation/filter.hpp>
 #include <boost/mpl/vector.hpp>

Modified: trunk/libs/fusion/test/algorithm/filter_if.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/filter_if.cpp (original)
+++ trunk/libs/fusion/test/algorithm/filter_if.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -8,7 +8,7 @@
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/algorithm/transformation/filter_if.hpp>
 #include <boost/type_traits/is_class.hpp>

Modified: trunk/libs/fusion/test/algorithm/fold.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/fold.cpp (original)
+++ trunk/libs/fusion/test/algorithm/fold.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -10,7 +10,7 @@
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/sequence/intrinsic/at.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/algorithm/iteration/fold.hpp>
 #include <boost/fusion/algorithm/iteration/accumulate.hpp>
 #include <boost/type_traits/is_same.hpp>

Modified: trunk/libs/fusion/test/algorithm/insert.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/insert.cpp (original)
+++ trunk/libs/fusion/test/algorithm/insert.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -9,7 +9,7 @@
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/algorithm/transformation/insert.hpp>
 #include <boost/mpl/vector_c.hpp>
 #include <boost/mpl/begin_end.hpp>

Modified: trunk/libs/fusion/test/algorithm/insert_range.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/insert_range.cpp (original)
+++ trunk/libs/fusion/test/algorithm/insert_range.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -9,7 +9,7 @@
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/algorithm/transformation/insert_range.hpp>
 #include <boost/mpl/vector_c.hpp>
 #include <boost/mpl/begin_end.hpp>

Modified: trunk/libs/fusion/test/algorithm/join.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/join.cpp (original)
+++ trunk/libs/fusion/test/algorithm/join.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -7,7 +7,7 @@
 ==============================================================================*/
 #include <boost/detail/lightweight_test.hpp>
 #include <boost/fusion/algorithm/transformation/join.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/mpl/vector/vector10_c.hpp>

Modified: trunk/libs/fusion/test/algorithm/pop_back.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/pop_back.cpp (original)
+++ trunk/libs/fusion/test/algorithm/pop_back.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -9,7 +9,7 @@
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/algorithm/transformation/pop_back.hpp>
 #include <boost/mpl/vector_c.hpp>
 

Modified: trunk/libs/fusion/test/algorithm/pop_front.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/pop_front.cpp (original)
+++ trunk/libs/fusion/test/algorithm/pop_front.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -9,7 +9,7 @@
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/algorithm/transformation/pop_front.hpp>
 #include <boost/mpl/vector_c.hpp>
 

Modified: trunk/libs/fusion/test/algorithm/push_back.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/push_back.cpp (original)
+++ trunk/libs/fusion/test/algorithm/push_back.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -10,7 +10,7 @@
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/sequence/intrinsic/at.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/algorithm/transformation/push_back.hpp>
 #include <boost/fusion/algorithm/iteration/for_each.hpp>
 #include <boost/mpl/vector_c.hpp>

Modified: trunk/libs/fusion/test/algorithm/push_front.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/push_front.cpp (original)
+++ trunk/libs/fusion/test/algorithm/push_front.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -9,7 +9,7 @@
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/algorithm/transformation/push_front.hpp>
 #include <boost/mpl/vector_c.hpp>
 #include <string>

Modified: trunk/libs/fusion/test/algorithm/remove.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/remove.cpp (original)
+++ trunk/libs/fusion/test/algorithm/remove.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -8,7 +8,7 @@
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/algorithm/transformation/remove.hpp>
 #include <boost/mpl/vector.hpp>

Modified: trunk/libs/fusion/test/algorithm/remove_if.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/remove_if.cpp (original)
+++ trunk/libs/fusion/test/algorithm/remove_if.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -8,7 +8,7 @@
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/algorithm/transformation/remove_if.hpp>
 #include <boost/type_traits/is_class.hpp>

Modified: trunk/libs/fusion/test/algorithm/replace.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/replace.cpp (original)
+++ trunk/libs/fusion/test/algorithm/replace.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -10,7 +10,7 @@
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/sequence/intrinsic/at.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/algorithm/transformation/replace.hpp>
 #include <string>
 

Modified: trunk/libs/fusion/test/algorithm/replace_if.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/replace_if.cpp (original)
+++ trunk/libs/fusion/test/algorithm/replace_if.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -11,7 +11,7 @@
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/sequence/intrinsic/at.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/algorithm/transformation/replace_if.hpp>
 #include <string>
 

Modified: trunk/libs/fusion/test/algorithm/reverse.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/reverse.cpp (original)
+++ trunk/libs/fusion/test/algorithm/reverse.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -8,7 +8,7 @@
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/algorithm/transformation/reverse.hpp>
 #include <boost/mpl/range_c.hpp>

Modified: trunk/libs/fusion/test/algorithm/transform.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/transform.cpp (original)
+++ trunk/libs/fusion/test/algorithm/transform.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -9,7 +9,7 @@
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/algorithm/transformation/transform.hpp>
 #include <boost/type_traits/is_class.hpp>

Modified: trunk/libs/fusion/test/algorithm/zip.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/zip.cpp (original)
+++ trunk/libs/fusion/test/algorithm/zip.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -7,7 +7,7 @@
 ==============================================================================*/
 #include <boost/detail/lightweight_test.hpp>
 #include <boost/fusion/algorithm/transformation/zip.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/mpl/vector.hpp>

Modified: trunk/libs/fusion/test/functional/fused.cpp
==============================================================================
--- trunk/libs/fusion/test/functional/fused.cpp (original)
+++ trunk/libs/fusion/test/functional/fused.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -12,7 +12,7 @@
 #include <boost/noncopyable.hpp>
 #include <boost/blank.hpp>
 
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/container/vector.hpp>
 
 #include <boost/type_traits/is_same.hpp>

Modified: trunk/libs/fusion/test/functional/fused_function_object.cpp
==============================================================================
--- trunk/libs/fusion/test/functional/fused_function_object.cpp (original)
+++ trunk/libs/fusion/test/functional/fused_function_object.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -12,7 +12,7 @@
 #include <boost/noncopyable.hpp>
 #include <boost/blank.hpp>
 
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/container/vector.hpp>
 
 namespace fusion = boost::fusion;

Modified: trunk/libs/fusion/test/functional/fused_procedure.cpp
==============================================================================
--- trunk/libs/fusion/test/functional/fused_procedure.cpp (original)
+++ trunk/libs/fusion/test/functional/fused_procedure.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -12,7 +12,7 @@
 #include <boost/noncopyable.hpp>
 #include <boost/blank.hpp>
 
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/container/vector.hpp>
 
 namespace fusion = boost::fusion;

Modified: trunk/libs/fusion/test/functional/make_fused.cpp
==============================================================================
--- trunk/libs/fusion/test/functional/make_fused.cpp (original)
+++ trunk/libs/fusion/test/functional/make_fused.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -12,7 +12,7 @@
 #include <boost/noncopyable.hpp>
 #include <boost/blank.hpp>
 
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/container/vector.hpp>
 
 namespace fusion = boost::fusion;

Modified: trunk/libs/fusion/test/functional/make_fused_function_object.cpp
==============================================================================
--- trunk/libs/fusion/test/functional/make_fused_function_object.cpp (original)
+++ trunk/libs/fusion/test/functional/make_fused_function_object.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -12,7 +12,7 @@
 #include <boost/noncopyable.hpp>
 #include <boost/blank.hpp>
 
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/container/vector.hpp>
 
 namespace fusion = boost::fusion;

Modified: trunk/libs/fusion/test/functional/make_fused_procedure.cpp
==============================================================================
--- trunk/libs/fusion/test/functional/make_fused_procedure.cpp (original)
+++ trunk/libs/fusion/test/functional/make_fused_procedure.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -12,7 +12,7 @@
 #include <boost/noncopyable.hpp>
 #include <boost/blank.hpp>
 
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/container/vector.hpp>
 
 namespace fusion = boost::fusion;

Modified: trunk/libs/fusion/test/sequence/adapt_assoc_struct.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/adapt_assoc_struct.cpp (original)
+++ trunk/libs/fusion/test/sequence/adapt_assoc_struct.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -18,7 +18,7 @@
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/container/list/list.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/container/vector/convert.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/sequence/comparison/not_equal_to.hpp>

Modified: trunk/libs/fusion/test/sequence/adapt_struct.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/adapt_struct.cpp (original)
+++ trunk/libs/fusion/test/sequence/adapt_struct.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -14,7 +14,7 @@
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/container/list/list.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/container/vector/convert.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/sequence/comparison/not_equal_to.hpp>

Modified: trunk/libs/fusion/test/sequence/as_list.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/as_list.cpp (original)
+++ trunk/libs/fusion/test/sequence/as_list.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -7,8 +7,8 @@
 #include <boost/detail/lightweight_test.hpp>
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/adapted/mpl.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
-#include <boost/fusion/sequence/generation/make_list.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_list.hpp>
 #include <boost/fusion/container/list/convert.hpp>
 #include <boost/fusion/algorithm/transformation/push_back.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>

Modified: trunk/libs/fusion/test/sequence/as_map.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/as_map.cpp (original)
+++ trunk/libs/fusion/test/sequence/as_map.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -7,8 +7,8 @@
 #include <boost/detail/lightweight_test.hpp>
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/adapted/mpl.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
-#include <boost/fusion/sequence/generation/make_list.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_list.hpp>
 #include <boost/fusion/container/map/convert.hpp>
 #include <boost/fusion/container/vector/convert.hpp>
 #include <boost/fusion/algorithm/transformation/push_back.hpp>

Modified: trunk/libs/fusion/test/sequence/as_set.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/as_set.cpp (original)
+++ trunk/libs/fusion/test/sequence/as_set.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -7,8 +7,8 @@
 #include <boost/detail/lightweight_test.hpp>
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/adapted/mpl.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
-#include <boost/fusion/sequence/generation/make_list.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_list.hpp>
 #include <boost/fusion/container/set/convert.hpp>
 #include <boost/fusion/container/list/convert.hpp>
 #include <boost/fusion/container/vector/convert.hpp>

Modified: trunk/libs/fusion/test/sequence/as_vector.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/as_vector.cpp (original)
+++ trunk/libs/fusion/test/sequence/as_vector.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -7,8 +7,8 @@
 #include <boost/detail/lightweight_test.hpp>
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/adapted/mpl.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
-#include <boost/fusion/sequence/generation/make_list.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_list.hpp>
 #include <boost/fusion/container/vector/convert.hpp>
 #include <boost/fusion/algorithm/transformation/push_back.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>

Modified: trunk/libs/fusion/test/sequence/back_extended_deque.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/back_extended_deque.cpp (original)
+++ trunk/libs/fusion/test/sequence/back_extended_deque.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -11,7 +11,7 @@
 #include <boost/fusion/container/deque/deque.hpp>
 #include <boost/fusion/container/deque/back_extended_deque.hpp>
 #include <boost/fusion/sequence/comparison.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/mpl.hpp>
 
 #include <boost/fusion/sequence/intrinsic.hpp>

Modified: trunk/libs/fusion/test/sequence/boost_tuple.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/boost_tuple.cpp (original)
+++ trunk/libs/fusion/test/sequence/boost_tuple.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -14,7 +14,7 @@
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/container/list/list.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/container/vector/convert.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/sequence/comparison/not_equal_to.hpp>

Modified: trunk/libs/fusion/test/sequence/cons.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/cons.cpp (original)
+++ trunk/libs/fusion/test/sequence/cons.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -8,10 +8,10 @@
 #include <string>
 #include <boost/detail/lightweight_test.hpp>
 #include <boost/fusion/container/list/cons.hpp>
-#include <boost/fusion/sequence/generation/make_cons.hpp>
-#include <boost/fusion/sequence/generation/cons_tie.hpp>
+#include <boost/fusion/container/generation/make_cons.hpp>
+#include <boost/fusion/container/generation/cons_tie.hpp>
 #include <boost/fusion/container/vector/vector.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/lambda/lambda.hpp>
 #include <boost/fusion/algorithm/iteration/for_each.hpp>

Modified: trunk/libs/fusion/test/sequence/deque_copy.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/deque_copy.cpp (original)
+++ trunk/libs/fusion/test/sequence/deque_copy.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -7,8 +7,8 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ==============================================================================*/
 #include <boost/fusion/container/deque/deque.hpp>
-#include <boost/fusion/sequence/generation/make_deque.hpp>
-#include <boost/fusion/sequence/generation/deque_tie.hpp>
+#include <boost/fusion/container/generation/make_deque.hpp>
+#include <boost/fusion/container/generation/deque_tie.hpp>
 
 #define FUSION_SEQUENCE deque
 #include "copy.hpp"

Modified: trunk/libs/fusion/test/sequence/deque_make.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/deque_make.cpp (original)
+++ trunk/libs/fusion/test/sequence/deque_make.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -7,7 +7,7 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ==============================================================================*/
 #include <boost/fusion/container/deque/deque.hpp>
-#include <boost/fusion/sequence/generation/make_deque.hpp>
+#include <boost/fusion/container/generation/make_deque.hpp>
 
 #define FUSION_SEQUENCE deque
 #include "make.hpp"

Modified: trunk/libs/fusion/test/sequence/deque_tie.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/deque_tie.cpp (original)
+++ trunk/libs/fusion/test/sequence/deque_tie.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -7,9 +7,9 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ==============================================================================*/
 #include <boost/fusion/container/deque/deque.hpp>
-#include <boost/fusion/sequence/generation/deque_tie.hpp>
-#include <boost/fusion/sequence/generation/ignore.hpp>
-#include <boost/fusion/sequence/generation/make_deque.hpp>
+#include <boost/fusion/container/generation/deque_tie.hpp>
+#include <boost/fusion/container/generation/ignore.hpp>
+#include <boost/fusion/container/generation/make_deque.hpp>
 
 #define FUSION_SEQUENCE deque
 #include "tie.hpp"

Modified: trunk/libs/fusion/test/sequence/ext_/iterator_range_s.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/ext_/iterator_range_s.cpp (original)
+++ trunk/libs/fusion/test/sequence/ext_/iterator_range_s.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -9,7 +9,7 @@
 #include <boost/fusion/algorithm/query/ext_/find_if_s.hpp>
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/container/ext_/tree.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/view/iterator_range/iterator_range.hpp>
 #include <boost/fusion/view/ext_/segmented_iterator_range.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>

Modified: trunk/libs/fusion/test/sequence/filter_view.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/filter_view.cpp (original)
+++ trunk/libs/fusion/test/sequence/filter_view.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -11,7 +11,7 @@
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/view/filter_view/filter_view.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/sequence/intrinsic/size.hpp>
 #include <boost/type_traits/is_class.hpp>
 #include <boost/type_traits/is_same.hpp>

Modified: trunk/libs/fusion/test/sequence/front_extended_deque.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/front_extended_deque.cpp (original)
+++ trunk/libs/fusion/test/sequence/front_extended_deque.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -11,7 +11,7 @@
 #include <boost/fusion/container/deque/deque.hpp>
 #include <boost/fusion/container/deque/front_extended_deque.hpp>
 #include <boost/fusion/sequence/comparison.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/mpl.hpp>
 
 #include <boost/fusion/sequence/intrinsic.hpp>

Modified: trunk/libs/fusion/test/sequence/io.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/io.cpp (original)
+++ trunk/libs/fusion/test/sequence/io.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -6,7 +6,7 @@
 ==============================================================================*/
 #include <boost/detail/lightweight_test.hpp>
 #include <boost/fusion/container/vector/vector.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/sequence/io/in.hpp>

Modified: trunk/libs/fusion/test/sequence/iterator_range.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/iterator_range.cpp (original)
+++ trunk/libs/fusion/test/sequence/iterator_range.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -6,7 +6,7 @@
 ==============================================================================*/
 #include <boost/detail/lightweight_test.hpp>
 #include <boost/fusion/container/vector/vector.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/view/iterator_range/iterator_range.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/sequence/io/out.hpp>

Modified: trunk/libs/fusion/test/sequence/joint_view.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/joint_view.cpp (original)
+++ trunk/libs/fusion/test/sequence/joint_view.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -9,7 +9,7 @@
 #include <boost/fusion/view/joint_view/joint_view.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/sequence/intrinsic/at.hpp>
 #include <boost/mpl/vector_c.hpp>
 

Modified: trunk/libs/fusion/test/sequence/list_copy.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/list_copy.cpp (original)
+++ trunk/libs/fusion/test/sequence/list_copy.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -6,8 +6,8 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ==============================================================================*/
 #include <boost/fusion/container/list/list.hpp>
-#include <boost/fusion/sequence/generation/make_list.hpp>
-#include <boost/fusion/sequence/generation/list_tie.hpp>
+#include <boost/fusion/container/generation/make_list.hpp>
+#include <boost/fusion/container/generation/list_tie.hpp>
 
 #define FUSION_SEQUENCE list
 #include "copy.hpp"

Modified: trunk/libs/fusion/test/sequence/list_make.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/list_make.cpp (original)
+++ trunk/libs/fusion/test/sequence/list_make.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -6,7 +6,7 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ==============================================================================*/
 #include <boost/fusion/container/list/list.hpp>
-#include <boost/fusion/sequence/generation/make_list.hpp>
+#include <boost/fusion/container/generation/make_list.hpp>
 
 #define FUSION_SEQUENCE list
 #include "make.hpp"

Modified: trunk/libs/fusion/test/sequence/list_tie.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/list_tie.cpp (original)
+++ trunk/libs/fusion/test/sequence/list_tie.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -6,9 +6,9 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ==============================================================================*/
 #include <boost/fusion/container/list/list.hpp>
-#include <boost/fusion/sequence/generation/list_tie.hpp>
-#include <boost/fusion/sequence/generation/ignore.hpp>
-#include <boost/fusion/sequence/generation/make_list.hpp>
+#include <boost/fusion/container/generation/list_tie.hpp>
+#include <boost/fusion/container/generation/ignore.hpp>
+#include <boost/fusion/container/generation/make_list.hpp>
 
 #define FUSION_SEQUENCE list
 #include "tie.hpp"

Modified: trunk/libs/fusion/test/sequence/make_list.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/make_list.cpp (original)
+++ trunk/libs/fusion/test/sequence/make_list.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -6,7 +6,7 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ==============================================================================*/
 #include <boost/fusion/container/list/list.hpp>
-#include <boost/fusion/sequence/generation/make_list.hpp>
+#include <boost/fusion/container/generation/make_list.hpp>
 
 #define FUSION_SEQUENCE list
 #include "make.hpp"

Modified: trunk/libs/fusion/test/sequence/make_vector.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/make_vector.cpp (original)
+++ trunk/libs/fusion/test/sequence/make_vector.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -6,7 +6,7 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ==============================================================================*/
 #include <boost/fusion/container/vector/vector.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 
 #define FUSION_SEQUENCE vector
 #include "make.hpp"

Modified: trunk/libs/fusion/test/sequence/map.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/map.cpp (original)
+++ trunk/libs/fusion/test/sequence/map.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -6,7 +6,7 @@
 ==============================================================================*/
 #include <boost/detail/lightweight_test.hpp>
 #include <boost/fusion/container/map/map.hpp>
-#include <boost/fusion/sequence/generation/make_map.hpp>
+#include <boost/fusion/container/generation/make_map.hpp>
 #include <boost/fusion/sequence/intrinsic/at_key.hpp>
 #include <boost/fusion/sequence/intrinsic/value_at_key.hpp>
 #include <boost/fusion/sequence/intrinsic/has_key.hpp>

Modified: trunk/libs/fusion/test/sequence/map_tie.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/map_tie.cpp (original)
+++ trunk/libs/fusion/test/sequence/map_tie.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -7,7 +7,7 @@
 ==============================================================================*/
 #include <boost/detail/lightweight_test.hpp>
 
-#include <boost/fusion/sequence/generation/map_tie.hpp>
+#include <boost/fusion/container/generation/map_tie.hpp>
 #include <boost/fusion/sequence/intrinsic/at_key.hpp>
 
 struct key_zero;

Modified: trunk/libs/fusion/test/sequence/reverse_view.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/reverse_view.cpp (original)
+++ trunk/libs/fusion/test/sequence/reverse_view.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -8,7 +8,7 @@
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/view/reverse_view/reverse_view.hpp>
 #include <boost/fusion/sequence/intrinsic/begin.hpp>

Modified: trunk/libs/fusion/test/sequence/set.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/set.cpp (original)
+++ trunk/libs/fusion/test/sequence/set.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -6,7 +6,7 @@
 ==============================================================================*/
 #include <boost/detail/lightweight_test.hpp>
 #include <boost/fusion/container/set/set.hpp>
-#include <boost/fusion/sequence/generation/make_set.hpp>
+#include <boost/fusion/container/generation/make_set.hpp>
 #include <boost/fusion/sequence/intrinsic/at_key.hpp>
 #include <boost/fusion/sequence/intrinsic/value_at_key.hpp>
 #include <boost/fusion/sequence/intrinsic/has_key.hpp>

Modified: trunk/libs/fusion/test/sequence/std_pair.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/std_pair.cpp (original)
+++ trunk/libs/fusion/test/sequence/std_pair.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -14,7 +14,7 @@
 #include <boost/fusion/sequence/io/out.hpp>
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/container/list/list.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/container/vector/convert.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/sequence/comparison/not_equal_to.hpp>

Modified: trunk/libs/fusion/test/sequence/swap.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/swap.cpp (original)
+++ trunk/libs/fusion/test/sequence/swap.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -7,7 +7,7 @@
 ==============================================================================*/
 #include <boost/fusion/sequence/intrinsic/swap.hpp>
 #include <boost/fusion/container/vector.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/detail/lightweight_test.hpp>
 

Modified: trunk/libs/fusion/test/sequence/transform_view.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/transform_view.cpp (original)
+++ trunk/libs/fusion/test/sequence/transform_view.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -8,7 +8,7 @@
 #include <boost/fusion/container/vector/vector.hpp>
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/fusion/sequence/io/out.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
 #include <boost/fusion/view/transform_view/transform_view.hpp>
 #include <boost/fusion/sequence/intrinsic/begin.hpp>

Modified: trunk/libs/fusion/test/sequence/vector_copy.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/vector_copy.cpp (original)
+++ trunk/libs/fusion/test/sequence/vector_copy.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -6,8 +6,8 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ==============================================================================*/
 #include <boost/fusion/container/vector/vector.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
-#include <boost/fusion/sequence/generation/vector_tie.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/vector_tie.hpp>
 
 #define FUSION_SEQUENCE vector
 #include "copy.hpp"

Modified: trunk/libs/fusion/test/sequence/vector_make.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/vector_make.cpp (original)
+++ trunk/libs/fusion/test/sequence/vector_make.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -6,7 +6,7 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ==============================================================================*/
 #include <boost/fusion/container/vector/vector.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 
 #define FUSION_SEQUENCE vector
 #include "make.hpp"

Modified: trunk/libs/fusion/test/sequence/vector_tie.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/vector_tie.cpp (original)
+++ trunk/libs/fusion/test/sequence/vector_tie.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -6,9 +6,9 @@
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ==============================================================================*/
 #include <boost/fusion/container/vector/vector.hpp>
-#include <boost/fusion/sequence/generation/vector_tie.hpp>
-#include <boost/fusion/sequence/generation/ignore.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/vector_tie.hpp>
+#include <boost/fusion/container/generation/ignore.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 
 #define FUSION_SEQUENCE vector
 #include "tie.hpp"

Modified: trunk/libs/fusion/test/sequence/zip_view.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/zip_view.cpp (original)
+++ trunk/libs/fusion/test/sequence/zip_view.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -19,7 +19,7 @@
 #include <boost/fusion/iterator/deref.hpp>
 #include <boost/fusion/iterator/advance.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/mpl/assert.hpp>
 #include <boost/mpl/equal_to.hpp>

Modified: trunk/libs/fusion/test/sequence/zip_view2.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/zip_view2.cpp (original)
+++ trunk/libs/fusion/test/sequence/zip_view2.cpp 2007-11-06 07:13:52 EST (Tue, 06 Nov 2007)
@@ -21,7 +21,7 @@
 #include <boost/fusion/iterator/deref.hpp>
 #include <boost/fusion/iterator/advance.hpp>
 #include <boost/fusion/sequence/comparison/equal_to.hpp>
-#include <boost/fusion/sequence/generation/make_vector.hpp>
+#include <boost/fusion/container/generation/make_vector.hpp>
 #include <boost/fusion/adapted/mpl.hpp>
 #include <boost/mpl/assert.hpp>
 #include <boost/mpl/equal_to.hpp>


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk