// ========================================================= //
//                                                           //
//   File      : arb_unordered_set.h                         //
//   Purpose   : compatibility wrapper for unordered_set     //
//                                                           //
//   Coded by Ralf Westram (coder@reallysoft.de) in Sep 21   //
//   http://www.arb-home.de/                                 //
//                                                           //
// ========================================================= //

#ifndef ARB_UNORDERED_SET_H
#define ARB_UNORDERED_SET_H

// this header can be eliminated when arb EXPECTS Cxx11

#ifdef DARWIN
// fallback to std:map on DARWIN
// workaround compilation problems on Maverick (osx)
# include <set>
# define arb_unordered_set  std::set
#else
# ifdef Cxx11
#  include <unordered_set>
#  define arb_unordered_set std::unordered_set
# else
#  include <tr1/unordered_set>
#  define arb_unordered_set std::tr1::unordered_set
# endif
#endif

#else
#error arb_unordered_set.h included twice
#endif // ARB_UNORDERED_SET_H
