mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-18 16:10:26 +02:00
47 lines
761 B
Beef
47 lines
761 B
Beef
using System;
|
|
|
|
namespace Tests
|
|
{
|
|
class Defaults
|
|
{
|
|
struct StructA
|
|
{
|
|
public int mA = 123;
|
|
public int mB = 234;
|
|
|
|
public static implicit operator StructA(float f)
|
|
{
|
|
StructA val = .();
|
|
val.mA = (.)f;
|
|
return val;
|
|
}
|
|
|
|
public static implicit operator StructA(float[2] f)
|
|
{
|
|
StructA val = default;
|
|
val.mA = (.)f[0];
|
|
val.mB = (.)f[1];
|
|
return val;
|
|
}
|
|
}
|
|
|
|
public static int Default0(StructA sa = 45.6f)
|
|
{
|
|
return sa.mA + sa.mB * 1000;
|
|
}
|
|
|
|
public static int Default1(StructA sa = float[2](12.3f, 23.4f))
|
|
{
|
|
return sa.mA + sa.mB * 1000;
|
|
}
|
|
|
|
[Test]
|
|
public static void CheckBasics()
|
|
{
|
|
int val = Default0();
|
|
Test.Assert(val == 234045);
|
|
val = Default1();
|
|
Test.Assert(val == 23012);
|
|
}
|
|
}
|
|
}
|