@@ -1132,6 +1132,9 @@ pub(super) enum ChannelPhase<SP: Deref> where SP::Target: SignerProvider {
1132
1132
UnfundedOutboundV2(OutboundV2Channel<SP>),
1133
1133
UnfundedInboundV2(InboundV2Channel<SP>),
1134
1134
Funded(Channel<SP>),
1135
+ #[cfg(splicing)]
1136
+ /// Used during splicing, channel is funded but a new funding is being renegotiated.
1137
+ RefundingV2(Channel<SP>),
1135
1138
}
1136
1139
1137
1140
impl<'a, SP: Deref> ChannelPhase<SP> where
@@ -1145,6 +1148,8 @@ impl<'a, SP: Deref> ChannelPhase<SP> where
1145
1148
ChannelPhase::UnfundedInboundV1(chan) => &chan.context,
1146
1149
ChannelPhase::UnfundedOutboundV2(chan) => &chan.context,
1147
1150
ChannelPhase::UnfundedInboundV2(chan) => &chan.context,
1151
+ #[cfg(splicing)]
1152
+ ChannelPhase::RefundingV2(chan) => &chan.context,
1148
1153
}
1149
1154
}
1150
1155
@@ -1155,6 +1160,26 @@ impl<'a, SP: Deref> ChannelPhase<SP> where
1155
1160
ChannelPhase::UnfundedInboundV1(ref mut chan) => &mut chan.context,
1156
1161
ChannelPhase::UnfundedOutboundV2(ref mut chan) => &mut chan.context,
1157
1162
ChannelPhase::UnfundedInboundV2(ref mut chan) => &mut chan.context,
1163
+ #[cfg(splicing)]
1164
+ ChannelPhase::RefundingV2(ref mut chan) => &mut chan.context,
1165
+ }
1166
+ }
1167
+
1168
+ pub fn funded_channel(&self) -> Option<&Channel<SP>> {
1169
+ match self {
1170
+ ChannelPhase::Funded(chan) => Some(&chan),
1171
+ #[cfg(splicing)]
1172
+ ChannelPhase::RefundingV2(chan) => Some(&chan),
1173
+ _ => None
1174
+ }
1175
+ }
1176
+
1177
+ pub fn funded_channel_mut(&mut self) -> Option<&mut Channel<SP>> {
1178
+ match self {
1179
+ ChannelPhase::Funded(ref mut chan) => Some(chan),
1180
+ #[cfg(splicing)]
1181
+ ChannelPhase::RefundingV2(ref mut chan) => Some(chan),
1182
+ _ => None
1158
1183
}
1159
1184
}
1160
1185
}
0 commit comments