Sha256: bb9a3c680c518d5df890ec84519e5d8d8f3ae2355bbe6a0484f95f7a5b8a0867

Contents?: true

Size: 561 Bytes

Versions: 17

Compression:

Stored size: 561 Bytes

Contents

#ifndef _IV_NONCOPYABLE_H_
#define _IV_NONCOPYABLE_H_

namespace iv {
namespace core {

// guard from ADL
// see http://ml.tietew.jp/cppll/cppll_novice/thread_articles/1652
namespace noncopyable_ {

template<typename T>
class Noncopyable {
 protected:
  Noncopyable() {}
  ~Noncopyable() {}
 private:
  Noncopyable(const Noncopyable&);
  const T& operator=(const T&);
};

}  // namespace iv::core::noncopyable_

template<typename T>
struct Noncopyable {
  typedef noncopyable_::Noncopyable<T> type;
};

} }  // namespace iv::core

#endif  // _IV_NONCOPYABLE_H_

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
iv-phonic-0.1.8 ext/include/iv/noncopyable.h
iv-phonic-0.1.7 ext/include/iv/noncopyable.h
iv-phonic-0.1.6 ext/include/iv/noncopyable.h
iv-phonic-0.1.5 ext/include/iv/noncopyable.h
iv-phonic-0.1.4 ext/include/iv/noncopyable.h
iv-phonic-0.1.3 ext/include/iv/noncopyable.h
iv-phonic-0.1.2 ext/include/iv/noncopyable.h
iv-phonic-0.1.1 ext/include/iv/noncopyable.h
iv-phonic-0.1.0 ext/include/iv/noncopyable.h
iv-phonic-0.0.9 ext/include/iv/noncopyable.h
iv-phonic-0.0.8 ext/include/iv/noncopyable.h
iv-phonic-0.0.7 ext/include/iv/noncopyable.h
iv-phonic-0.0.6 ext/include/iv/noncopyable.h
iv-phonic-0.0.5 ext/include/iv/noncopyable.h
iv-phonic-0.0.3 ext/include/iv/noncopyable.h
iv-phonic-0.0.2 ext/include/iv/noncopyable.h
iv-phonic-0.0.1 ext/include/iv/noncopyable.h