tclap 1.2.2
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 reserved.
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
29namespace TCLAP {
30
31// We use two empty structs to get compile type specialization
32// function to work
33
38struct ValueLike {
40 virtual ~ValueLike() {}
41};
42
48struct StringLike {
49 virtual ~StringLike() {}
50};
51
61
69 virtual ~ValueLikeTrait() {}
70};
71
78template<typename T>
79struct ArgTraits {
80 typedef typename T::ValueCategory ValueCategory;
81 virtual ~ArgTraits() {}
82 //typedef ValueLike ValueCategory;
83};
84
85} // namespace
86
87#endif
88
Definition Arg.h:58
Arg traits are used to get compile type specialization when parsing argument values.
Definition ArgTraits.h:79
T::ValueCategory ValueCategory
Definition ArgTraits.h:80
virtual ~ArgTraits()
Definition ArgTraits.h:81
A class can inherit from this object to make it have string like traits.
Definition ArgTraits.h:57
StringLike ValueCategory
Definition ArgTraits.h:58
virtual ~StringLikeTrait()
Definition ArgTraits.h:59
A string like argument value type is a value that can be set using operator=(string).
Definition ArgTraits.h:48
virtual ~StringLike()
Definition ArgTraits.h:49
A class can inherit from this object to make it have value like traits.
Definition ArgTraits.h:67
virtual ~ValueLikeTrait()
Definition ArgTraits.h:69
ValueLike ValueCategory
Definition ArgTraits.h:68
A value like argument value type is a value that can be set using operator>>.
Definition ArgTraits.h:38
ValueLike ValueCategory
Definition ArgTraits.h:39
virtual ~ValueLike()
Definition ArgTraits.h:40