1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-20 08:58:00 +02:00
Beef/BeefLibs/corlib/src/IComparable.bf

76 lines
921 B
Beef
Raw Normal View History

2019-08-23 11:56:54 -07:00
namespace System
{
2020-01-28 10:58:52 -08:00
interface INumeric
{
static Self operator+(Self lhs, Self rhs);
}
interface IInteger : INumeric
2019-08-23 11:56:54 -07:00
{
}
2020-01-28 10:58:52 -08:00
interface IUnsigned : INumeric
2019-08-23 11:56:54 -07:00
{
}
interface ISigned
{
}
interface IFloating
{
}
interface IOpEquals
{
public static bool operator==(Self val1, Self val2);
}
interface IOpEquals<T>
{
public static bool operator==(Self val1, T val2);
}
interface IOpComparable
{
static int operator<=>(Self lhs, Self rhs);
}
interface IOpAddable
{
static Self operator+(Self lhs, Self rhs);
}
interface IOpSubtractable
{
static Self operator-(Self lhs, Self rhs);
}
2019-08-23 11:56:54 -07:00
interface IOpNegatable
{
static Self operator-(Self value);
}
interface IOpConvertibleTo<T>
{
static operator T(Self value);
}
interface IOpConvertibleFrom<T>
{
static operator Self(T value);
}
interface IIsNaN
{
bool IsNaN { get; }
}
interface ICanBeNaN : IIsNaN
{
}
}