12#ifndef MCRL2_DATA_FORALL_H
13#define MCRL2_DATA_FORALL_H
46 template <
typename Container >
63template <class... ARGUMENTS>
71std::string
pp(
const forall& x);
aterm()
Default constructor.
bool empty() const
Returns true if the list's size is 0.
void swap(unprotected_aterm_core &t) noexcept
Swaps this term with its argument.
An abstraction expression.
const variable_list & variables() const
const data_expression & body() const
const binder_type & binding_operator() const
\brief Binder for universal quantification
universal quantification.
forall(forall &&) noexcept=default
forall(const Container &variables, const data_expression &body, typename atermpp::enable_if_container< Container, variable >::type *=nullptr)
forall(const forall &) noexcept=default
Move semantics.
The main namespace for the aterm++ library.
void swap(abstraction &t1, abstraction &t2)
\brief swap overload
bool is_abstraction(const atermpp::aterm &x)
Returns true if the term t is an abstraction.
std::string pp(const abstraction &x)
void make_forall(atermpp::aterm &result, ARGUMENTS... arguments)
void make_abstraction(atermpp::aterm &result, ARGUMENTS... arguments)
std::ostream & operator<<(std::ostream &out, const abstraction &x)
A class that takes a linear process specification and checks all tau-summands of that LPS for conflue...