Include file:
#include "mcrl2/data/identifier_generator.h
mcrl2::data::
identifier_generator
¶Abstract base class for identifier generators. Identifier generators generate fresh names that do not appear in a given context. A context is maintained containing already used identifiers. Using the operator()() and operator()(std::string) fresh identifiers are generated that do not appear in the context.
mcrl2::data::identifier_generator::
m_generator
¶add_identifier
(const core::identifier_string &s) = 0¶Adds the identifier s to the context.
Parameters:
add_identifiers
(const std::set<core::identifier_string> &ids)¶Add a set of identifiers to the context.
clear_context
() = 0¶Clears the context.
has_identifier
(const core::identifier_string &s) const = 0¶Returns true if the identifier s appears in the context.
Parameters:
Returns: True if the identifier appears in the context.
identifier_generator
() = default¶Constructor.
operator()
(const std::string &hint, bool add_to_context = true)¶Returns a fresh identifier, with the given hint as prefix. The returned identifier is added to the context.
Parameters:
Returns: A fresh identifier.
remove_identifier
(const core::identifier_string &s) = 0¶Removes the identifier s from the context.
Parameters:
remove_identifiers
(const std::set<core::identifier_string> &ids)¶Remove a set of identifiers from the context.
~identifier_generator
() = default¶Destructor.