LRDE Tiger Compiler
1.34a $Id: 7fef12e1f5fa43449d667a0eec1d837c40fc1202 $
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
symbol.hh
Go to the documentation of this file.
1
6
#ifndef MISC_SYMBOL_HH
7
# define MISC_SYMBOL_HH
8
9
# include <set>
10
# include <string>
11
# include <iosfwd>
12
# include <
misc/unique.hh
>
13
14
namespace
misc
15
{
16
23
class
symbol
:
public
unique
<std::string>
24
{
25
typedef
unique<std::string>
super_type
;
27
typedef
super_type::object_set_type
string_set_type
;
29
typedef
string_set_type::size_type
string_size_type
;
30
33
public
:
36
symbol
(
const
std::string& s);
39
symbol
(
const
char
* s =
""
);
41
virtual
~symbol
();
46
public
:
48
const
std::string&
name_get
()
const
;
49
51
static
string_size_type
string_map_size
();
56
public
:
59
symbol
&
operator=
(
const
symbol
& rhs);
60
63
bool
operator==
(
const
symbol
& rhs)
const
;
66
bool
operator!=
(
const
symbol
& rhs)
const
;
69
public
:
73
static
symbol
fresh
();
75
static
symbol
fresh
(
const
symbol
& s);
77
};
78
83
std::ostream&
operator<<
(std::ostream& ostr,
const
symbol
& the);
84
}
85
86
# include <
misc/symbol.hxx
>
87
88
#endif // !MISC_SYMBOL_HH
misc
symbol.hh
Generated on Wed Mar 5 2014 15:47:36 for LRDE Tiger Compiler by
1.8.1.2