2007-11-14 Atsushi Enomoto <atsushi@ximian.com>
[mono.git] / mcs / class / corlib / System.Reflection.Emit / OperandType.cs
1 // OperandType.cs
2 //
3 // (C) 2001 Ximian, Inc.  http://www.ximian.com
4
5 //
6 // Copyright (C) 2004 Novell, Inc (http://www.novell.com)
7 //
8 // Permission is hereby granted, free of charge, to any person obtaining
9 // a copy of this software and associated documentation files (the
10 // "Software"), to deal in the Software without restriction, including
11 // without limitation the rights to use, copy, modify, merge, publish,
12 // distribute, sublicense, and/or sell copies of the Software, and to
13 // permit persons to whom the Software is furnished to do so, subject to
14 // the following conditions:
15 // 
16 // The above copyright notice and this permission notice shall be
17 // included in all copies or substantial portions of the Software.
18 // 
19 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
20 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
21 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
22 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
23 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
24 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
25 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
26 //
27
28 using System.Runtime.InteropServices;
29
30 namespace System.Reflection.Emit {
31
32         /// <summary>
33         ///  Describes the operand types of MSIL instructions.
34         /// </summary>
35 #if NET_2_0
36         [ComVisible (true)]
37         [Serializable]
38 #endif
39         public enum OperandType {
40
41                 /// <summary>
42                 /// </summary>
43                 InlineBrTarget = 0,
44
45                 /// <summary>
46                 /// </summary>
47                 InlineField = 1,
48
49                 /// <summary>
50                 /// </summary>
51                 InlineI = 2,
52
53                 /// <summary>
54                 /// </summary>
55                 InlineI8 = 3,
56
57                 /// <summary>
58                 /// </summary>
59                 InlineMethod = 4,
60
61                 /// <summary>
62                 /// </summary>
63                 InlineNone = 5,
64
65                 /// <summary>
66                 /// </summary>
67 #if NET_2_0
68                 [Obsolete ("This API has been deprecated.")]
69 #endif
70                 InlinePhi = 6,
71
72                 /// <summary>
73                 /// </summary>
74                 InlineR = 7,
75
76                 /// <summary>
77                 /// </summary>
78                 InlineSig = 9,
79
80                 /// <summary>
81                 /// </summary>
82                 InlineString = 0x0A,
83
84                 /// <summary>
85                 /// </summary>
86                 InlineSwitch = 0x0B,
87
88                 /// <summary>
89                 /// </summary>
90                 InlineTok = 0x0C,
91
92                 /// <summary>
93                 /// </summary>
94                 InlineType = 0x0D,
95
96                 /// <summary>
97                 /// </summary>
98                 InlineVar = 0x0E,
99
100                 /// <summary>
101                 /// </summary>
102                 ShortInlineBrTarget = 0x0F,
103
104                 /// <summary>
105                 /// </summary>
106                 ShortInlineI = 0x10,
107
108                 /// <summary>
109                 /// </summary>
110                 ShortInlineR = 0x11,
111
112                 /// <summary>
113                 /// </summary>
114                 ShortInlineVar = 0x12
115         }
116
117 }
118