Savarese Software Research Corporation
PropTree< Key, Ops, TreeType > Class Template Reference

#include <Properties.h>

Inheritance diagram for PropTree< Key, Ops, TreeType >:

List of all members.

Public Types

typedef Key key_type
typedef TreeType tree_type
typedef Ops operations
typedef operations::value_type value_type
typedef operations::storage_type storage_type
typedef boost::ptr_map
< key_type, tree_type
child_container
typedef child_container::iterator child_container_iterator
typedef
child_container::const_iterator 
child_container_const_iterator
typedef child_container::size_type size_type
typedef std::pair
< child_container_iterator,
bool > 
insert_result_type

Public Member Functions

 PropTree ()
 PropTree (const value_type &v)
 ~PropTree ()
void clear ()
bool is_leaf () const
const storage_typevalue () const
storage_typevalue ()
void set_value (const value_type &v)
child_container_const_iterator child_begin () const
child_container_const_iterator child_end () const
tree_typefind (const key_type &key)
template<typename... P>
tree_typefind (const key_type &key, const P &...p)
const tree_typefind (const key_type &key) const
template<typename... P>
const tree_typefind (const key_type &key, const P &...p) const
tree_typeset (const value_type &val, const key_type &key)
template<typename... P>
tree_typeset (const value_type &val, const key_type &key, const P &...p)
tree_typecreate_node (const key_type &key)
template<typename... P>
tree_typecreate_node (const key_type &key, const P &...p)
size_type erase (const key_type &key)
template<typename... P>
size_type erase (const key_type &key, const P &...p)
template<typename Visitor >
void visit (const Visitor &v)
template<typename Visitor >
void visit (const Visitor &v) const
bool operator== (const tree_type &p) const
void merge (tree_type &&p)
void merge (const tree_type &p)
tree_typeva_set (const value_type &val, const std::va_list &ap)
tree_typeva_list_find (const key_type *key, const std::va_list &ap)
tree_typeva_find (const key_type *key,...)
template<typename Iterator >
tree_typeiterator_set (const value_type &val, const Iterator &begin, const Iterator &end)
template<typename Iterator >
size_type iterator_erase (const Iterator &begin, const Iterator &end)
template<typename Iterator >
tree_typeiterator_find (const Iterator &begin, const Iterator &end)
template<typename Iterator >
const tree_typeiterator_find (const Iterator &begin, const Iterator &end) const
template<class Archive >
void save (Archive &ar, const unsigned int) const
template<class Archive >
void load (Archive &ar, const unsigned int)

Protected Attributes

storage_type _value
child_container _children

Static Protected Attributes

static const operations Value = typename PropTree<K, T, Tr>::operations()

Detailed Description

template<typename Key, typename Ops, typename TreeType>
class PropTree< Key, Ops, TreeType >

Definition at line 127 of file utility/Properties.h.


Member Typedef Documentation

template<typename Key, typename Ops, typename TreeType>
typedef boost::ptr_map<key_type, tree_type> PropTree< Key, Ops, TreeType >::child_container

Definition at line 135 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
typedef child_container::const_iterator PropTree< Key, Ops, TreeType >::child_container_const_iterator

Definition at line 137 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
typedef child_container::iterator PropTree< Key, Ops, TreeType >::child_container_iterator

Definition at line 136 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
typedef std::pair<child_container_iterator, bool> PropTree< Key, Ops, TreeType >::insert_result_type

Definition at line 139 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
typedef Key PropTree< Key, Ops, TreeType >::key_type

Definition at line 129 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
typedef Ops PropTree< Key, Ops, TreeType >::operations

Definition at line 131 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
typedef child_container::size_type PropTree< Key, Ops, TreeType >::size_type

Definition at line 138 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
typedef operations::storage_type PropTree< Key, Ops, TreeType >::storage_type

Definition at line 133 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
typedef TreeType PropTree< Key, Ops, TreeType >::tree_type

Definition at line 130 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
typedef operations::value_type PropTree< Key, Ops, TreeType >::value_type

Definition at line 132 of file utility/Properties.h.


Constructor & Destructor Documentation

template<typename Key, typename Ops, typename TreeType>
PropTree< Key, Ops, TreeType >::PropTree ( ) [inline]

Definition at line 150 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
PropTree< Key, Ops, TreeType >::PropTree ( const value_type v) [inline, explicit]

Definition at line 152 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
PropTree< Key, Ops, TreeType >::~PropTree ( ) [inline]

Definition at line 155 of file utility/Properties.h.


Member Function Documentation

template<typename Key, typename Ops, typename TreeType>
child_container_const_iterator PropTree< Key, Ops, TreeType >::child_begin ( ) const [inline]

Definition at line 179 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
child_container_const_iterator PropTree< Key, Ops, TreeType >::child_end ( ) const [inline]

Definition at line 183 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
void PropTree< Key, Ops, TreeType >::clear ( ) [inline]

Definition at line 159 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
tree_type* PropTree< Key, Ops, TreeType >::create_node ( const key_type key) [inline]
template<typename Key, typename Ops, typename TreeType>
template<typename... P>
tree_type* PropTree< Key, Ops, TreeType >::create_node ( const key_type key,
const P &...  p 
) [inline]

Definition at line 261 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
size_type PropTree< Key, Ops, TreeType >::erase ( const key_type key) [inline]
template<typename Key, typename Ops, typename TreeType>
template<typename... P>
size_type PropTree< Key, Ops, TreeType >::erase ( const key_type key,
const P &...  p 
) [inline]

Definition at line 278 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
template<typename... P>
tree_type* PropTree< Key, Ops, TreeType >::find ( const key_type key,
const P &...  p 
) [inline]

Definition at line 195 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
const tree_type* PropTree< Key, Ops, TreeType >::find ( const key_type key) const [inline]

Definition at line 203 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
template<typename... P>
const tree_type* PropTree< Key, Ops, TreeType >::find ( const key_type key,
const P &...  p 
) const [inline]

Definition at line 211 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
bool PropTree< Key, Ops, TreeType >::is_leaf ( ) const [inline]
template<typename Key, typename Ops, typename TreeType>
template<typename Iterator >
size_type PropTree< Key, Ops, TreeType >::iterator_erase ( const Iterator &  begin,
const Iterator &  end 
) [inline]

Definition at line 465 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
template<typename Iterator >
tree_type* PropTree< Key, Ops, TreeType >::iterator_find ( const Iterator &  begin,
const Iterator &  end 
) [inline]

Definition at line 488 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
template<typename Iterator >
const tree_type* PropTree< Key, Ops, TreeType >::iterator_find ( const Iterator &  begin,
const Iterator &  end 
) const [inline]

Definition at line 502 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
template<typename Iterator >
tree_type* PropTree< Key, Ops, TreeType >::iterator_set ( const value_type val,
const Iterator &  begin,
const Iterator &  end 
) [inline]

Reimplemented in Properties.

Definition at line 444 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
template<class Archive >
void PropTree< Key, Ops, TreeType >::load ( Archive &  ar,
const unsigned  int 
) [inline]

Definition at line 521 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
void PropTree< Key, Ops, TreeType >::merge ( tree_type &&  p) [inline]

Definition at line 340 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
void PropTree< Key, Ops, TreeType >::merge ( const tree_type p) [inline]

Definition at line 369 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
bool PropTree< Key, Ops, TreeType >::operator== ( const tree_type p) const [inline]

Definition at line 319 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
template<class Archive >
void PropTree< Key, Ops, TreeType >::save ( Archive &  ar,
const unsigned  int 
) const [inline]

Definition at line 516 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
tree_type* PropTree< Key, Ops, TreeType >::set ( const value_type val,
const key_type key 
) [inline]

Definition at line 219 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
template<typename... P>
tree_type* PropTree< Key, Ops, TreeType >::set ( const value_type val,
const key_type key,
const P &...  p 
) [inline]

Definition at line 235 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
tree_type* PropTree< Key, Ops, TreeType >::va_find ( const key_type key,
  ... 
) [inline]

Definition at line 429 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
tree_type* PropTree< Key, Ops, TreeType >::va_list_find ( const key_type key,
const std::va_list &  ap 
) [inline]
template<typename Key, typename Ops, typename TreeType>
tree_type* PropTree< Key, Ops, TreeType >::va_set ( const value_type val,
const std::va_list &  ap 
) [inline]

Definition at line 398 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
const storage_type& PropTree< Key, Ops, TreeType >::value ( ) const [inline]
template<typename Key, typename Ops, typename TreeType>
storage_type& PropTree< Key, Ops, TreeType >::value ( ) [inline]

Definition at line 171 of file utility/Properties.h.

template<typename Key, typename Ops, typename TreeType>
template<typename Visitor >
void PropTree< Key, Ops, TreeType >::visit ( const Visitor &  v) [inline]
template<typename Key, typename Ops, typename TreeType>
template<typename Visitor >
void PropTree< Key, Ops, TreeType >::visit ( const Visitor &  v) const [inline]

Definition at line 305 of file utility/Properties.h.


Member Data Documentation

template<typename Key, typename Ops, typename TreeType>
child_container PropTree< Key, Ops, TreeType >::_children [protected]

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

Savarese Software Research Corporation
Copyright © 2006-2011 Savarese Software Research Corporation. All rights reserved.