@@ -13,6 +13,7 @@ pub enum Network {
1313 BitcoinTestnet4 ,
1414 BitcoinPublicSignet ,
1515 BitcoinBitGoSignet ,
16+ BitcoinRegtest ,
1617
1718 // https://github.com/bitcoin-cash-node/bitcoin-cash-node/blob/master/src/validation.cpp
1819 // https://github.com/bitcoin-cash-node/bitcoin-cash-node/blob/master/src/chainparams.cpp
@@ -63,6 +64,7 @@ impl Network {
6364 Network :: BitcoinTestnet4 ,
6465 Network :: BitcoinPublicSignet ,
6566 Network :: BitcoinBitGoSignet ,
67+ Network :: BitcoinRegtest ,
6668 Network :: BitcoinCash ,
6769 Network :: BitcoinCashTestnet ,
6870 Network :: Ecash ,
@@ -89,6 +91,7 @@ impl Network {
8991 Network :: BitcoinTestnet4 => "BitcoinTestnet4" ,
9092 Network :: BitcoinPublicSignet => "BitcoinPublicSignet" ,
9193 Network :: BitcoinBitGoSignet => "BitcoinBitGoSignet" ,
94+ Network :: BitcoinRegtest => "BitcoinRegtest" ,
9295 Network :: BitcoinCash => "BitcoinCash" ,
9396 Network :: BitcoinCashTestnet => "BitcoinCashTestnet" ,
9497 Network :: Ecash => "Ecash" ,
@@ -115,6 +118,7 @@ impl Network {
115118 "BitcoinTestnet4" => Some ( Network :: BitcoinTestnet4 ) ,
116119 "BitcoinPublicSignet" => Some ( Network :: BitcoinPublicSignet ) ,
117120 "BitcoinBitGoSignet" => Some ( Network :: BitcoinBitGoSignet ) ,
121+ "BitcoinRegtest" => Some ( Network :: BitcoinRegtest ) ,
118122
119123 "BitcoinCash" => Some ( Network :: BitcoinCash ) ,
120124 "BitcoinCashTestnet" => Some ( Network :: BitcoinCashTestnet ) ,
@@ -154,6 +158,7 @@ impl Network {
154158 "bitcoinPublicSignet" => Some ( Network :: BitcoinPublicSignet ) ,
155159 "bitcoinTestnet4" => Some ( Network :: BitcoinTestnet4 ) ,
156160 "bitcoinBitGoSignet" => Some ( Network :: BitcoinBitGoSignet ) ,
161+ "bitcoinRegtest" => Some ( Network :: BitcoinRegtest ) ,
157162 "bitcoincash" => Some ( Network :: BitcoinCash ) ,
158163 "bitcoincashTestnet" => Some ( Network :: BitcoinCashTestnet ) ,
159164 "ecash" => Some ( Network :: Ecash ) ,
@@ -181,6 +186,7 @@ impl Network {
181186 Network :: BitcoinTestnet4 => "bitcoinTestnet4" ,
182187 Network :: BitcoinPublicSignet => "bitcoinPublicSignet" ,
183188 Network :: BitcoinBitGoSignet => "bitcoinBitGoSignet" ,
189+ Network :: BitcoinRegtest => "bitcoinRegtest" ,
184190 Network :: BitcoinCash => "bitcoincash" ,
185191 Network :: BitcoinCashTestnet => "bitcoincashTestnet" ,
186192 Network :: Ecash => "ecash" ,
@@ -208,6 +214,7 @@ impl Network {
208214 "tbtc4" => Some ( Network :: BitcoinTestnet4 ) ,
209215 "tbtcsig" => Some ( Network :: BitcoinPublicSignet ) ,
210216 "tbtcbgsig" => Some ( Network :: BitcoinBitGoSignet ) ,
217+ "tbtcreg" => Some ( Network :: BitcoinRegtest ) ,
211218 "bch" => Some ( Network :: BitcoinCash ) ,
212219 "tbch" => Some ( Network :: BitcoinCashTestnet ) ,
213220 "bcha" => Some ( Network :: Ecash ) ,
@@ -236,6 +243,7 @@ impl Network {
236243 Network :: BitcoinTestnet4 => "tbtc4" ,
237244 Network :: BitcoinPublicSignet => "tbtcsig" ,
238245 Network :: BitcoinBitGoSignet => "tbtcbgsig" ,
246+ Network :: BitcoinRegtest => "tbtcreg" ,
239247 Network :: BitcoinCash => "bch" ,
240248 Network :: BitcoinCashTestnet => "tbch" ,
241249 Network :: Ecash => "bcha" ,
@@ -261,7 +269,8 @@ impl Network {
261269 | Network :: BitcoinTestnet3
262270 | Network :: BitcoinTestnet4
263271 | Network :: BitcoinPublicSignet
264- | Network :: BitcoinBitGoSignet => Network :: Bitcoin ,
272+ | Network :: BitcoinBitGoSignet
273+ | Network :: BitcoinRegtest => Network :: Bitcoin ,
265274
266275 Network :: BitcoinCash => Network :: BitcoinCash ,
267276 Network :: BitcoinCashTestnet => Network :: BitcoinCash ,
@@ -306,6 +315,7 @@ impl Network {
306315 Network :: BitcoinTestnet4 => BitcoinNetwork :: Testnet ,
307316 Network :: BitcoinPublicSignet => BitcoinNetwork :: Signet ,
308317 Network :: BitcoinBitGoSignet => BitcoinNetwork :: Signet ,
318+ Network :: BitcoinRegtest => BitcoinNetwork :: Regtest ,
309319 // Non-Bitcoin networks - use Bitcoin mainnet/testnet based on whether they're mainnet
310320 _ => {
311321 if self . is_mainnet ( ) {
@@ -381,7 +391,7 @@ mod tests {
381391 #[ test]
382392 fn test_all_networks ( ) {
383393 // Verify ALL contains all networks
384- assert_eq ! ( Network :: ALL . len( ) , 21 ) ;
394+ assert_eq ! ( Network :: ALL . len( ) , 22 ) ;
385395
386396 // Verify no duplicates
387397 for ( i, network1) in Network :: ALL . iter ( ) . enumerate ( ) {
0 commit comments