#include <uhd/types/dict.hpp>
 | 
|   | dict (void) | 
|   | 
| template<typename InputIterator >  | 
|   | dict (InputIterator first, InputIterator last) | 
|   | 
| std::size_t  | size (void) const | 
|   | 
| std::vector< Key >  | keys (void) const | 
|   | 
| std::vector< Val >  | vals (void) const | 
|   | 
| bool  | has_key (const Key &key) const | 
|   | 
| const Val &  | get (const Key &key, const Val &other) const | 
|   | 
| const Val &  | get (const Key &key) const | 
|   | 
| void  | set (const Key &key, const Val &val) | 
|   | 
| const Val &  | operator[] (const Key &key) const | 
|   | 
| Val &  | operator[] (const Key &key) | 
|   | 
| bool  | operator== (const dict< Key, Val > &other) const | 
|   | 
| bool  | operator!= (const dict< Key, Val > &other) const | 
|   | 
| Val  | pop (const Key &key) | 
|   | 
| void  | update (const dict< Key, Val > &new_dict, bool fail_on_conflict=true) | 
|   | 
|   | operator std::map< Key, Val > () const | 
|   | 
template<typename Key, typename Val>
class uhd::dict< Key, Val >
A templated dictionary class with a python-like interface. 
 
◆ dict() [1/2]
template<typename Key , typename Val > 
      
 
Create a new empty dictionary. 
 
 
◆ dict() [2/2]
template<typename Key , typename Val > 
template<typename InputIterator > 
      
        
          | uhd::dict< Key, Val >::dict  | 
          ( | 
          InputIterator  | 
          first,  | 
        
        
           | 
           | 
          InputIterator  | 
          last  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
Input iterator constructor: Makes boost::assign::map_list_of work. 
- Parameters
 - 
  
    | first | the begin iterator  | 
    | last | the end iterator  | 
  
   
 
 
◆ get() [1/2]
template<typename Key, typename Val> 
      
        
          | const Val & uhd::dict< Key, Val >::get  | 
          ( | 
          const Key &  | 
          key,  | 
        
        
           | 
           | 
          const Val &  | 
          other  | 
        
        
           | 
          ) | 
           |  const | 
        
      
 
Get a value in the dict or default. 
- Parameters
 - 
  
    | key | the key to look for  | 
    | other | use if key not found  | 
  
   
- Returns
 - the value or default 
 
 
 
◆ get() [2/2]
template<typename Key, typename Val> 
      
        
          | const Val & uhd::dict< Key, Val >::get  | 
          ( | 
          const Key &  | 
          key | ) | 
           const | 
        
      
 
Get a value in the dict or throw. 
- Parameters
 - 
  
  
 
- Returns
 - the value or default 
 
 
 
◆ has_key()
template<typename Key, typename Val > 
      
        
          | bool uhd::dict< Key, Val >::has_key  | 
          ( | 
          const Key &  | 
          key | ) | 
           const | 
        
      
 
Does the dictionary contain this key? 
- Parameters
 - 
  
  
 
- Returns
 - true if found 
 
 
 
◆ keys()
template<typename Key , typename Val > 
      
        
          | std::vector< Key > uhd::dict< Key, Val >::keys  | 
          ( | 
          void  | 
           | ) | 
           const | 
        
      
 
Get a list of the keys in this dict. Key order depends on insertion precedence. 
- Returns
 - vector of keys 
 
 
 
◆ operator std::map< Key, Val >()
template<typename Key , typename Val > 
      
        
          | uhd::dict< Key, Val >::operator std::map< Key, Val >  | 
          ( | 
           | ) | 
           const | 
        
      
 
Typecast operator to std::map<> 
 
 
◆ operator!=()
template<typename Key, typename Val> 
      
        
          | bool uhd::dict< Key, Val >::operator!=  | 
          ( | 
          const dict< Key, Val > &  | 
          other | ) | 
           const | 
        
      
 
Not equal operator for the dict type 
- Parameters
 - 
  
    | other | the dict being compared to this  | 
  
   
- Returns
 - whether or not the two dict's are not equal 
 
 
 
◆ operator==()
template<typename Key, typename Val> 
      
        
          | bool uhd::dict< Key, Val >::operator==  | 
          ( | 
          const dict< Key, Val > &  | 
          other | ) | 
           const | 
        
      
 
Equals operator for the dict type 
- Parameters
 - 
  
    | other | the dict being compared to this  | 
  
   
- Returns
 - whether or not the two dict's are equal 
 
 
 
◆ operator[]() [1/2]
template<typename Key, typename Val > 
      
        
          | const Val & uhd::dict< Key, Val >::operator[]  | 
          ( | 
          const Key &  | 
          key | ) | 
           const | 
        
      
 
Get a value for the given key if it exists. If the key is not found throw an error. 
- Parameters
 - 
  
  
 
- Returns
 - the value at the key 
 
- Exceptions
 - 
  
    | an | exception when not found  | 
  
   
 
 
◆ operator[]() [2/2]
template<typename Key, typename Val > 
      
        
          | Val & uhd::dict< Key, Val >::operator[]  | 
          ( | 
          const Key &  | 
          key | ) | 
           | 
        
      
 
Set a value for the given key, however, in reality it really returns a reference which can be assigned to. 
- Parameters
 - 
  
  
 
- Returns
 - a reference to the value 
 
 
 
◆ pop()
template<typename Key, typename Val > 
      
        
          | Val uhd::dict< Key, Val >::pop  | 
          ( | 
          const Key &  | 
          key | ) | 
           | 
        
      
 
Pop an item out of the dictionary. 
- Parameters
 - 
  
  
 
- Returns
 - the value of the item 
 
- Exceptions
 - 
  
    | an | exception when not found  | 
  
   
 
 
◆ set()
template<typename Key, typename Val> 
      
        
          | void uhd::dict< Key, Val >::set  | 
          ( | 
          const Key &  | 
          key,  | 
        
        
           | 
           | 
          const Val &  | 
          val  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
Set a value in the dict at the key. 
- Parameters
 - 
  
    | key | the key to set at  | 
    | val | the value to set  | 
  
   
 
 
◆ size()
template<typename Key , typename Val > 
      
        
          | std::size_t uhd::dict< Key, Val >::size  | 
          ( | 
          void  | 
           | ) | 
           const | 
        
      
 
Get the number of elements in this dict. 
- Returns
 - the number of elements 
 
 
 
◆ update()
template<typename Key, typename Val> 
      
        
          | void uhd::dict< Key, Val >::update  | 
          ( | 
          const dict< Key, Val > &  | 
          new_dict,  | 
        
        
           | 
           | 
          bool  | 
          fail_on_conflict = true  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
Update this dictionary with values from another.
Basically, this copies all the key/value pairs from new_dict into this dict. When the key is already present in the current dict, it either overwrites the current value (if fail_on_conflict is false) or it throws (if fail_on_conflict is true and the values differ).
With the exception of fail_on_conflict, this behaves analogously to Python's dict.update() method.
- Parameters
 - 
  
    | new_dict | The arguments to copy.  | 
    | fail_on_conflict | If true, throws.  | 
  
   
- Exceptions
 - 
  
  
 
 
 
◆ vals()
template<typename Key , typename Val > 
      
        
          | std::vector< Val > uhd::dict< Key, Val >::vals  | 
          ( | 
          void  | 
           | ) | 
           const | 
        
      
 
Get a list of the values in this dict. Value order depends on insertion precedence. 
- Returns
 - vector of values 
 
 
 
The documentation for this class was generated from the following files: