tool::mapping< Key, Value, Factory > Struct Template Reference

#include <wipal/tool/mapping.hh>

Inheritance diagram for tool::mapping< Key, Value, Factory >:

tool::datafile

List of all members.


Detailed Description

template<class Key, class Value, class Factory>
struct tool::mapping< Key, Value, Factory >

Mapping from designed to be stored into a database file.

Load the mapping from the file at creation when the file exists. Store it at deletion so it could be used later, or loaded in a database using a LOAD DATA INFILE SQL command.

See also:
addr_mapping
FIXME: Document the Factory parameter.

Public Member Functions

 mapping (const std::string &, const Factory &factory=Factory())
const Value & operator[] (const Key &)
 operator std::ostream & ()
template<class T>
std::ostream & operator<< (const T &)

Protected Member Functions

void load (std::istream &)

Constructor & Destructor Documentation

template<class K, class V, class F>
tool::mapping< K, V, F >::mapping ( const std::string &  filename,
const F &  factory = Factory () 
) [inline]

Construct the mapping given the database file's name.


Member Function Documentation

template<class K, class V, class F>
const V & tool::mapping< K, V, F >::operator[] ( const K &  a  )  [inline]

Retrieve the value of a corresponding key.

When the key already exists in the mapping, just return its value. Else, insert the (key, value) pair according to the Factory template parameter.

template<class K, class V, class F>
void tool::mapping< K, V, F >::load ( std::istream &  in  )  [inline, protected]

Load a mapping from an std::istream.

tool::datafile::operator std::ostream & (  )  [inline, inherited]

Retrieve the underlying C++ stream.

template<class T>
std::ostream & tool::datafile::operator<< ( const T &  data  )  [inline, inherited]

Formatted output.


The documentation for this struct was generated from the following files:

Generated on Fri Jan 16 11:55:56 2009 for wipal by  doxygen 1.5.6