Include file:
#include "mcrl2/lps/ltsmin.h
mcrl2::lps::
pins_data_type
¶Models a pins data type. A pins data type maintains a mapping between known values of a data type and integers.
mcrl2::lps::pins_data_type::
m_action_labels
¶mcrl2::lps::pins_data_type::
m_data
¶mcrl2::lps::pins_data_type::
m_indexed_set
¶mcrl2::lps::pins_data_type::
m_is_bounded
¶deserialize
(const std::string &s) = 0Deserializes a string to a data value, and returns the corresponding index. If the value is not in the mapping, it will be added.
Returns: The index of the data value. exception * <std::runtime_error> { if deserialization failed }
generate_values
(std::size_t max_size) const = 0Generates possible values of the data type (at most max_size).
index_begin
() const¶Returns an iterator to the beginning of the indices.
index_end
() const¶Returns an iterator to the end of the indices.
indexed_set
()Returns the indexed_set holding the values.
indexed_set
() const¶Returns the indexed_set holding the values.
is_bounded
() const¶Returns true if the number of elements is bounded. If this property can not be computed for a data type, false is returned.
name
() const = 0Returns the name of the data type.
parse
(const std::string &s) = 0Parses a string to a data value, and returns the corresponding index. If the value is not in the mapping, it will be added.
Returns: The index of the data value. exception * <std::runtime_error> { if parsing failed }
pins_data_type
(const data::data_specification &data, const process::action_label_list &action_labels, bool is_bounded = false)¶Constructor.
print
(int i) const = 0Returns a human readable representation of the value with index i. N.B. It is not guaranteed that parse(print(i)) == i.
Pre: i is a valid index
serialize
(int i) const = 0Serializes the i-th value of the data type to a binary string. It is guaranteed that serialize(deserialize(i)) == i.
Pre: i is a valid index
size
() constReturns the number of values that are stored in the map.
~pins_data_type
() = default¶Destructor.