2 using System.Reflection;
6 static protected internal void MyProtectedInternal () { }
7 static internal void MyInternal() { }
8 static public void MyPublic () { }
9 static void MyPrivate () {}
13 Type myself = typeof (Test);
14 BindingFlags bf = BindingFlags.Static | BindingFlags.NonPublic | BindingFlags.Public;
15 MethodAttributes mpia;
21 mpi = myself.GetMethod ("MyProtectedInternal", bf);
22 mpia = mpi.Attributes & MethodAttributes.MemberAccessMask;
23 if (mpia != MethodAttributes.FamORAssem)
29 mpi = myself.GetMethod ("MyInternal", bf);
30 mpia = mpi.Attributes & MethodAttributes.MemberAccessMask;
31 if (mpia != MethodAttributes.Assembly)
37 mpi = myself.GetMethod ("MyPublic", bf);
38 mpia = mpi.Attributes & MethodAttributes.MemberAccessMask;
39 if (mpia != MethodAttributes.Public)
45 mpi = myself.GetMethod ("MyPrivate", bf);
46 mpia = mpi.Attributes & MethodAttributes.MemberAccessMask;
47 if (mpia != MethodAttributes.Private)
50 Console.WriteLine ("All tests pass");