using System;
namespace MultiWheelC.TrajectoryPlanning.EMPlanner;
///
/// 验证规划契约中必须为有限数的标量输入。
///
internal static class ContractNumeric
{
///
/// 拒绝 NaN 或无穷数值。 的单位由调用方语境决定; 原样传给异常构造器,方法本身不验证它。
///
public static void RequireFinite(double value, string parameterName)
{
if (double.IsNaN(value) || double.IsInfinity(value))
throw new ArgumentOutOfRangeException(parameterName, "A finite value is required.");
}
}