• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdepimlibs API Reference
  • KDE Home
  • Contact Us
 

KMIME Library

  • sources
  • kde-4.14
  • kdepimlibs
  • kmime
kautodeletehash.h
1 /*
2  This file is part of libkdepim.
3 
4  Copyright (c) 2005 Ingo Kloecker <kloecker@kde.org>
5 
6  This library is free software; you can redistribute it and/or
7  modify it under the terms of the GNU Library General Public
8  License as published by the Free Software Foundation; either
9  version 2 of the License, or (at your option) any later version.
10 
11  This library is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  Library General Public License for more details.
15 
16  You should have received a copy of the GNU Library General Public License
17  along with this library; see the file COPYING.LIB. If not, write to
18  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19  Boston, MA 02110-1301, USA.
20 */
21 
22 #ifndef __KMIME_KAUTODELETEHASH__
23 #define __KMIME_KAUTODELETEHASH__
24 
25 #include <QtCore/QHash>
26 
27 namespace KMime {
28 
48 template <class Key, class T>
49 class KAutoDeleteHash : public QHash<Key, T *>
50 {
51 public:
55  KAutoDeleteHash() {}
59  KAutoDeleteHash( const QHash<Key, T *> &other ) : QHash<Key, T *>( other ) {}
60 
65  ~KAutoDeleteHash() { while ( ! QHash<Key, T *>::isEmpty() ) {
66  T *value = *QHash<Key, T *>::begin();
67  this->erase( QHash<Key, T *>::begin() );
68  delete value;
69  }
70  }
71 };
72 
73 } // namespace KMime
74 
75 #endif /* __KMIME_KAUTODELETEHASH__ */
KMime::KAutoDeleteHash::KAutoDeleteHash
KAutoDeleteHash()
Constructs an empty hash.
Definition: kautodeletehash.h:55
KMime::KAutoDeleteHash::~KAutoDeleteHash
~KAutoDeleteHash()
Destroys the hash and deletes all values.
Definition: kautodeletehash.h:65
QHash
QHash::begin
iterator begin()
QHash< Key, T * >::erase
iterator erase(iterator pos)
QHash< Key, T * >::value
const T value(const Key &key) const
KMime::KAutoDeleteHash::KAutoDeleteHash
KAutoDeleteHash(const QHash< Key, T * > &other)
Constructs a copy of other (which can be a QHash or a KAutoDeleteHash).
Definition: kautodeletehash.h:59
KMime::KAutoDeleteHash
The KAutoDeleteHash class is a convenience QHash subclass that provides automatic deletion of the val...
Definition: kautodeletehash.h:49
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:37:18 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

KMIME Library

Skip menu "KMIME Library"
  • Main Page
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • Related Pages

kdepimlibs API Reference

Skip menu "kdepimlibs API Reference"
  • akonadi
  •   contact
  •   kmime
  •   socialutils
  • kabc
  • kalarmcal
  • kblog
  • kcal
  • kcalcore
  • kcalutils
  • kholidays
  • kimap
  • kioslave
  •   imap4
  •   mbox
  •   nntp
  • kldap
  • kmbox
  • kmime
  • kontactinterface
  • kpimidentities
  • kpimtextedit
  • kpimutils
  • kresources
  • ktnef
  • kxmlrpcclient
  • mailtransport
  • microblog
  • qgpgme
  • syndication
  •   atom
  •   rdf
  •   rss2

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal