mirror of
https://github.com/space-wizards/RobustToolbox.git
synced 2026-09-02 18:17:09 +02:00
* Toolshed Rejig * shorten hint string * Try fix conflicts. Ill make with work later * bodge * Fix ProtoIdTypeParser assert * comment * AllEntities * Remove more linq from WhereCommand * better help strings * Add ContainsCommand * loc strings * Add contains command description * Add $self variable * Errors for writing to readonly variables * A
70 lines
1.7 KiB
C#
70 lines
1.7 KiB
C#
using System;
|
|
using System.Numerics;
|
|
|
|
namespace Robust.Shared.Toolshed.Commands.Math;
|
|
|
|
[ToolshedCommand(Name = ">")]
|
|
public sealed class GreaterThanCommand : ToolshedCommand
|
|
{
|
|
[CommandImplementation, TakesPipedTypeAsGeneric]
|
|
public bool Comparison<T>([PipedArgument] T x, T y) where T : INumber<T>
|
|
{
|
|
return x > y;
|
|
}
|
|
}
|
|
|
|
[ToolshedCommand(Name = "<")]
|
|
public sealed class LessThanCommand : ToolshedCommand
|
|
{
|
|
[CommandImplementation, TakesPipedTypeAsGeneric]
|
|
public bool Comparison<T>([PipedArgument] T x, T y)
|
|
where T : IComparisonOperators<T, T, bool>
|
|
{
|
|
return x > y;
|
|
}
|
|
}
|
|
|
|
[ToolshedCommand(Name = ">=")]
|
|
public sealed class GreaterThanOrEqualCommand : ToolshedCommand
|
|
{
|
|
[CommandImplementation, TakesPipedTypeAsGeneric]
|
|
public bool Comparison<T>([PipedArgument] T x, T y)
|
|
where T : INumber<T>
|
|
{
|
|
return x >= y;
|
|
}
|
|
}
|
|
|
|
[ToolshedCommand(Name = "<=")]
|
|
public sealed class LessThanOrEqualCommand : ToolshedCommand
|
|
{
|
|
[CommandImplementation, TakesPipedTypeAsGeneric]
|
|
public bool Comparison<T>([PipedArgument] T x, T y)
|
|
where T : IComparisonOperators<T, T, bool>
|
|
{
|
|
return x <= y;
|
|
}
|
|
}
|
|
|
|
[ToolshedCommand(Name = "==")]
|
|
public sealed class EqualCommand : ToolshedCommand
|
|
{
|
|
[CommandImplementation, TakesPipedTypeAsGeneric]
|
|
public bool Comparison<T>([PipedArgument] T x, T y)
|
|
where T : IEquatable<T>
|
|
{
|
|
return x.Equals(y);
|
|
}
|
|
}
|
|
|
|
[ToolshedCommand(Name = "!=")]
|
|
public sealed class NotEqualCommand : ToolshedCommand
|
|
{
|
|
[CommandImplementation, TakesPipedTypeAsGeneric]
|
|
public bool Comparison<T>([PipedArgument] T x, T y)
|
|
where T : IEquatable<T>
|
|
{
|
|
return !x.Equals(y);
|
|
}
|
|
}
|