arma_static_check.hpp
Go to the documentation of this file.
1 // Copyright (C) 2008-2011 NICTA (www.nicta.com.au)
2 // Copyright (C) 2008-2011 Conrad Sanderson
3 //
4 // This file is part of the Armadillo C++ library.
5 // It is provided without any warranty of fitness
6 // for any purpose. You can redistribute this file
7 // and/or modify it under the terms of the GNU
8 // Lesser General Public License (LGPL) as published
9 // by the Free Software Foundation, either version 3
10 // of the License or (at your option) any later version.
11 // (see http://www.opensource.org/licenses for more info)
12 
13 
16 
17 
18 
19 template<bool ERROR___INCORRECT_OR_UNSUPPORTED_TYPE>
21  {
23  static
24  void
26  {
27  static const char
28  junk[ ERROR___INCORRECT_OR_UNSUPPORTED_TYPE ? -1 : +1 ];
29  }
30  };
31 
32 
33 
34 template<>
36  {
38  static
39  void
41  {
42  }
43  };
44 
45 
46 
47 #if !defined(ARMA_USE_CXX11)
48 
49  #define arma_static_check(condition, message) static const char message[ (condition) ? -1 : +1 ]
50 
51  #define arma_type_check(condition) arma_type_check_cxx1998<condition>::apply()
52 
53 #else
54 
55  #define arma_static_check(condition, message) static_assert( !(condition), #message )
56 
57  #define arma_type_check(condition) static_assert( !(condition), "error: incorrect or unsupported type" )
58 
59 #endif
60 
61 
62 
static arma_inline void apply()
#define arma_inline
static arma_inline void apply()


armadillo_matrix
Author(s):
autogenerated on Fri Apr 16 2021 02:31:56