mcrl2::data::type_checker

Include file:

#include "mcrl2/data/experimental/type_checker.h
class mcrl2::data::type_checker

Protected attributes

std::map<core::identifier_string, sort_expression_list> mcrl2::data::type_checker::m_system_constants
std::map<core::identifier_string, function_sort_list> mcrl2::data::type_checker::m_system_functions
std::map<core::identifier_string, sort_expression> mcrl2::data::type_checker::m_user_constants
std::map<core::identifier_string, function_sort_list> mcrl2::data::type_checker::m_user_functions

Protected member functions

void add_constant(const data::function_symbol &f, const std::string &msg)
void add_function(const data::function_symbol &f, const std::string &msg, bool allow_double_decls = false)
void add_system_constant(const data::function_symbol &f)
void add_system_function(const data::function_symbol &f)
bool equal_types(const sort_expression &x1, const sort_expression &x2) const
bool find_sort(const sort_expression &x, const function_sort_list &sorts) const
void initialise_system_defined_functions()
void read_constructors_and_mappings(const function_symbol_vector &constructors, const function_symbol_vector &mappings, const function_symbol_vector &normalized_constructors)
void read_sort(const sort_expression &x)
sort_expression unwind_sort_expression(const sort_expression &x) const

Public member functions

const std::map<core::identifier_string, sort_expression_list> &system_constants() const
const std::map<core::identifier_string, function_sort_list> &system_functions() const
type_checker(const data_specification &data_spec)
const std::map<core::identifier_string, sort_expression> &user_constants() const
const std::map<core::identifier_string, function_sort_list> &user_functions() const