msggen: Derive Eq on generated Enums as well

This commit is contained in:
Christian Decker
2023-01-26 13:57:25 +01:00
parent a298f00229
commit 32f9d78096
2 changed files with 38 additions and 38 deletions

74
cln-rpc/src/model.rs generated
View File

@@ -367,7 +367,7 @@ pub mod requests {
type Response = super::responses::CreateinvoiceResponse; type Response = super::responses::CreateinvoiceResponse;
} }
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum DatastoreMode { pub enum DatastoreMode {
#[serde(rename = "must-create")] #[serde(rename = "must-create")]
MUST_CREATE, MUST_CREATE,
@@ -476,7 +476,7 @@ pub mod requests {
type Response = super::responses::DelexpiredinvoiceResponse; type Response = super::responses::DelexpiredinvoiceResponse;
} }
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum DelinvoiceStatus { pub enum DelinvoiceStatus {
#[serde(rename = "paid")] #[serde(rename = "paid")]
PAID, PAID,
@@ -621,7 +621,7 @@ pub mod requests {
type Response = super::responses::SendonionResponse; type Response = super::responses::SendonionResponse;
} }
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ListsendpaysStatus { pub enum ListsendpaysStatus {
#[serde(rename = "pending")] #[serde(rename = "pending")]
PENDING, PENDING,
@@ -783,7 +783,7 @@ pub mod requests {
type Response = super::responses::WaitsendpayResponse; type Response = super::responses::WaitsendpayResponse;
} }
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum NewaddrAddresstype { pub enum NewaddrAddresstype {
#[serde(rename = "bech32")] #[serde(rename = "bech32")]
BECH32, BECH32,
@@ -1097,7 +1097,7 @@ pub mod requests {
type Response = super::responses::DisconnectResponse; type Response = super::responses::DisconnectResponse;
} }
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum FeeratesStyle { pub enum FeeratesStyle {
#[serde(rename = "perkb")] #[serde(rename = "perkb")]
PERKB, PERKB,
@@ -1194,7 +1194,7 @@ pub mod requests {
type Response = super::responses::GetrouteResponse; type Response = super::responses::GetrouteResponse;
} }
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ListforwardsStatus { pub enum ListforwardsStatus {
#[serde(rename = "offered")] #[serde(rename = "offered")]
OFFERED, OFFERED,
@@ -1238,7 +1238,7 @@ pub mod requests {
type Response = super::responses::ListforwardsResponse; type Response = super::responses::ListforwardsResponse;
} }
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ListpaysStatus { pub enum ListpaysStatus {
#[serde(rename = "pending")] #[serde(rename = "pending")]
PENDING, PENDING,
@@ -1438,7 +1438,7 @@ pub mod responses {
} }
/// Type of connection (until 23.08, `websocket` was also allowed) /// Type of connection (until 23.08, `websocket` was also allowed)
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum GetinfoAddressType { pub enum GetinfoAddressType {
#[serde(rename = "dns")] #[serde(rename = "dns")]
DNS, DNS,
@@ -1476,7 +1476,7 @@ pub mod responses {
} }
/// Type of connection /// Type of connection
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum GetinfoBindingType { pub enum GetinfoBindingType {
#[serde(rename = "local socket")] #[serde(rename = "local socket")]
LOCAL_SOCKET, LOCAL_SOCKET,
@@ -1558,7 +1558,7 @@ pub mod responses {
} }
} }
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ListpeersPeersLogType { pub enum ListpeersPeersLogType {
#[serde(rename = "SKIPPED")] #[serde(rename = "SKIPPED")]
SKIPPED, SKIPPED,
@@ -1611,7 +1611,7 @@ pub mod responses {
} }
/// the channel state, in particular "CHANNELD_NORMAL" means the channel can be used normally /// the channel state, in particular "CHANNELD_NORMAL" means the channel can be used normally
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ListpeersPeersChannelsState { pub enum ListpeersPeersChannelsState {
#[serde(rename = "OPENINGD")] #[serde(rename = "OPENINGD")]
OPENINGD, OPENINGD,
@@ -1693,7 +1693,7 @@ pub mod responses {
} }
/// Whether it came from peer, or is going to peer /// Whether it came from peer, or is going to peer
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ListpeersPeersChannelsHtlcsDirection { pub enum ListpeersPeersChannelsHtlcsDirection {
#[serde(rename = "in")] #[serde(rename = "in")]
IN, IN,
@@ -1863,7 +1863,7 @@ pub mod responses {
} }
} }
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ListfundsOutputsStatus { pub enum ListfundsOutputsStatus {
#[serde(rename = "unconfirmed")] #[serde(rename = "unconfirmed")]
UNCONFIRMED, UNCONFIRMED,
@@ -1938,7 +1938,7 @@ pub mod responses {
} }
/// status of the payment (could be complete if already sent previously) /// status of the payment (could be complete if already sent previously)
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum SendpayStatus { pub enum SendpayStatus {
#[serde(rename = "pending")] #[serde(rename = "pending")]
PENDING, PENDING,
@@ -2087,7 +2087,7 @@ pub mod responses {
} }
/// Whether we successfully negotiated a mutual close, closed without them, or discarded not-yet-opened channel /// Whether we successfully negotiated a mutual close, closed without them, or discarded not-yet-opened channel
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum CloseType { pub enum CloseType {
#[serde(rename = "mutual")] #[serde(rename = "mutual")]
MUTUAL, MUTUAL,
@@ -2131,7 +2131,7 @@ pub mod responses {
} }
/// Whether they initiated connection or we did /// Whether they initiated connection or we did
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ConnectDirection { pub enum ConnectDirection {
#[serde(rename = "in")] #[serde(rename = "in")]
IN, IN,
@@ -2150,7 +2150,7 @@ pub mod responses {
} }
} }
/// Type of connection (*torv2*/*torv3* only if **direction** is *out*) /// Type of connection (*torv2*/*torv3* only if **direction** is *out*)
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ConnectAddressType { pub enum ConnectAddressType {
#[serde(rename = "local socket")] #[serde(rename = "local socket")]
LOCAL_SOCKET, LOCAL_SOCKET,
@@ -2211,7 +2211,7 @@ pub mod responses {
} }
/// Whether it has been paid, or can no longer be paid /// Whether it has been paid, or can no longer be paid
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum CreateinvoiceStatus { pub enum CreateinvoiceStatus {
#[serde(rename = "paid")] #[serde(rename = "paid")]
PAID, PAID,
@@ -2348,7 +2348,7 @@ pub mod responses {
} }
/// State of invoice /// State of invoice
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum DelinvoiceStatus { pub enum DelinvoiceStatus {
#[serde(rename = "paid")] #[serde(rename = "paid")]
PAID, PAID,
@@ -2458,7 +2458,7 @@ pub mod responses {
} }
/// Whether it's paid, unpaid or unpayable /// Whether it's paid, unpaid or unpayable
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ListinvoicesInvoicesStatus { pub enum ListinvoicesInvoicesStatus {
#[serde(rename = "unpaid")] #[serde(rename = "unpaid")]
UNPAID, UNPAID,
@@ -2525,7 +2525,7 @@ pub mod responses {
} }
/// status of the payment (could be complete if already sent previously) /// status of the payment (could be complete if already sent previously)
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum SendonionStatus { pub enum SendonionStatus {
#[serde(rename = "pending")] #[serde(rename = "pending")]
PENDING, PENDING,
@@ -2581,7 +2581,7 @@ pub mod responses {
} }
/// status of the payment /// status of the payment
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ListsendpaysPaymentsStatus { pub enum ListsendpaysPaymentsStatus {
#[serde(rename = "pending")] #[serde(rename = "pending")]
PENDING, PENDING,
@@ -2691,7 +2691,7 @@ pub mod responses {
} }
/// status of payment /// status of payment
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum PayStatus { pub enum PayStatus {
#[serde(rename = "complete")] #[serde(rename = "complete")]
COMPLETE, COMPLETE,
@@ -2740,7 +2740,7 @@ pub mod responses {
} }
/// Type of connection (until 23.08, `websocket` was also allowed) /// Type of connection (until 23.08, `websocket` was also allowed)
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ListnodesNodesAddressesType { pub enum ListnodesNodesAddressesType {
#[serde(rename = "dns")] #[serde(rename = "dns")]
DNS, DNS,
@@ -2809,7 +2809,7 @@ pub mod responses {
} }
/// Whether it's paid or expired /// Whether it's paid or expired
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum WaitanyinvoiceStatus { pub enum WaitanyinvoiceStatus {
#[serde(rename = "paid")] #[serde(rename = "paid")]
PAID, PAID,
@@ -2863,7 +2863,7 @@ pub mod responses {
} }
/// Whether it's paid or expired /// Whether it's paid or expired
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum WaitinvoiceStatus { pub enum WaitinvoiceStatus {
#[serde(rename = "paid")] #[serde(rename = "paid")]
PAID, PAID,
@@ -2917,7 +2917,7 @@ pub mod responses {
} }
/// status of the payment /// status of the payment
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum WaitsendpayStatus { pub enum WaitsendpayStatus {
#[serde(rename = "complete")] #[serde(rename = "complete")]
COMPLETE, COMPLETE,
@@ -3011,7 +3011,7 @@ pub mod responses {
} }
/// status of payment /// status of payment
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum KeysendStatus { pub enum KeysendStatus {
#[serde(rename = "complete")] #[serde(rename = "complete")]
COMPLETE, COMPLETE,
@@ -3204,7 +3204,7 @@ pub mod responses {
} }
/// the channel state, in particular "CHANNELD_NORMAL" means the channel can be used normally /// the channel state, in particular "CHANNELD_NORMAL" means the channel can be used normally
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ListpeerchannelsChannelsState { pub enum ListpeerchannelsChannelsState {
#[serde(rename = "OPENINGD")] #[serde(rename = "OPENINGD")]
OPENINGD, OPENINGD,
@@ -3296,7 +3296,7 @@ pub mod responses {
} }
/// Whether it came from peer, or is going to peer /// Whether it came from peer, or is going to peer
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ListpeerchannelsChannelsHtlcsDirection { pub enum ListpeerchannelsChannelsHtlcsDirection {
#[serde(rename = "in")] #[serde(rename = "in")]
IN, IN,
@@ -3464,7 +3464,7 @@ pub mod responses {
} }
/// What caused the channel to close /// What caused the channel to close
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ListclosedchannelsClosedchannelsClose_cause { pub enum ListclosedchannelsClosedchannelsClose_cause {
#[serde(rename = "unknown")] #[serde(rename = "unknown")]
UNKNOWN, UNKNOWN,
@@ -3549,7 +3549,7 @@ pub mod responses {
} }
/// the address type (if known) /// the address type (if known)
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum DecodepayFallbacksType { pub enum DecodepayFallbacksType {
#[serde(rename = "P2PKH")] #[serde(rename = "P2PKH")]
P2PKH, P2PKH,
@@ -3628,7 +3628,7 @@ pub mod responses {
} }
/// what kind of object it decoded to /// what kind of object it decoded to
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum DecodeType { pub enum DecodeType {
#[serde(rename = "bolt12 offer")] #[serde(rename = "bolt12 offer")]
BOLT12_OFFER, BOLT12_OFFER,
@@ -3985,7 +3985,7 @@ pub mod responses {
} }
/// The features understood by the destination node /// The features understood by the destination node
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum GetrouteRouteStyle { pub enum GetrouteRouteStyle {
#[serde(rename = "tlv")] #[serde(rename = "tlv")]
TLV, TLV,
@@ -4028,7 +4028,7 @@ pub mod responses {
} }
/// still ongoing, completed, failed locally, or failed after forwarding /// still ongoing, completed, failed locally, or failed after forwarding
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ListforwardsForwardsStatus { pub enum ListforwardsForwardsStatus {
#[serde(rename = "offered")] #[serde(rename = "offered")]
OFFERED, OFFERED,
@@ -4053,7 +4053,7 @@ pub mod responses {
} }
} }
/// Either a legacy onion format or a modern tlv format /// Either a legacy onion format or a modern tlv format
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ListforwardsForwardsStyle { pub enum ListforwardsForwardsStyle {
#[serde(rename = "legacy")] #[serde(rename = "legacy")]
LEGACY, LEGACY,
@@ -4109,7 +4109,7 @@ pub mod responses {
} }
/// status of the payment /// status of the payment
#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)] #[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum ListpaysPaysStatus { pub enum ListpaysPaysStatus {
#[serde(rename = "pending")] #[serde(rename = "pending")]
PENDING, PENDING,

View File

@@ -85,7 +85,7 @@ def gen_enum(e):
if e.deprecated: if e.deprecated:
decl += "#[deprecated]\n" decl += "#[deprecated]\n"
decl += f"#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq)]\npub enum {e.typename} {{\n" decl += f"#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]\npub enum {e.typename} {{\n"
for v in e.variants: for v in e.variants:
if v is None: if v is None:
continue continue