discord/Discord/Gateway/GatewayPayload.cs
2024-06-09 18:51:48 +12:00

35 lines
815 B
C#

namespace Discord.Gateway
{
internal class GatewayPayload<DT>
{
public GatewayOp Op { get; set; }
public DT? D { get; set; }
public int? S { get; set; }
public string? T { get; set; }
public GatewayPayload(GatewayOp op, DT? d = default, int? s = null, string? t = null)
{
Op = op;
D = d;
S = s;
T = t;
}
public static GatewayPayload<DT>? Parse(string json)
{
return JSON.Deserialize<GatewayPayload<DT>>(json);
}
public override string ToString()
{
return JSON.Serialize(this);
}
public static implicit operator string(GatewayPayload<DT> payload)
{
return payload.ToString();
}
}
}