Sha256: 48ae20b50cb59567fce19265db9aa2e54493f161ee8393e065b031556141b0f3

Contents?: true

Size: 625 Bytes

Versions: 17

Compression:

Stored size: 625 Bytes

Contents

#ifndef _IV_STATICASSERT_H_
#define _IV_STATICASSERT_H_
namespace iv {
namespace detail {
template<bool b>
struct StaticAssertFailure;

template<>
struct StaticAssertFailure<true> {
  enum {
    value = 1
  };
};

template<int x>
struct StaticAssertTest {
};

} }  // namespace iv::detail

#ifndef IV_CONCAT
#define IV_CONCAT1(x, y) x##y
#define IV_CONCAT(x, y) IV_CONCAT1(x, y)
#endif  // IV_CONCAT
#define IV_STATIC_ASSERT(cond)\
  typedef ::iv::detail::StaticAssertTest\
    <sizeof(::iv::detail::StaticAssertFailure<static_cast<bool>(cond)>)>\
    IV_CONCAT(StaticAssertTypedef, __LINE__)

#endif  // _IV_STATICASSERT_H_

Version data entries

17 entries across 17 versions & 1 rubygems

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