tclap  1.2.0
ArgTraits.h
Go to the documentation of this file.
1 // -*- Mode: c++; c-basic-offset: 4; tab-width: 4; -*-
2 
3 /******************************************************************************
4  *
5  * file: ArgTraits.h
6  *
7  * Copyright (c) 2007, Daniel Aarno, Michael E. Smoot .
8  * All rights reverved.
9  *
10  * See the file COPYING in the top directory of this distribution for
11  * more information.
12  *
13  * THE SOFTWARE IS PROVIDED _AS IS_, WITHOUT WARRANTY OF ANY KIND, EXPRESS
14  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
16  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
18  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
19  * DEALINGS IN THE SOFTWARE.
20  *
21  *****************************************************************************/
22 
23 // This is an internal tclap file, you should probably not have to
24 // include this directly
25 
26 #ifndef TCLAP_ARGTRAITS_H
27 #define TCLAP_ARGTRAITS_H
28 
29 namespace TCLAP {
30 
31 // We use two empty structs to get compile type specialization
32 // function to work
33 
38 struct ValueLike {
40 };
41 
47 struct StringLike {};
48 
56 };
57 
65 };
66 
73 template<typename T>
74 struct ArgTraits {
75  typedef typename T::ValueCategory ValueCategory;
76  //typedef ValueLike ValueCategory;
77 };
78 
79 #endif
80 
81 } // namespace