1 #ifndef cond_SmallWORMDict_h
2 #define cond_SmallWORMDict_h
8 #include <boost/iterator_adaptors.hpp>
9 #include <boost/iterator/transform_iterator.hpp>
10 #include <boost/iterator/counting_iterator.hpp>
14 namespace SmallWORMDict {
34 Frame(
char const*
ib,
unsigned int il,
unsigned int iind) :
b(ib),
l(il),
ind(iind) {}
50 Frame const&
frame(
char const*
b,
unsigned int l,
unsigned int ind)
const {
64 typedef boost::transform_iterator<IterHelp, boost::counting_iterator<int> >
const_iterator;
67 return boost::make_transform_iterator(boost::counting_iterator<int>(0),
IterHelp(*
this));
71 return boost::make_transform_iterator(boost::counting_iterator<int>(
size()),
IterHelp(*
this));
84 explicit SmallWORMDict(std::vector<std::string>
const& idict);
89 size_t index(
char const*
s)
const;
size_t index(std::string const &s) const
const_iterator end() const
std::vector< unsigned int > m_index
const_iterator begin() const
result_type const & operator()(int i) const
Frame operator[](int i) const
const_iterator find(std::string const &s) const
Frame const & frame(char const *b, unsigned int l, unsigned int ind) const
std::vector< char > m_data
IterHelp(SmallWORMDict const &iv)
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
#define COND_SERIALIZABLE
Frame(char const *ib, unsigned int il, unsigned int iind)