public void StoreLocal(Derived d) { Base b = d; // we don't try to analyze how locals are used b.BaseMethod(10); d.BaseMethod(10); }
static void Main(string[] args) { Base a = new Base("a"); a.BaseMethod(); Derived b = new Derived("b"); b.BaseMethod(); b.DerivedMethod(); }
public static void Main() { Derived d = new Derived(); Console.WriteLine("x = {0}", d.x); d.BaseMethod(); Hogehoge h = new Hogehoge(); Console.WriteLine("x = {0}", h.x); h.BaseMethod(); h.Show(); }
public static void Static(Derived d) { d.BaseMethod(10); }
public void StoreStaticField(Derived d) { ms_b = d; d.BaseMethod(10); }
public void StoreField(Derived d) { m_b = d; d.BaseMethod(10); }
public void CrossCalls(Derived d) { d.BaseMethod(10 + d.GetHashCode()); }
public void TwoCalls(Derived d) { d.BaseMethod(10); d.BaseMethod(20); }
public void BCall(Derived d) { d.BaseMethod(10); }
public void Call(Derived d) { d.BaseMethod(10); StoreField(d); }
public void StoreStaticField(Derived d) { ms_d = d; d.BaseMethod(10); }
public void StoreField(Derived d) { m_d = d; d.BaseMethod(10); }
public void CrossCalls(Derived d) { d.BaseMethod(10); d.DerivedMethod(20); }