mCRL2
Loading...
Searching...
No Matches
mcrl2::lps::detail::remove_parameters_builder Struct Reference

Traverser for removing parameters from LPS data types. These parameters can be either process parameters or free variables. Assignments to these parameters are removed as well. More...

#include <remove.h>

Inheritance diagram for mcrl2::lps::detail::remove_parameters_builder:
mcrl2::data::data_expression_builder< remove_parameters_builder > mcrl2::data::add_data_expressions< Builder, Derived >

Public Types

typedef data_expression_builder< remove_parameters_buildersuper
 
- Public Types inherited from mcrl2::data::add_data_expressions< Builder, Derived >
typedef Builder< Derived > super
 

Public Member Functions

 remove_parameters_builder (const std::set< data::variable > &to_be_removed_)
 
void update (std::set< data::variable > &x)
 Removes parameters from a set container.
 
template<class T >
void apply (atermpp::term_list< T > &result, const data::variable_list &x)
 Removes parameters from a list of variables.
 
template<class T >
void apply (atermpp::term_list< T > &result, const data::assignment_list &x)
 Removes parameters from a list of assignments. Assignments to removed parameters are removed.
 
void update (linear_process &x)
 Removes parameters from a linear_process.
 
void update (stochastic_linear_process &x)
 Removes parameters from a linear_process.
 
data::data_expression_list remove_expressions (const data::data_expression_list &e)
 Removes expressions from e at the corresponding positions of process_parameters.
 
template<class T >
void apply (T &result, const process_initializer &x)
 
template<class T >
void apply (T &result, const stochastic_process_initializer &x)
 
void update (specification &x)
 Removes parameters from a linear process specification.
 
void update (stochastic_specification &x)
 Removes parameters from a linear process specification.
 
- Public Member Functions inherited from mcrl2::data::add_data_expressions< Builder, Derived >
template<class T >
void apply (T &result, const data::variable &x)
 
template<class T >
void apply (T &result, const data::function_symbol &x)
 
template<class T >
void apply (T &result, const data::application &x)
 
template<class T >
void apply (T &result, const data::where_clause &x)
 
template<class T >
void apply (T &result, const data::machine_number &x)
 
template<class T >
void apply (T &result, const data::untyped_identifier &x)
 
template<class T >
void apply (T &result, const data::assignment &x)
 
template<class T >
void apply (T &result, const data::untyped_identifier_assignment &x)
 
template<class T >
void apply (T &result, const data::forall &x)
 
template<class T >
void apply (T &result, const data::exists &x)
 
template<class T >
void apply (T &result, const data::lambda &x)
 
template<class T >
void apply (T &result, const data::set_comprehension &x)
 
template<class T >
void apply (T &result, const data::bag_comprehension &x)
 
template<class T >
void apply (T &result, const data::untyped_set_or_bag_comprehension &x)
 
template<class T >
void apply (T &result, const data::data_equation &x)
 
template<class T >
void apply (T &result, const data::untyped_data_parameter &x)
 
template<class T >
void apply (T &result, const data::data_expression &x)
 
template<class T >
void apply (T &result, const data::assignment_expression &x)
 
template<class T >
void apply (T &result, const data::abstraction &x)
 

Public Attributes

const std::set< data::variable > & to_be_removed
 
data::variable_list process_parameters
 

Detailed Description

Traverser for removing parameters from LPS data types. These parameters can be either process parameters or free variables. Assignments to these parameters are removed as well.

Definition at line 60 of file remove.h.

Member Typedef Documentation

◆ super

Constructor & Destructor Documentation

◆ remove_parameters_builder()

mcrl2::lps::detail::remove_parameters_builder::remove_parameters_builder ( const std::set< data::variable > &  to_be_removed_)
inline

Definition at line 71 of file remove.h.

Member Function Documentation

◆ apply() [1/4]

template<class T >
void mcrl2::lps::detail::remove_parameters_builder::apply ( atermpp::term_list< T > &  result,
const data::assignment_list x 
)
inline

Removes parameters from a list of assignments. Assignments to removed parameters are removed.

Definition at line 104 of file remove.h.

◆ apply() [2/4]

template<class T >
void mcrl2::lps::detail::remove_parameters_builder::apply ( atermpp::term_list< T > &  result,
const data::variable_list x 
)
inline

Removes parameters from a list of variables.

Definition at line 86 of file remove.h.

◆ apply() [3/4]

template<class T >
void mcrl2::lps::detail::remove_parameters_builder::apply ( T &  result,
const process_initializer x 
)
inline

Definition at line 152 of file remove.h.

◆ apply() [4/4]

template<class T >
void mcrl2::lps::detail::remove_parameters_builder::apply ( T &  result,
const stochastic_process_initializer x 
)
inline

Definition at line 159 of file remove.h.

◆ remove_expressions()

data::data_expression_list mcrl2::lps::detail::remove_parameters_builder::remove_expressions ( const data::data_expression_list e)
inline

Removes expressions from e at the corresponding positions of process_parameters.

Definition at line 133 of file remove.h.

◆ update() [1/5]

void mcrl2::lps::detail::remove_parameters_builder::update ( linear_process x)
inline

Removes parameters from a linear_process.

Parameters
xA linear_process

Definition at line 114 of file remove.h.

◆ update() [2/5]

void mcrl2::lps::detail::remove_parameters_builder::update ( specification x)
inline

Removes parameters from a linear process specification.

Parameters
xA linear process specification

Definition at line 169 of file remove.h.

◆ update() [3/5]

void mcrl2::lps::detail::remove_parameters_builder::update ( std::set< data::variable > &  x)
inline

Removes parameters from a set container.

Definition at line 76 of file remove.h.

◆ update() [4/5]

void mcrl2::lps::detail::remove_parameters_builder::update ( stochastic_linear_process x)
inline

Removes parameters from a linear_process.

Parameters
xA linear_process

Definition at line 124 of file remove.h.

◆ update() [5/5]

void mcrl2::lps::detail::remove_parameters_builder::update ( stochastic_specification x)
inline

Removes parameters from a linear process specification.

Parameters
xA linear process specification

Definition at line 178 of file remove.h.

Member Data Documentation

◆ process_parameters

data::variable_list mcrl2::lps::detail::remove_parameters_builder::process_parameters

Definition at line 69 of file remove.h.

◆ to_be_removed

const std::set<data::variable>& mcrl2::lps::detail::remove_parameters_builder::to_be_removed

Definition at line 68 of file remove.h.


The documentation for this struct was generated from the following file: