using InnovEnergy.Lib.SrcGen;
using InnovEnergy.Lib.SrcGen.Attributes;

namespace InnovEnergy.Lib.Units;

[Generate<Operators>("HAS_CONSTRUCTOR")][Generate<Sum>]
public readonly partial struct ApparentPower
{
    public static String Unit   => "VA";
    public static String Symbol => "S";
   
    public ApparentPower(Double value)
    {
        if (value < 0) throw new ArgumentException("Apparent power cannot be negative", nameof(value));
        Value = value;
    }
}