mCRL2
Loading...
Searching...
No Matches
enumerator_identifier_generator.h
Go to the documentation of this file.
1// Author(s): Wieger Wesselink
2// Copyright: see the accompanying file COPYING or copy at
3// https://github.com/mCRL2org/mCRL2/blob/master/COPYING
4//
5// Distributed under the Boost Software License, Version 1.0.
6// (See accompanying file LICENSE_1_0.txt or copy at
7// http://www.boost.org/LICENSE_1_0.txt)
8//
17
18#ifndef MCRL2_DATA_DETAIL_ENUMERATOR_IDENTIFIER_GENERATOR_H
19#define MCRL2_DATA_DETAIL_ENUMERATOR_IDENTIFIER_GENERATOR_H
20
23
24namespace mcrl2
25{
26
27namespace data
28{
29
31{
32 protected:
34
35 public:
39 explicit enumerator_identifier_generator(const std::string& prefix = "x_")
40 : f(prefix)
41 { }
42
45 {
46 return core::identifier_string(f());
47 }
48
49 void clear()
50 {
51 f.clear();
52 }
53};
54
55
56} // namespace data
57
58} // namespace mcrl2
59
60
61#endif // MCRL2_DATA_DETAIL_ENUMERATOR_IDENTIFIER_GENERATOR_H
Term containing a string.
Generates unique function symbols with a given prefix.
void clear()
Restores the index back to the value that was initially assigned in the constructor.
core::identifier_string operator()()
Generates a unique function symbol with the given prefix followed by a number.
enumerator_identifier_generator(const std::string &prefix="x_")
Constructor.
add your file description here.
aterm representations of identifier strings.
atermpp::aterm_string identifier_string
String type of the LPS library. Identifier strings are represented internally as ATerms.
A class that takes a linear process specification and checks all tau-summands of that LPS for conflue...
Definition indexed_set.h:72