GCC Middle and Back End API Reference
consolidation_map< T > Class Template Reference

#include <analyzer.h>

Inheritance diagram for consolidation_map< T >:
Collaboration diagram for consolidation_map< T >:

Public Types

typedef T::key_t key_t
 
typedef T instance_t
 
typedef hash_map< key_t, instance_t * > inner_map_t
 
typedef inner_map_t::iterator iterator
 

Public Member Functions

 ~consolidation_map ()
 
Tget (const key_t &k) const
 
void put (const key_t &k, T *instance)
 
size_t elements () const
 
iterator begin () const
 
iterator end () const
 

Private Attributes

inner_map_t m_inner_map
 

Detailed Description

template<typename T>
class consolidation_map< T >
A map from T::key_t to T* for use in consolidating instances of T.
Owns all instances of T.
T::key_t should have operator== and be hashable.   

Member Typedef Documentation

◆ inner_map_t

template<typename T >
hash_map<key_t, instance_t *> consolidation_map< T >::inner_map_t

◆ instance_t

template<typename T >
T consolidation_map< T >::instance_t

◆ iterator

template<typename T >
inner_map_t::iterator consolidation_map< T >::iterator

◆ key_t

template<typename T >
T::key_t consolidation_map< T >::key_t

Constructor & Destructor Documentation

◆ ~consolidation_map()

Member Function Documentation

◆ begin()

template<typename T >
iterator consolidation_map< T >::begin ( ) const
inline

◆ elements()

template<typename T >
size_t consolidation_map< T >::elements ( ) const
inline

◆ end()

template<typename T >
iterator consolidation_map< T >::end ( ) const
inline

◆ get()

template<typename T >
T * consolidation_map< T >::get ( const key_t & k) const
inline

◆ put()

template<typename T >
void consolidation_map< T >::put ( const key_t & k,
T * instance )
inline

Field Documentation

◆ m_inner_map


The documentation for this class was generated from the following file: