mcrl2/data/experimental/type_check_tree.h

Include file:

#include "mcrl2/data/experimental/type_check_tree.h"

add your file description here.

Classes

  • mcrl2::data::and_constraint
  • mcrl2::data::application_node
  • mcrl2::data::bag_enumeration_node
  • mcrl2::data::bag_or_set_enumeration_node
  • mcrl2::data::binary_operator_node
  • mcrl2::data::constant_node
  • mcrl2::data::empty_bag_node
  • mcrl2::data::empty_list_node
  • mcrl2::data::empty_set_node
  • mcrl2::data::exists_node
  • mcrl2::data::false_constraint
  • mcrl2::data::false_node
  • mcrl2::data::forall_node
  • mcrl2::data::function_update_node
  • mcrl2::data::id_node
  • mcrl2::data::is_element_of_constraint
  • mcrl2::data::is_equal_to_constraint
  • mcrl2::data::lambda_node
  • mcrl2::data::list_enumeration_node
  • mcrl2::data::number_node
  • mcrl2::data::or_constraint
  • mcrl2::data::set_enumeration_node
  • mcrl2::data::subsort_constraint
  • mcrl2::data::true_constraint
  • mcrl2::data::true_node
  • mcrl2::data::type_check_constraint
  • mcrl2::data::type_check_context
  • mcrl2::data::type_check_node
  • mcrl2::data::type_check_tree_generator
  • mcrl2::data::unary_operator_node
  • mcrl2::data::where_clause_node

Typedefs

type constraint_ptr

typedef for std::shared_ptr< type_check_constraint >

type solution

typedef for std::pair< sort_substitution, int >

type sort_substitution

typedef for std::map< untyped_sort_variable, sort_expression >

type type_check_node_ptr

typedef for std::shared_ptr< type_check_node >

Functions

function_sort_list mcrl2::data::filter_sorts(const function_sort_list &sorts, std::size_t arity)
bool mcrl2::data::has_untyped_sort(const T &x)
std::vector<constraint_ptr> mcrl2::data::join_or_is_element_of_constraints(const std::vector<constraint_ptr> &constraints)
constraint_ptr make_and_constraint(const std::vector<constraint_ptr> &alternatives)
constraint_ptr mcrl2::data::make_false_constraint(const std::string &message)
constraint_ptr mcrl2::data::make_function_sort_constraint(const function_sort &f1, const sort_expression &s2)
constraint_ptr mcrl2::data::make_is_element_of_constraint(const sort_expression &s, const std::vector<sort_expression> &sorts, int cost = 0)
constraint_ptr make_is_equal_to_constraint(const sort_expression &s1, const sort_expression &s2, int cost = 0)
constraint_ptr make_or_constraint(const std::vector<constraint_ptr> &alternatives)
constraint_ptr mcrl2::data::make_subsort_constraint(const sort_expression &s1, const sort_expression &s2, int cost = 0)
constraint_ptr mcrl2::data::make_true_constraint(int cost = 0)
const untyped_sort_variable &mcrl2::data::make_untyped_sort_variable(const sort_expression &x)
void mcrl2::data::print_node(const type_check_node_ptr &node)
std::string mcrl2::data::print_node_vector(const std::string &name, const Container &nodes, const std::string &sep = ", ", const std::string &first = "", const std::string &last = "")
std::string mcrl2::data::print_vector(const std::string &name, const Container &nodes)
T mcrl2::data::replace_untyped_sort(const T &x, const sort_expression &replacement)
sort_expression mcrl2::data::substitute(const sort_expression &x, const sort_substitution &sigma)
constraint_ptr substitute_constraint(constraint_ptr p, const sort_substitution &sigma)