#include "Map.h" template Cref Map::get( const KeyType & key ) const { Cref match = underlyingSet.find( KVpair( key ) ); if( match.isNull( ) ) return Cref( ); else return Cref( match.get( ).second ); } template void Map::put( const KeyType & key, const ValueType & value ) { if( !get( key ).isNull( ) ) remove( key ); underlyingSet.insert( KVpair( key, value ) ); } template void Map::remove( const KeyType & key ) { underlyingSet.remove( KVpair( key ) ); } template bool Map::isEmpty( ) const { return underlyingSet.isEmpty( ); } template void Map::makeEmpty( ) { underlyingSet.makeEmpty( ); }