HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UT_FixedArray.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * NAME: UT_FixedArray.h
7  *
8  * COMMENTS:
9  *
10  */
11 
12 #ifndef __UT_FIXEDARRAY_H__
13 #define __UT_FIXEDARRAY_H__
14 
15 #include <SYS/SYS_TypeDecorate.h>
16 #include <array>
17 
18 template <class T, std::size_t N>
19 using UT_FixedArray = std::array<T, N>;
20 
21 // Decorate UT_FixedArray< T, N > = std::array< T, N > as a fixed array-like type:
22 
23 template< typename T, std::size_t N >
24 struct SYS_IsFixedArrayNoCVRef< std::array< T, N > > { static constexpr bool value = true; };
25 
26 template< typename T, std::size_t N >
27 struct SYS_FixedArrayElementNoCVRef< std::array< T, N > > { using type = T; };
28 
29 template< typename T, std::size_t N >
30 struct SYS_FixedArraySizeNoCVRef< std::array< T, N > > { static constexpr std::size_t value = N; };
31 
32 // Relocation traits
33 
34 template< typename T, std::size_t N >
35 struct SafeTrivialRelocationNoCV< std::array< T, N > >
36 {
38 };
39 
40 template< typename T, std::size_t N >
41 struct UnsafeTrivialRelocationNoCV< std::array< T, N > >
42 {
44 };
45 
46 #endif // __UT_FIXEDARRAY_H__
47 
static constexpr bool value
std::array< T, N > UT_FixedArray
Definition: UT_FixedArray.h:19
GA_API const UT_StringHolder N
Definition: core.h:1131
static constexpr bool value