35 lines
815 B
C#
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();
|
|
}
|
|
}
|
|
}
|