LRDE Tiger Compiler  1.34a $Id: 7fef12e1f5fa43449d667a0eec1d837c40fc1202 $
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
list.hh
Go to the documentation of this file.
1 
6 #ifndef MISC_LIST_HH
7 # define MISC_LIST_HH
8 
9 # include <iosfwd>
10 # include <list>
11 
12 namespace misc
13 {
14 
15  template <class Ident_>
16  class list : public std::list<Ident_>
17  {
18  public:
20  typedef std::list<Ident_> super_type;
21 
25  list();
26 
28  list(const Ident_& t1);
29 
31  list(const Ident_& t1, const Ident_& t2);
32 
34  list(const Ident_& t1, const list& l2);
35 
37  template <class InputIterator>
38  list(InputIterator f, InputIterator l);
39 
41  template <class C> list(const C& c);
42 
43  virtual ~list();
45 
49  bool has(const Ident_& data) const;
50 
52  list operator+(const list& l) const;
53 
55  list& append(const list& l);
57  list& operator+=(const list& l);
58 
61  list& operator-=(const Ident_& data);
63 
65  virtual std::ostream& dump(std::ostream& ostr) const;
66 
67  };
68 
70  template <class Ident_>
71  std::ostream& operator<<(std::ostream& ostr, const list<Ident_>& l);
72 
74  template <typename Ident_>
75  bool operator%(const Ident_& data, const list<Ident_>& l);
76 }
77 
78 # include <misc/list.hxx>
79 
80 #endif // !MISC_LIST_HH