]> Dogcows Code - chaz/yoink/blob - src/moof/cml/core/meta/if.h
bugfix: win32 packaging script temp directories
[chaz/yoink] / src / moof / cml / core / meta / if.h
1 /* -*- C++ -*- ------------------------------------------------------------
2
3 Copyright (c) 2007 Jesse Anders and Demian Nave http://cmldev.net/
4
5 The Configurable Math Library (CML) is distributed under the terms of the
6 Boost Software License, v1.0 (see cml/LICENSE for details).
7
8 *-----------------------------------------------------------------------*/
9 /** @file
10 * @brief
11 */
12
13 #ifndef meta_if_h
14 #define meta_if_h
15
16 #include <cml/core/meta/common.h>
17
18 namespace cml {
19
20 /** Select argument type based upon truth value. */
21 template<bool yn, typename TrueT, typename FalseT> struct select_if;
22
23 /** Result is TrueT if true. */
24 template<typename TrueT, typename FalseT>
25 struct select_if<true,TrueT,FalseT> {
26 typedef TrueT result;
27 enum { is_true = true };
28 };
29
30 /** Result is FalseT if false. */
31 template<typename TrueT, typename FalseT>
32 struct select_if<false,TrueT,FalseT> {
33 typedef FalseT result;
34 enum { is_true = false };
35 };
36
37 } // namespace cml
38
39 #endif
40
41 // -------------------------------------------------------------------------
42 // vim:ft=cpp
This page took 0.034978 seconds and 4 git commands to generate.