summaryrefslogtreecommitdiff
path: root/public/tier0/type_traits.h
blob: 6459de49ea2647937130e751361a6c777014bd96 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose: functionality that is provided in C++11 type_traits, which 
// currently isn't supported by the OSX compiler. Sadness.
//
//=============================================================================
#pragma once

template <class T>
struct V_remove_const
{
	typedef T type;
};

template <class T>
struct V_remove_const<const T>
{
	typedef T type;
};

template <class T>
struct V_remove_const<const T[]>
{
	typedef T type;
};

template <class T, unsigned int N>
struct V_remove_const<const T[N]>
{
	typedef T type;
};