34// prevent this file from being included before other graphlab headers
35#ifdef GRAPHLAB_MACROS
36#error "Repeated include of <macros_def.hpp>. This probably means that macros_def.hpp was not the last include, or some header file failed to include <macros_undef.hpp>"
37#endif
38
39#define GRAPHLAB_MACROS
40
41/** A macro to disallow the copy constructor and operator= functions
42 This should be used in the private: declarations for a class */
43#define DISALLOW_COPY_AND_ASSIGN(TypeName) \
44TypeName(const TypeName&); \
45void operator=(const TypeName&);
46
47
48
49// Shortcut macro definitions
50//! see http://www.boost.org/doc/html/foreach.html