Include file:

#include "mcrl2/data/application.h
class mcrl2::data::detail::transforming_term_appl_prepend_iterator

Iterator for term_appl which prepends a single term to the list, applying ArgumentConvertor to all arguments.

Public types

type iterator_category

typedef for std::input_iterator_tag

Protected attributes

ArgumentConverter m_argument_converter
data_expression m_stable_store

Public member functions

term_appl_prepend_iterator<InputIterator>::reference operator*()

The dereference operator.

Returns: The dereferenced term.

term_appl_prepend_iterator<InputIterator>::pointer operator->()

Dereference the current iterator.

Returns: The dereference term.

transforming_term_appl_prepend_iterator &operator=(const transforming_term_appl_prepend_iterator &other)

The assignment operator.


  • other The term to be assigned.

Returns: A reference to the assigned iterator.

transforming_term_appl_prepend_iterator(InputIterator it, const data_expression *prepend, const ArgumentConverter arg_convert)



  • it Iterator pointing to the argument list.
  • prepend Pointer to a term to be prepended to the argument list.
  • arg_convert A function that is applied to the terms in the argument list.
transforming_term_appl_prepend_iterator(const transforming_term_appl_prepend_iterator &other)

The copy constructor.


  • other The iterator that is copy constructed.