QMCPACK
type_manipulation.hpp
Go to the documentation of this file.
1 //////////////////////////////////////////////////////////////////////////////////////
2 // This file is distributed under the University of Illinois/NCSA Open Source License.
3 // See LICENSE file in top directory for details.
4 //
5 // Copyright (c) 2021 QMCPACK developers
6 //
7 // File developed by: Peter Doak, doakpw@ornl.gov, Oak Ridge National Lab
8 //
9 // File created by: Peter Doak, doakpw@ornl.gov, Oak Ridge National Lab
10 //////////////////////////////////////////////////////////////////////////////////////
11 
12 #ifndef QMCPLUSPLUS_TYPE_MANIPULATIONS_H
13 #define QMCPLUSPLUS_TYPE_MANIPULATIONS_H
14 
15 #include <type_traits>
16 
17 /** Type with the bottom const removed in types of X (const) * const *
18  */
19 template<typename CT>
21  using type = typename std::add_pointer<typename std::remove_const<typename std::remove_pointer<CT>::type>::type>::type;
22 };
23 
24 #endif
typename std::add_pointer< typename std::remove_const< typename std::remove_pointer< CT >::type >::type >::type type
Type with the bottom const removed in types of X (const) * const *.