+//
+// C++ Interface: acceptedvalues
+//
+// Description:
+//
+//
+// Author: Lorenzo Bettini <http://www.lorenzobettini.it>, (C) 2004
+//
+// Copyright: See COPYING file that comes with this distribution
+//
+//
+#ifndef ACCEPTEDVALUES_H
+#define ACCEPTEDVALUES_H
+
+#include <list>
+#include <set>
+#include <string>
+
+/**
+the values that can be passed to an option
+
+@author Lorenzo Bettini
+*/
+class AcceptedValues : protected std::list<std::string>
+{
+ private:
+ typedef std::set<std::string> value_set;
+ value_set values;
+
+ public:
+ using std::list<std::string>::const_iterator;
+ using std::list<std::string>::begin;
+ using std::list<std::string>::end;
+
+ void insert(const std::string &s);
+ const std::string toString(bool escape = true) const;
+ bool contains(const std::string &s) const;
+};
+
+#endif