Tue Dec 18 18:46:22 CET 2001 Paolo Molaro <lupus@ximian.com>
[mono.git] / mcs / class / corlib / System.Reflection / FieldInfo.cs
1 //
2 // System.Reflection.FieldInfo.cs
3 //
4 // Author:
5 //   Miguel de Icaza (miguel@ximian.com)
6 //
7 // (C) Ximian, Inc.  http://www.ximian.com
8 //
9 // TODO: Mucho left to implement.
10 //
11
12 using System;
13 using System.Reflection;
14 using System.Reflection.Emit;
15 using System.Globalization;
16 using System.Runtime.CompilerServices;
17
18 namespace System.Reflection {
19
20         public abstract class FieldInfo : MemberInfo {
21
22                 public abstract FieldAttributes Attributes {get;}
23                 public abstract RuntimeFieldHandle FieldHandle {get;}
24
25                 public abstract Type FieldType { get; }
26
27                 public abstract object GetValue(object obj);
28
29                 public override MemberTypes MemberType {
30                         get { return MemberTypes.Field;}
31                 }
32
33                 public bool IsLiteral
34                 {
35                         get {return (Attributes & FieldAttributes.Literal) != 0;}
36                 } 
37
38                 public bool IsStatic
39                 {
40                         get {return (Attributes & FieldAttributes.Static) != 0;}
41                 } 
42
43                 public bool IsInitOnly
44                 {
45                         get {return (Attributes & FieldAttributes.InitOnly) != 0;}
46                 } 
47
48                 public virtual void SetValue( object obj, object val, BindingFlags invokeAttr, Binder binder, CultureInfo culture) {
49                 }
50                 public void SetValue( object obj, object value) {
51                 }
52         }
53 }