using Luban.Job.Cfg.DataVisitors; using System.Numerics; namespace Luban.Job.Cfg.Datas { public class DVector4 : DType { public static DVector4 Default { get; } = new DVector4(default); public override string TypeName => "vector4"; public DVector4(Vector4 x) : base(x) { } public override void Apply(IDataActionVisitor visitor, T x) { visitor.Accept(this, x); } public override void Apply(IDataActionVisitor visitor, T1 x, T2 y) { visitor.Accept(this, x, y); } public override TR Apply(IDataFuncVisitor visitor) { return visitor.Accept(this); } public override TR Apply(IDataFuncVisitor visitor, T x) { return visitor.Accept(this, x); } public override bool Equals(object obj) { return obj is DVector4 o && o.Value == this.Value; } public override int GetHashCode() { return Value.GetHashCode(); } } }