IMP logo
IMP Reference Guide  2.22.0
The Integrative Modeling Platform
hash_macros.h
Go to the documentation of this file.
1 /**
2  * \file IMP/hash_macros.h
3  * \brief Helper macros for implementing hashable classes.
4  *
5  * Copyright 2007-2022 IMP Inventors. All rights reserved.
6  *
7  */
8 
9 #ifndef IMPKERNEL_HASH_MACROS_H
10 #define IMPKERNEL_HASH_MACROS_H
11 #include <IMP/kernel_config.h>
12 #include <IMP/hash.h>
13 
14 #ifdef IMP_DOXYGEN
15 /** Add the methods necessary to support insertion in
16  Python dictionaries and map
17  and set tables.*/
18 #define IMP_HASHABLE_INLINE(name, hashret)
19 
20 #else
21 
22 #define IMP_HASHABLE_INLINE(name, hashret) \
23  std::size_t __hash__() const { hashret; }
24 
25 #endif
26 
27 #endif /* IMPKERNEL_HASH_MACROS_H */
Helper functions for implementing hashes.