12#ifndef MCRL2_LPS_ADD_BINDING_H
13#define MCRL2_LPS_ADD_BINDING_H
24template <
template <
class>
class Builder,
class Derived>
111 void leave(
const stochastic_process_initializer& x)
119template <
template <
class>
class Builder,
class Derived>
133 static_cast<Derived&
>(*this).enter(x);
134 static_cast<Derived&
>(*this).apply(x.
body());
135 static_cast<Derived&
>(*this).leave(x);
140template <
template <
class>
class Builder,
class Derived>
155 static_cast<Derived&
>(*this).apply(declarations, x.
declarations());
156 static_cast<Derived&
>(*this).enter(x);
158 static_cast<Derived&
>(*this).leave(x);
const std::multiset< variable_type > & bound_variables() const
Returns the bound variables.
\brief Assignment expression
\brief A where expression
const data_expression & body() const
const assignment_expression_list & declarations() const
LPS summand containing a multi-action.
LPS summand containing a deadlock.
const data::variable_list & process_parameters() const
Returns the sequence of process parameters.
const std::set< data::variable > & global_variables() const
Returns the declared free variables of the LPS.
Linear process specification.
LPS summand containing a multi-action.
const stochastic_distribution & distribution() const
Returns the distribution of this summand.
const data::variable_list & variables() const
A stochastic process initializer.
const stochastic_distribution & distribution() const
Linear process specification.
data::variable_list & summation_variables()
Returns the sequence of summation variables.
void make_where_clause(atermpp::aterm &t, const ARGUMENTS &... args)
A class that takes a linear process specification and checks all tau-summands of that LPS for conflue...
Maintains a multiset of bound data variables during traversal.
void decrease_bind_count(const assignment_list &assignments)
void increase_bind_count(const assignment_list &assignments)
void enter(const data::where_clause &x)
void leave(const data::where_clause &x)
Maintains a multiset of bound data variables during traversal.
void decrease_bind_count(const assignment_list &assignments)
void enter(const stochastic_specification &x)
void enter(const action_summand &x)
void leave(const stochastic_specification &x)
data::add_data_variable_binding< Builder, Derived > super
void leave(const deadlock_summand &x)
void leave(const linear_process &x)
void enter(const stochastic_linear_process &x)
void leave(const action_summand &x)
void leave(const stochastic_linear_process &x)
void enter(const specification &x)
void enter(const deadlock_summand &x)
void enter(const stochastic_action_summand &x)
void leave(const specification &x)
void enter(const linear_process &x)
void increase_bind_count(const assignment_list &assignments)
void enter(const stochastic_process_initializer &x)
void leave(const stochastic_action_summand &x)
add_data_variable_binding< Builder, Derived > super
void apply(T &result, data::where_clause &x)
add_data_variable_binding< Builder, Derived > super
void apply(const data::where_clause &x)