Exemple #1
0
    public static int Indirect()
    {
        bool success = true;

        // The generic case.
        MethodsFired mfGen = MethodsFired.None;
        Bar          bar   = new Bar();

        bar.FV(ref mfGen);

        if ((mfGen ^ (MethodsFired.Public)) != 0)
        {
            Console.WriteLine("FAIL!");
            Console.WriteLine("\tExpected: {0}", MethodsFired.Public);
            Console.WriteLine("\tGot: {0}", mfGen);
            success = false;
        }

        mfGen = MethodsFired.None;
        Int <Bar, Foo <Bar> > ibar = bar;

        ibar.FV(ref mfGen);
        if ((mfGen ^ (MethodsFired.ExplicitInt | MethodsFired.Public)) != 0)
        {
            Console.WriteLine("FAIL!");
            Console.WriteLine("\tExpected: {0}", MethodsFired.ExplicitInt | MethodsFired.Public);
            Console.WriteLine("\tGot: {0}", mfGen);
            success = false;
        }

        if (success)
        {
            Console.WriteLine("PASS");
            return(PASS);
        }
        else
        {
            return(FAIL);
        }
    }
Exemple #2
0
 public void FV(ref MethodsFired pMF)
 {
     pMF |= MethodsFired.Public;
 }
Exemple #3
0
 void Int <Bar, Foo <Bar> > .FV(ref MethodsFired pMF)
 {
     pMF |= MethodsFired.ExplicitInt;
     base.FV(ref pMF);
 }
Exemple #4
0
 public virtual void FV(ref MethodsFired pMF)
 {
     pMF |= MethodsFired.Base;
 }