// -*- C++ -*-
-#ifndef _Chset_h_
-#define _Chset_h_
+#ifndef CHSET_H
+#define CHSET_H
#ifdef __GNUG__
#pragma interface
#endif
+#include <map>
+#include <utility>
+
#include "LString.h"
///
class CharacterSet {
public:
///
- CharacterSet();
- ///
- ~CharacterSet();
-
+ bool loadFile(string const &);
///
- bool loadFile(const LString&);
+ string const & getName() const;
///
- LString getName();
- ///
- bool encodeString(LString&);
+ std::pair<bool, int> const encodeString(string const &) const;
private:
///
- LString name_;
-
- ///
- struct Cdef {
- ///
- unsigned char ic;
- ///
- LString str;
- ///
- Cdef *next;
- };
-
+ string name_;
///
- Cdef *map_;
+ typedef std::map<string, unsigned char> Cdef;
///
- void freeMap();
+ Cdef map_;
};
#endif