Vaucanson
1.4.1
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
vaucanson
misc
escaper.hh
Go to the documentation of this file.
1
// escaper.hh: this file is part of the Vaucanson project.
2
//
3
// Vaucanson, a generic library for finite state machines.
4
//
5
// Copyright (C) 2004, 2005, 2006 The Vaucanson Group.
6
//
7
// This program is free software; you can redistribute it and/or
8
// modify it under the terms of the GNU General Public License
9
// as published by the Free Software Foundation; either version 2
10
// of the License, or (at your option) any later version.
11
//
12
// The complete GNU General Public Licence Notice can be found as the
13
// `COPYING' file in the root directory.
14
//
15
// The Vaucanson Group consists of people listed in the `AUTHORS' file.
16
//
17
#ifndef VCSN_MISC_ESCAPER_HH
18
# define VCSN_MISC_ESCAPER_HH
19
28
# include <set>
29
30
# include <
vaucanson/misc/iomanip.hh
>
31
32
namespace
vcsn
33
{
34
namespace
misc
35
{
36
58
template
<
class
T>
59
struct
escaper
:
public
iomanip
< escaper<T> >
60
{
61
explicit
62
escaper
(
const
T& w);
63
std::ostream& operator () (std::ostream& ostr)
const
;
64
protected
:
65
const
T& w_;
66
};
67
74
template
<
class
T>
75
escaper<T>
76
make_escaper
(
const
T& w);
77
87
struct
setesc
:
public
iomanip
<setesc>
88
{
89
setesc
(
const
std::set<char>& s);
90
std::ostream& operator () (std::ostream& ostr)
const
;
91
protected
:
92
const
std::set<char>& s_;
93
};
94
101
std::set<char>&
getesc
(std::ostream& ostr);
102
103
}
// End of namespace misc.
104
}
// End of namespace vcsn.
105
106
# if !defined VCSN_USE_INTERFACE_ONLY || defined VCSN_USE_LIB
107
# include <
vaucanson/misc/escaper.hxx
>
108
# endif // VCSN_USE_INTERFACE_ONLY
109
110
#endif // ! VCSN_MISC_ESCAPER_HH
Generated on Sat Jul 14 2012 18:46:39 for Vaucanson by
1.8.1.1