|
| | RewriterJitty (const data_specification &data_spec, const used_data_equation_selector &) |
| |
| | RewriterJitty (const RewriterJitty &other)=default |
| |
| RewriterJitty & | operator= (const RewriterJitty &other)=delete |
| |
| | ~RewriterJitty () override |
| |
| rewrite_strategy | getStrategy () override |
| | Get rewriter strategy that is used.
|
| |
| data_expression | rewrite (const data_expression &term, substitution_type &sigma) override |
| | Rewrite an mCRL2 data term.
|
| |
| void | rewrite (data_expression &result, const data_expression &term, substitution_type &sigma) override |
| | Rewrite an mCRL2 data term.
|
| |
| std::shared_ptr< detail::Rewriter > | clone () override |
| | Clone a rewriter.
|
| |
| const function_symbol & | this_term_is_in_normal_form () |
| |
| template<class ITERATOR > |
| void | apply_cpp_code_to_higher_order_term (data_expression &result, const application &t, const std::function< void(data_expression &, const data_expression &)> rewrite_cpp_code, ITERATOR begin, ITERATOR end, substitution_type &sigma) |
| |
| | Rewriter (const data_specification &data_spec, const used_data_equation_selector &eq_selector) |
| | Constructor. Do not use directly; use createRewriter() function instead.
|
| |
| virtual | ~Rewriter ()=default |
| | Destructor.
|
| |
| data::enumerator_identifier_generator & | identifier_generator () |
| | The fresh name generator of the rewriter.
|
| |
| virtual rewrite_strategy | getStrategy ()=0 |
| | Get rewriter strategy that is used.
|
| |
| virtual data_expression | rewrite (const data_expression &term, substitution_type &sigma)=0 |
| | Rewrite an mCRL2 data term.
|
| |
| virtual void | rewrite (data_expression &result, const data_expression &term, substitution_type &sigma)=0 |
| | Rewrite an mCRL2 data term.
|
| |
| data_expression | operator() (const data_expression &term, substitution_type &sigma) |
| | Provide the rewriter with a () operator, such that it can also rewrite terms using this operator.
|
| |
| virtual std::shared_ptr< detail::Rewriter > | clone ()=0 |
| | Clone a rewriter.
|
| |
| void | existential_quantifier_enumeration (data_expression &result, const abstraction &t, substitution_type &sigma, bool t1_is_normal_form=false) |
| |
| void | existential_quantifier_enumeration (data_expression &result, const variable_list &vl, const data_expression &t1, substitution_type &sigma, bool t1_is_normal_form=false) |
| |
| void | universal_quantifier_enumeration (data_expression &result, const abstraction &t, substitution_type &sigma, bool t1_is_normal_form=false) |
| |
| void | universal_quantifier_enumeration (data_expression &result, const variable_list &vl, const data_expression &t1, substitution_type &sigma, bool t1_is_normal_form=false) |
| |
| void | rewrite_where (data_expression &result, const where_clause &term, substitution_type &sigma) |
| |
| void | rewrite_single_lambda (data_expression &result, const variable_list &vl, const data_expression &body, substitution_type &sigma, bool body_in_normal_form) |
| |
| void | rewrite_lambda_application (data_expression &result, const data_expression &t, substitution_type &sigma, bool arguments_are_in_normal_form=false) |
| | Rewrite t, assuming that the headsymbol of t, which can be nested, is a lambda term.
|
| |
| void | rewrite_lambda_application (data_expression &result, const abstraction &lambda_term, const application &t, substitution_type &sigma, bool arguments_are_in_normal_form=false) |
| |
| virtual void | thread_initialise () |
| |
|
| template<class ITERATOR > |
| void | apply_cpp_code_to_higher_order_term (data_expression &result, const application &t, std::function< void(data_expression &, const data_expression &)> rewrite_cpp_code, ITERATOR begin, ITERATOR end, substitution_type &sigma) |
| |
| void | rewrite_aux (data_expression &result, const data_expression &term, substitution_type &sigma) |
| | Rewrite a term with a given substitution and put the rewritten term in result.
|
| |
| void | rewrite_aux_function_symbol (data_expression &result, const function_symbol &op, const application &term, substitution_type &sigma, std::size_t do_not_rewrite_first_arguments=0) |
| |
| void | rewrite_aux_const_function_symbol (data_expression &result, const function_symbol &op, substitution_type &sigma) |
| |
| void | make_jitty_strat_sufficiently_larger (std::size_t i) |
| | Auxiliary function to take care that the array jitty_strat is sufficiently large to access element i.
|
| |
| strategy | create_a_cpp_function_based_strategy (const function_symbol &f, const data_specification &data_spec) |
| |
| strategy | create_a_rewriting_based_strategy (const function_symbol &f, const data_equation_list &rules1) |
| |
| strategy | create_strategy (const function_symbol &f, const data_equation_list &rules1, const data_specification &data_spec) |
| |
| void | rebuild_strategy (const data_specification &data_spec, const mcrl2::data::used_data_equation_selector &equation_selector) |
| |
| data_expression | remove_normal_form_function (const data_expression &t) |
| |
| void | add_normal_form_function (data_expression &t) |
| |
| void | subst_values (data_expression &result, const jitty_assignments_for_a_rewrite_rule &assignments, const data_expression &t, data::enumerator_identifier_generator &generator) |
| |
| void | thread_initialise () override |
| |
| Rewriter & | operator= (const Rewriter &other)=default |
| | The copy assignment operator is protected. Public copying is not allowed.
|
| |
| | Rewriter (const Rewriter &other)=default |
| | The copy constructor operator is protected. Public copying is not allowed.
|
| |
| void | quantifier_enumeration (data_expression &result, const variable_list &vl, const data_expression &t1, bool t1_is_normal_form, substitution_type &sigma, const binder_type &binder, data_expression(*lazy_op)(const data_expression &, const data_expression &), const data_expression &identity_element, const data_expression &absorbing_element) |
| |
Definition at line 46 of file jitty.h.