データ構造 | ネームスペース | マクロ定義
type_trait.h

型の情報を取得・判定するためのライブラリ [詳細]

#include "mist_conf.h"

ソースコードを見る。

データ構造

struct  mist::is_char< T >
 char 判定 [詳細]
struct  mist::is_float< T >
 浮動小数点 判定 [詳細]
struct  mist::is_integer< T >
 integer 判定 [詳細]
struct  mist::is_signed< T >
 符号付き型かどうか判定 [詳細]
struct  mist::is_arithmetic< T >
 arithmetic 判定 [詳細]
struct  mist::is_builtin< T >
 組み込み型の判定 [詳細]
struct  mist::float_type< T >
 対応する float 型を返す [詳細]
struct  mist::promote_trait< T1, T2 >
 型の昇格型を返す [詳細]
struct  mist::type_trait< T >
 データ型の確定を避けるために利用する [詳細]
struct  mist::half_adjust< T >
 値の四捨五入をする [詳細]
struct  mist::type_and< b1, b2, b3, b4, b5, b6, b7 >
 型のAND演算を行う [詳細]
struct  mist::type_or< b1, b2, b3, b4, b5, b6, b7 >
 型のOR演算を行う型 [詳細]
struct  mist::type_not< b1 >
 型のNOT演算を行う型 [詳細]
struct  mist::type_equal< b1, b2 >
 型のEQUAL演算を行う型 [詳細]

ネームスペース

namespace  mist

マクロ定義

#define DEFINE_PROMOTE_BIND_OPERATOR1(TYPE, OPERATOR)
 型の昇格を用いた四則演算子を定義する際に利用する
#define DEFINE_PROMOTE_BIND_OPERATOR2(TYPE, OPERATOR)
 型の昇格を用いた四則演算子を定義する際に利用する
#define DEFINE_PROMOTE_BIND_OPERATOR3(TYPE, OPERATOR)
 型の昇格を用いた四則演算子を定義する際に利用する
#define DEFINE_PROMOTE_BIND_OPERATOR4(TYPE, OPERATOR)
 型の昇格を用いた四則演算子を定義する際に利用する
#define DEFINE_PROMOTE_BIND_OPERATOR1_(TYPE, OPERATOR)
 型の昇格を用いた四則演算子を定義する際に利用する
#define DEFINE_PROMOTE_BIND_OPERATOR2_(TYPE, OPERATOR)
 型の昇格を用いた四則演算子を定義する際に利用する
#define DEFINE_PROMOTE_BIND_OPERATOR3_(TYPE, OPERATOR)
 型の昇格を用いた四則演算子を定義する際に利用する
#define DEFINE_PROMOTE_BIND_OPERATOR4_(TYPE, OPERATOR)
 型の昇格を用いた四則演算子を定義する際に利用する

説明

型の情報を取得・判定するためのライブラリ

マクロ定義

#define DEFINE_PROMOTE_BIND_OPERATOR1 (   TYPE,
  OPERATOR 
)
値:
template < class T1, class T2 > \
inline TYPE< typename promote_trait< T1, T2 >::value_type > \
operator OPERATOR( const TYPE< T1 > &t1, const TYPE< T2 > &t2 ) \
{ \
return( TYPE< typename promote_trait< T1, T2 >::value_type >( t1 ) OPERATOR ## = t2 ); \
}

型の昇格を用いた四則演算子を定義する際に利用する

オブジェクト '演算子' オブジェクト を実現する際に利用する.

#define DEFINE_PROMOTE_BIND_OPERATOR1_ (   TYPE,
  OPERATOR 
)
値:
template < class T1, class T2, size_t NDIM > \
inline TYPE< typename promote_trait< T1, T2 >::value_type, NDIM > \
operator OPERATOR( const TYPE< T1, NDIM > &t1, const TYPE< T2, NDIM > &t2 ) \
{ \
return( TYPE< typename promote_trait< T1, T2 >::value_type, NDIM >( t1 ) OPERATOR ## = t2 ); \
}

型の昇格を用いた四則演算子を定義する際に利用する

オブジェクト '演算子' オブジェクト を実現する際に利用する.

#define DEFINE_PROMOTE_BIND_OPERATOR2 (   TYPE,
  OPERATOR 
)
値:
template < class T1, class T2 > \
inline TYPE< typename promote_trait< T1, T2 >::value_type > \
operator OPERATOR( const TYPE< T1 > &t1, const T2 &t2 ) \
{ \
return( TYPE< typename promote_trait< T1, T2 >::value_type >( t1 ) OPERATOR ## = t2 ); \
}

型の昇格を用いた四則演算子を定義する際に利用する

オブジェクト '演算子' 定数 を実現する際に利用する.

#define DEFINE_PROMOTE_BIND_OPERATOR2_ (   TYPE,
  OPERATOR 
)
値:
template < class T1, class T2, size_t NDIM > \
inline TYPE< typename promote_trait< T1, T2 >::value_type, NDIM > \
operator OPERATOR( const TYPE< T1, NDIM > &t1, const T2 &t2 ) \
{ \
return( TYPE< typename promote_trait< T1, T2 >::value_type, NDIM >( t1 ) OPERATOR ## = t2 ); \
}

型の昇格を用いた四則演算子を定義する際に利用する

オブジェクト '演算子' 定数 を実現する際に利用する.

#define DEFINE_PROMOTE_BIND_OPERATOR3 (   TYPE,
  OPERATOR 
)
値:
template < class T1, class T2 > \
inline TYPE< typename promote_trait< T1, T2 >::value_type > \
operator OPERATOR( const T1 &t1, const TYPE< T2 > &t2 ) \
{ \
return( TYPE< typename promote_trait< T1, T2 >::value_type >( t2 ) OPERATOR ## = t1 ); \
}

型の昇格を用いた四則演算子を定義する際に利用する

定数 '演算子' オブジェクト を実現する際に利用する.主に,引き算以外で利用する.

#define DEFINE_PROMOTE_BIND_OPERATOR3_ (   TYPE,
  OPERATOR 
)
値:
template < class T1, class T2, size_t NDIM > \
inline TYPE< typename promote_trait< T1, T2 >::value_type, NDIM > \
operator OPERATOR( const T1 &t1, const TYPE< T2, NDIM > &t2 ) \
{ \
return( TYPE< typename promote_trait< T1, T2 >::value_type, NDIM >( t2 ) OPERATOR ## = t1 ); \
}

型の昇格を用いた四則演算子を定義する際に利用する

定数 '演算子' オブジェクト を実現する際に利用する.主に,引き算以外で利用する.

#define DEFINE_PROMOTE_BIND_OPERATOR4 (   TYPE,
  OPERATOR 
)
値:
template < class T1, class T2 > \
inline TYPE< typename promote_trait< T1, T2 >::value_type > \
operator OPERATOR( const T1 &t1, const TYPE< T2 > &t2 ) \
{ \
return( TYPE< typename promote_trait< T1, T2 >::value_type >( t1 ) OPERATOR ## = t2 ); \
}

型の昇格を用いた四則演算子を定義する際に利用する

定数 '−' オブジェクト を実現する際に利用する.ただし,1引数のコンストラクタが利用可能でなくてはならない.

#define DEFINE_PROMOTE_BIND_OPERATOR4_ (   TYPE,
  OPERATOR 
)
値:
template < class T1, class T2, size_t NDIM > \
inline TYPE< typename promote_trait< T1, T2 >::value_type, NDIM > \
operator OPERATOR( const T1 &t1, const TYPE< T2, NDIM > &t2 ) \
{ \
return( TYPE< typename promote_trait< T1, T2 >::value_type, NDIM >( t1 ) OPERATOR ## = t2 ); \
}

型の昇格を用いた四則演算子を定義する際に利用する

定数 '−' オブジェクト を実現する際に利用する.ただし,1引数のコンストラクタが利用可能でなくてはならない.


Generated on Wed Nov 12 2014 19:44:28 for MIST by doxygen 1.8.1.2