Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/GenPoly/ScopedMap.h

    r0531b5d r933667d  
    1717#define _SCOPEDMAP_H
    1818
    19 #include <cassert>
    2019#include <iterator>
    2120#include <map>
     
    165164                void endScope() {
    166165                        scopes.pop_back();
    167                         assert( ! scopes.empty() );
    168166                }
    169167
     
    190188                        return end();
    191189                }
    192                 const_iterator find( const Key &key ) const {
    193                                 return const_iterator( const_cast< ScopedMap< Key, Value >* >(this)->find( key ) );
    194                 }
     190                const_iterator find( const Key &key ) const { return const_iterator( find( key ) ); }
    195191               
    196192                /// Finds the given key in the outermost scope inside the given scope where it occurs
     
    204200                        return end();
    205201                }
    206                 const_iterator findNext( const_iterator &it, const Key &key ) const {
    207                                 return const_iterator( const_cast< ScopedMap< Key, Value >* >(this)->findNext( it, key ) );
    208                 }
     202                const_iterator findNext( const_iterator &it, const Key &key ) const { return const_iterator( findNext( it, key ) ); }
    209203
    210204                /// Inserts the given key-value pair into the outermost scope
     
    214208                }
    215209                std::pair< iterator, bool > insert( const Key &key, const Value &value ) { return insert( std::make_pair( key, value ) ); }
    216 
    217                 Value& operator[] ( const Key &key ) {
    218                         iterator slot = find( key );
    219                         if ( slot != end() ) return slot->second;
    220                         return insert( key, Value() ).first->second;
    221                 }
     210               
    222211        };
    223212} // namespace GenPoly
Note: See TracChangeset for help on using the changeset viewer.