Add missing kotlin files
This commit is contained in:
parent
8aa18fbf20
commit
8deb39ac76
1
.gitignore
vendored
1
.gitignore
vendored
@ -2,7 +2,6 @@ target
|
|||||||
build
|
build
|
||||||
Cargo.lock
|
Cargo.lock
|
||||||
*.h
|
*.h
|
||||||
main
|
|
||||||
/local.properties
|
/local.properties
|
||||||
.gradle
|
.gradle
|
||||||
wallet_db
|
wallet_db
|
||||||
|
76
jvm/src/main/java/org/bitcoindevkit/bdkjni/Lib.kt
Normal file
76
jvm/src/main/java/org/bitcoindevkit/bdkjni/Lib.kt
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
package org.bitcoindevkit.bdkjni
|
||||||
|
|
||||||
|
import com.sun.jna.*
|
||||||
|
import com.sun.jna.ptr.PointerByReference
|
||||||
|
|
||||||
|
// typedef struct {
|
||||||
|
//
|
||||||
|
// char * name;
|
||||||
|
//
|
||||||
|
// int32_t count;
|
||||||
|
//
|
||||||
|
// } Config_t;
|
||||||
|
//@Structure.FieldOrder("x", "y")
|
||||||
|
class Config_t : Structure() {
|
||||||
|
@JvmField
|
||||||
|
var name: String? = null
|
||||||
|
@JvmField
|
||||||
|
var count: NativeLong? = null
|
||||||
|
|
||||||
|
override fun getFieldOrder() = listOf("name", "count")
|
||||||
|
}
|
||||||
|
|
||||||
|
// typedef struct WalletPtr WalletPtr_t;
|
||||||
|
//class WalletPtr_t : PointerType()
|
||||||
|
|
||||||
|
interface Lib : Library {
|
||||||
|
|
||||||
|
// void print_string (
|
||||||
|
// char const * string);
|
||||||
|
fun print_string(name: String)
|
||||||
|
|
||||||
|
// char * concat_string (
|
||||||
|
// char const * fst,
|
||||||
|
// char const * snd);
|
||||||
|
fun concat_string(fst: String, snd: String): String
|
||||||
|
|
||||||
|
// void free_string (
|
||||||
|
// char * string);
|
||||||
|
fun free_string(string: String)
|
||||||
|
|
||||||
|
// void print_int (
|
||||||
|
// int64_t number);
|
||||||
|
fun print_int(number: Int)
|
||||||
|
|
||||||
|
// void print_config (
|
||||||
|
// Config_t const * config);
|
||||||
|
fun print_config(config: Config_t)
|
||||||
|
|
||||||
|
// Config_t new_config (
|
||||||
|
// char * name,
|
||||||
|
// int32_t count);
|
||||||
|
fun new_config(name: String, count: NativeLong): Config_t
|
||||||
|
|
||||||
|
// void free_config (
|
||||||
|
// Config_t * config);
|
||||||
|
fun free_config(config: Config_t)
|
||||||
|
|
||||||
|
// WalletPtr_t * new_wallet (
|
||||||
|
// char const * name,
|
||||||
|
// char const * descriptor,
|
||||||
|
// char const * change_descriptor);
|
||||||
|
//fun new_wallet(name: String, descriptor: String, changeDescriptor: String?): WalletPtr_t
|
||||||
|
|
||||||
|
// void sync_wallet (
|
||||||
|
// WalletPtr_t * const * wallet);
|
||||||
|
//fun sync_wallet(wallet: WalletPtr_t)
|
||||||
|
//fun sync_wallet(wallet: WalletPtr_t)
|
||||||
|
|
||||||
|
// char * new_address (
|
||||||
|
// WalletPtr_t * const * wallet);
|
||||||
|
//fun new_address(wallet: WalletPtr_t): String
|
||||||
|
|
||||||
|
// void free_wallet (
|
||||||
|
// WalletPtr_t * wallet);
|
||||||
|
//fun free_wallet(wallet: WalletPtr_t)
|
||||||
|
}
|
@ -2,6 +2,8 @@ package org.bitcoindevkit.bdkjni
|
|||||||
|
|
||||||
import com.sun.jna.Native
|
import com.sun.jna.Native
|
||||||
import com.sun.jna.NativeLong
|
import com.sun.jna.NativeLong
|
||||||
|
import com.sun.jna.Pointer
|
||||||
|
import com.sun.jna.ptr.PointerByReference
|
||||||
import org.junit.Test
|
import org.junit.Test
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -40,4 +42,27 @@ class LibTest {
|
|||||||
lib.print_config(config)
|
lib.print_config(config)
|
||||||
lib.free_config(config)
|
lib.free_config(config)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Test
|
||||||
|
// fun new_sync_free_wallet() {
|
||||||
|
// val name = "test_wallet"
|
||||||
|
// val desc = "wpkh([c258d2e4/84h/1h/0h]tpubDDYkZojQFQjht8Tm4jsS3iuEmKjTiEGjG6KnuFNKKJb5A6ZUCUZKdvLdSDWofKi4ToRCwb9poe1XdqfUnP4jaJjCB2Zwv11ZLgSbnZSNecE/0/*)"
|
||||||
|
// val change = "wpkh([c258d2e4/84h/1h/0h]tpubDDYkZojQFQjht8Tm4jsS3iuEmKjTiEGjG6KnuFNKKJb5A6ZUCUZKdvLdSDWofKi4ToRCwb9poe1XdqfUnP4jaJjCB2Zwv11ZLgSbnZSNecE/1/*)"
|
||||||
|
//
|
||||||
|
// val wallet = lib.new_wallet(name, desc, change)
|
||||||
|
// println("wallet created in kotlin: $wallet")
|
||||||
|
// lib.sync_wallet(wallet)
|
||||||
|
// //lib.free_wallet(wallet)
|
||||||
|
// }
|
||||||
|
|
||||||
|
// @Test
|
||||||
|
// fun new_newaddress_wallet() {
|
||||||
|
// val name = "test_wallet"
|
||||||
|
// val desc = "wpkh([c258d2e4/84h/1h/0h]tpubDDYkZojQFQjht8Tm4jsS3iuEmKjTiEGjG6KnuFNKKJb5A6ZUCUZKdvLdSDWofKi4ToRCwb9poe1XdqfUnP4jaJjCB2Zwv11ZLgSbnZSNecE/0/*)"
|
||||||
|
// val change = "wpkh([c258d2e4/84h/1h/0h]tpubDDYkZojQFQjht8Tm4jsS3iuEmKjTiEGjG6KnuFNKKJb5A6ZUCUZKdvLdSDWofKi4ToRCwb9poe1XdqfUnP4jaJjCB2Zwv11ZLgSbnZSNecE/1/*)"
|
||||||
|
//
|
||||||
|
// val config = lib.new_config("test test", NativeLong(Long.MAX_VALUE))
|
||||||
|
// lib.print_config(config)
|
||||||
|
// lib.free_config(config)
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user