Add new AddressIndex variants to Kotlin API docs
This commit is contained in:
		
							parent
							
								
									d42789db9b
								
							
						
					
					
						commit
						07aa1f8950
					
				| @ -35,21 +35,41 @@ data class AddressInfo ( | |||||||
| /** | /** | ||||||
|  * The address index selection strategy to use to derive an address from the wallet’s external descriptor. |  * The address index selection strategy to use to derive an address from the wallet’s external descriptor. | ||||||
|  * |  * | ||||||
|  * If you’re unsure which one to use, use `AddressIndex.NEW`. |  * If you’re unsure which one to use, use `AddressIndex.New`. | ||||||
|  * |  * | ||||||
|  * @sample org.bitcoindevkit.addressIndexSample |  * @sample org.bitcoindevkit.addressIndexSample | ||||||
|  */ |  */ | ||||||
| enum class AddressIndex { | sealed class AddressIndex { | ||||||
|     /** Return a new address after incrementing the current descriptor index. */ |     /** Return a new address after incrementing the current descriptor index. */ | ||||||
|     NEW, |     object New: AddressIndex(), | ||||||
| 
 | 
 | ||||||
|     /** Return the address for the current descriptor index if it has not been used in a received transaction. |     /** | ||||||
|  |      * Return the address for the current descriptor index if it has not been used in a received transaction. | ||||||
|      * Otherwise return a new address as with `AddressIndex.NEW`. Use with caution, if the wallet |      * Otherwise return a new address as with `AddressIndex.NEW`. Use with caution, if the wallet | ||||||
|      * has not yet detected an address has been used it could return an already used address. |      * has not yet detected an address has been used it could return an already used address. | ||||||
|      * This function is primarily meant for situations where the caller is untrusted; |      * This function is primarily meant for situations where the caller is untrusted; | ||||||
|      * for example when deriving donation addresses on-demand for a public web page. |      * for example when deriving donation addresses on-demand for a public web page. | ||||||
|      */ |      */ | ||||||
|     LAST_UNUSED, |     object LastUnused: AddressIndex(), | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * Return the address for a specific descriptor index. Does not change the current descriptor | ||||||
|  |      * index used by [AddressIndex.New] and [AddressIndex.LastUsed]. | ||||||
|  |      * Use with caution, if an index is given that is less than the current descriptor index | ||||||
|  |      * then the returned address may have already been used. | ||||||
|  |      */ | ||||||
|  |     data class Peek(val index: UInt): AddressIndex(), | ||||||
|  | 
 | ||||||
|  |     /** | ||||||
|  |      * Return the address for a specific descriptor index and reset the current descriptor index | ||||||
|  |      * used by [AddressIndex.New] and [AddressIndex.LastUsed] to this value. | ||||||
|  |      * Use with caution, if an index is given that is less than the current descriptor index | ||||||
|  |      * then the returned address and subsequent addresses returned by calls to [AddressIndex.New] | ||||||
|  |      * and [AddressIndex.LastUsed] may have already been used. Also if the index is reset to a | ||||||
|  |      * value earlier than the [Blockchain] stopGap (default is 20) then a | ||||||
|  |      * larger stopGap should be used to monitor for all possibly used addresses. | ||||||
|  |      */ | ||||||
|  |     data class Reset(val index: UInt): AddressIndex() | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
|  | |||||||
| @ -73,7 +73,11 @@ fun addressIndexSample() { | |||||||
|     ) |     ) | ||||||
| 
 | 
 | ||||||
|     fun getLastUnusedAddress(): AddressInfo { |     fun getLastUnusedAddress(): AddressInfo { | ||||||
|         return wallet.getAddress(AddressIndex.LAST_UNUSED) |         return wallet.getAddress(AddressIndex.LastUnused) | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     fun peekAddress100(): AddressInfo { | ||||||
|  |         return wallet.getAddress(AddressIndex.Peek(100u)) | ||||||
|     } |     } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -86,7 +90,7 @@ fun addressInfoSample() { | |||||||
|     ) |     ) | ||||||
| 
 | 
 | ||||||
|     fun getLastUnusedAddress(): AddressInfo { |     fun getLastUnusedAddress(): AddressInfo { | ||||||
|         return wallet.getAddress(AddressIndex.NEW) |         return wallet.getAddress(AddressIndex.New) | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     val newAddress: AddressInfo = getLastUnusedAddress() |     val newAddress: AddressInfo = getLastUnusedAddress() | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user