Files
Il2CppInspectorRedux/Il2CppTests/TestSources/Methods.cs
2019-11-09 22:47:21 +01:00

73 lines
1.6 KiB
C#

/*
Copyright 2017-2019 Katy Coe - http://www.hearthcode.org - http://www.djkaty.com
All rights reserved.
*/
using System.Text;
namespace Il2CppTests.TestSources
{
internal class Test
{
// A virtual method
public virtual void VirtualMethod() { }
// Method with value type return type
public int ValueTypeReturnMethod() => 0;
// Method with reference type return type
public StringBuilder ReferenceTypeReturnMethod() => new StringBuilder();
}
internal abstract class TestAbstract
{
public abstract void AbstractMethod();
}
internal class TestOverride : Test
{
public override void VirtualMethod() { }
}
internal class TestHideVirtual : Test
{
public new void VirtualMethod() { }
}
internal class TestHideOverride : TestOverride
{
public new void VirtualMethod() { }
}
internal class TestOverrideAbstract : TestAbstract
{
public override void AbstractMethod() { }
}
internal class TestHideAbstractOverride : TestOverrideAbstract
{
public new void AbstractMethod() { }
}
internal class TestHideVirtualAndNewVirtual : Test
{
public new virtual void VirtualMethod() { }
}
internal class TestHideOverrideAndNewVirtual : TestOverride
{
public new virtual void VirtualMethod() { }
}
internal abstract class TestAbstractNew : TestOverride
{
public abstract new void VirtualMethod();
}
internal class TestNewNonVirtualMethod : Test
{
public new int ValueTypeReturnMethod() => 1;
}
}