/
enum2.cs
79 lines (61 loc) · 985 Bytes
/
enum2.cs
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
using System;
enum A {
Hello,
Bye
}
class X {
static int Main ()
{
int num = 0;
object x = A.Hello;
object y = A.Bye;
num++;
if ((int)x != 0)
return num;
num++;
if ((int)y != 1)
return num;
num++;
if ("Hello" != A.Hello.ToString ())
return num;
num++;
if (!x.Equals(x))
return num;
num++;
if (x.Equals(y))
return num;
num++;
if (x.Equals(0))
return num;
num++;
Type et = x.GetType ();
object z = Enum.ToObject (et, Int64.MaxValue);
if ((int)z != -1)
return num;
num++;
z = Enum.ToObject (et, 0);
if (!x.Equals(z))
return num;
num++;
z = Enum.ToObject (et, 1);
if (!y.Equals(z))
return num;
num++;
z = Enum.Parse (et, "Bye");
if (!y.Equals(z))
return num;
num++;
try {
z = Enum.Parse (et, "bye");
} catch {
z = null;
}
if (z != null)
return num;
num++;
z = Enum.Parse (et, "bye", true);
if (!y.Equals(z))
return num;
return 0;
}
}