1 |
// Represent |
2 |
// |
3 |
// Douglas Thrift |
4 |
// |
5 |
// $Id$ |
6 |
|
7 |
#include "InputType.hpp" |
8 |
|
9 |
const ext::Vector<InputType>& InputType::enumerate() |
10 |
{ |
11 |
if (enumeration.IsEmpty()) |
12 |
{ |
13 |
_for (unsigned, type, INPUT_Normal, INPUT_Hexadecimal + 1) enumeration.InsertLast(Type(type)); |
14 |
} |
15 |
|
16 |
return enumeration; |
17 |
} |
18 |
|
19 |
ext::Vector<InputType> InputType::enumeration; |
20 |
|
21 |
InputType& InputType::operator=(const ext::String& string) |
22 |
{ |
23 |
if (enumeration.IsEmpty()) enumerate(); |
24 |
|
25 |
ext::Vector<InputType>::ConstIterator found(ext::FindFirstAll(enumeration, string)); |
26 |
|
27 |
if (found != enumeration.End()) type = *found; |
28 |
|
29 |
return *this; |
30 |
} |
31 |
|
32 |
InputType::operator ext::String() const |
33 |
{ |
34 |
switch (type) |
35 |
{ |
36 |
default: |
37 |
return "Normal"; |
38 |
case INPUT_Binary: |
39 |
return "Binary"; |
40 |
case INPUT_Hexadecimal: |
41 |
return "Hexadecimal"; |
42 |
} |
43 |
} |