diff --git a/lib/swig/LibskycoinNet/LibskycoinNet.csproj b/lib/swig/LibskycoinNet/LibskycoinNet.csproj index 8e03e096..9a080998 100644 --- a/lib/swig/LibskycoinNet/LibskycoinNet.csproj +++ b/lib/swig/LibskycoinNet/LibskycoinNet.csproj @@ -141,6 +141,17 @@ + + + + + + + + + + + diff --git a/lib/swig/swig/csharp_typemap.i b/lib/swig/swig/csharp_typemap.i index 234a08f1..e9fd1e41 100644 --- a/lib/swig/swig/csharp_typemap.i +++ b/lib/swig/swig/csharp_typemap.i @@ -18,6 +18,34 @@ %pointer_functions(BlockHeader__Handle,BlockHeader__HandlePtr); %pointer_functions(Signature_Handle,Signature_HandlePtr); %pointer_functions(Number_Handle,Number_HandlePtr); +%pointer_functions(WebRpcClient__Handle,WebRpcClient_HandlePtr); +%pointer_functions(Wallet__Handle,Wallet__HandlePtr); +%pointer_functions(ReadableWallet__Handle,ReadableWallet__HandlePtr); +%pointer_functions(ReadableEntry__Handle,ReadableEntry__HandlePtr); +%pointer_functions(Options__Handle,Options__HandlePtr); +%pointer_functions(Config__Handle,Config__HandlePtr); +%pointer_functions(CLI__Handle,CLI__HandlePtr); +%pointer_functions(Client__Handle,Client__HandlePtr); +%pointer_functions(WalletResponse__Handle,WalletResponse__HandlePtr); +%pointer_functions(CreateTransactionRequest__Handle,CreateTransactionRequest__HandlePtr); +%pointer_functions(Strings__Handle,Strings__HandlePtr); +%pointer_functions(Wallets__Handle,Wallets__HandlePtr); +%pointer_functions(ReadableOutputSet_Handle,ReadableOutputSet_HandlePtr); +%pointer_functions(CreateTransactionParams__Handle,CreateTransactionParams__HandlePtr); +%pointer_functions(CreatedTransaction__Handle,CreatedTransaction__HandlePtr); +%pointer_functions(CreatedTransactionOutput__Handle,CreatedTransactionOutput__HandlePtr); +%pointer_functions(CreatedTransactionInput__Handle,CreatedTransactionInput__HandlePtr); +%pointer_functions(CreateTransactionResponse__Handle,CreateTransactionResponse__HandlePtr); +%pointer_functions(SignedBlock__Handle,SignedBlock__HandlePtr); +%pointer_functions(SortableTransactionResult_Handle,SortableTransactionResult_HandlePtr); +%pointer_functions(WalletReadableNotes_Handle,WalletReadableNotes_HandlePtr); +%pointer_functions(OutputsResult_Handle,OutputsResult_HandlePtr); +%pointer_functions(StatusResult_Handle,StatusResult_HandlePtr); +%pointer_functions(AddressUxOuts_Handle,AddressUxOuts_HandlePtr); +%pointer_functions(BuildInfo_Handle,BuildInfo_HandlePtr); +%pointer_functions(ReadableUnspentOutputsSummary_Handle,ReadableUnspentOutputsSummary_HandlePtr); +%pointer_functions(Hash_Handle,Hash_HandlePtr); +%pointer_functions(UnspentOutputsSummary_Handle,UnspentOutputsSummary_HandlePtr); %pointer_functions(unsigned char, CharPtr); %pointer_functions(FeeCalculator, FeeCalculatorPtr); %pointer_functions(FeeCalcFunc, FeeCalcFuncPtr); diff --git a/skycoinnet_wrap.c b/skycoinnet_wrap.c index 5977e96f..727443c0 100644 --- a/skycoinnet_wrap.c +++ b/skycoinnet_wrap.c @@ -751,2684 +751,5232 @@ static Number_Handle Number_HandlePtr_value(Number_Handle *obj) { } -static unsigned char *new_CharPtr() { - return (unsigned char *) calloc(1,sizeof(unsigned char)); +static WebRpcClient__Handle *new_WebRpcClient_HandlePtr() { + return (WebRpcClient__Handle *) calloc(1,sizeof(WebRpcClient__Handle)); } -static unsigned char *copy_CharPtr(unsigned char value) { - unsigned char *obj = (unsigned char *) calloc(1,sizeof(unsigned char)); +static WebRpcClient__Handle *copy_WebRpcClient_HandlePtr(WebRpcClient__Handle value) { + WebRpcClient__Handle *obj = (WebRpcClient__Handle *) calloc(1,sizeof(WebRpcClient__Handle)); *obj = value; return obj; } -static void delete_CharPtr(unsigned char *obj) { +static void delete_WebRpcClient_HandlePtr(WebRpcClient__Handle *obj) { if (obj) free(obj); } -static void CharPtr_assign(unsigned char *obj, unsigned char value) { +static void WebRpcClient_HandlePtr_assign(WebRpcClient__Handle *obj, WebRpcClient__Handle value) { *obj = value; } -static unsigned char CharPtr_value(unsigned char *obj) { +static WebRpcClient__Handle WebRpcClient_HandlePtr_value(WebRpcClient__Handle *obj) { return *obj; } -static FeeCalculator *new_FeeCalculatorPtr() { - return (FeeCalculator *) calloc(1,sizeof(FeeCalculator)); +static Wallet__Handle *new_Wallet__HandlePtr() { + return (Wallet__Handle *) calloc(1,sizeof(Wallet__Handle)); } -static FeeCalculator *copy_FeeCalculatorPtr(FeeCalculator value) { - FeeCalculator *obj = (FeeCalculator *) calloc(1,sizeof(FeeCalculator)); +static Wallet__Handle *copy_Wallet__HandlePtr(Wallet__Handle value) { + Wallet__Handle *obj = (Wallet__Handle *) calloc(1,sizeof(Wallet__Handle)); *obj = value; return obj; } -static void delete_FeeCalculatorPtr(FeeCalculator *obj) { +static void delete_Wallet__HandlePtr(Wallet__Handle *obj) { if (obj) free(obj); } -static void FeeCalculatorPtr_assign(FeeCalculator *obj, FeeCalculator value) { +static void Wallet__HandlePtr_assign(Wallet__Handle *obj, Wallet__Handle value) { *obj = value; } -static FeeCalculator FeeCalculatorPtr_value(FeeCalculator *obj) { +static Wallet__Handle Wallet__HandlePtr_value(Wallet__Handle *obj) { return *obj; } -static FeeCalcFunc *new_FeeCalcFuncPtr() { - return (FeeCalcFunc *) calloc(1,sizeof(FeeCalcFunc)); +static ReadableWallet__Handle *new_ReadableWallet__HandlePtr() { + return (ReadableWallet__Handle *) calloc(1,sizeof(ReadableWallet__Handle)); } -static FeeCalcFunc *copy_FeeCalcFuncPtr(FeeCalcFunc value) { - FeeCalcFunc *obj = (FeeCalcFunc *) calloc(1,sizeof(FeeCalcFunc)); +static ReadableWallet__Handle *copy_ReadableWallet__HandlePtr(ReadableWallet__Handle value) { + ReadableWallet__Handle *obj = (ReadableWallet__Handle *) calloc(1,sizeof(ReadableWallet__Handle)); *obj = value; return obj; } -static void delete_FeeCalcFuncPtr(FeeCalcFunc *obj) { +static void delete_ReadableWallet__HandlePtr(ReadableWallet__Handle *obj) { if (obj) free(obj); } -static void FeeCalcFuncPtr_assign(FeeCalcFunc *obj, FeeCalcFunc value) { +static void ReadableWallet__HandlePtr_assign(ReadableWallet__Handle *obj, ReadableWallet__Handle value) { *obj = value; } -static FeeCalcFunc FeeCalcFuncPtr_value(FeeCalcFunc *obj) { +static ReadableWallet__Handle ReadableWallet__HandlePtr_value(ReadableWallet__Handle *obj) { return *obj; } -static coin__Block* *new_coin__BlockPtr() { - return (coin__Block* *) calloc(1,sizeof(coin__Block*)); +static ReadableEntry__Handle *new_ReadableEntry__HandlePtr() { + return (ReadableEntry__Handle *) calloc(1,sizeof(ReadableEntry__Handle)); } -static coin__Block* *copy_coin__BlockPtr(coin__Block* value) { - coin__Block* *obj = (coin__Block* *) calloc(1,sizeof(coin__Block*)); +static ReadableEntry__Handle *copy_ReadableEntry__HandlePtr(ReadableEntry__Handle value) { + ReadableEntry__Handle *obj = (ReadableEntry__Handle *) calloc(1,sizeof(ReadableEntry__Handle)); *obj = value; return obj; } -static void delete_coin__BlockPtr(coin__Block* *obj) { +static void delete_ReadableEntry__HandlePtr(ReadableEntry__Handle *obj) { if (obj) free(obj); } -static void coin__BlockPtr_assign(coin__Block* *obj, coin__Block* value) { +static void ReadableEntry__HandlePtr_assign(ReadableEntry__Handle *obj, ReadableEntry__Handle value) { *obj = value; } -static coin__Block* coin__BlockPtr_value(coin__Block* *obj) { +static ReadableEntry__Handle ReadableEntry__HandlePtr_value(ReadableEntry__Handle *obj) { return *obj; } -#include "json.h" - //Define function SKY_handle_close to avoid including libskycoin.h - void SKY_handle_close(Handle p0); +static Options__Handle *new_Options__HandlePtr() { + return (Options__Handle *) calloc(1,sizeof(Options__Handle)); +} - GoUint32_ zeroFeeCalculator(Transaction__Handle handle, GoUint64_ *pFee, void* context){ - *pFee = 0; - return 0; +static Options__Handle *copy_Options__HandlePtr(Options__Handle value) { + Options__Handle *obj = (Options__Handle *) calloc(1,sizeof(Options__Handle)); + *obj = value; + return obj; } - GoUint32_ calcFeeCalculator(Transaction__Handle handle, GoUint64_ *pFee, void* context){ - *pFee = 1; - return 0; +static void delete_Options__HandlePtr(Options__Handle *obj) { + if (obj) free(obj); } - GoUint32_ fix121FeeCalculator(Transaction__Handle handle, GoUint64_ *pFee, void* context){ - *pFee = 121; - return 0; +static void Options__HandlePtr_assign(Options__Handle *obj, Options__Handle value) { + *obj = value; } - GoUint32_ badFeeCalculator(Transaction__Handle handle, GoUint64_ *pFee, void* context){ - return 0x7FFFFFFF; +static Options__Handle Options__HandlePtr_value(Options__Handle *obj) { + return *obj; } -GoUint32_ overflowFeeCalculator(Transaction__Handle handle, GoUint64_ *pFee, void *context) -{ - *pFee = 0xFFFFFFFFFFFFFFFF; - return 0; + +static Config__Handle *new_Config__HandlePtr() { + return (Config__Handle *) calloc(1,sizeof(Config__Handle)); } -FeeCalculator feeCalc(){ - FeeCalculator feeCalc = {zeroFeeCalculator, NULL}; - return feeCalc; +static Config__Handle *copy_Config__HandlePtr(Config__Handle value) { + Config__Handle *obj = (Config__Handle *) calloc(1,sizeof(Config__Handle)); + *obj = value; + return obj; } -FeeCalculator fix121(){ - FeeCalculator feeCalc = {fix121FeeCalculator, NULL}; - return feeCalc; +static void delete_Config__HandlePtr(Config__Handle *obj) { + if (obj) free(obj); } -FeeCalculator badCalc(){ - FeeCalculator feeCalc = {badFeeCalculator, NULL}; - return feeCalc; +static void Config__HandlePtr_assign(Config__Handle *obj, Config__Handle value) { + *obj = value; } -FeeCalculator calcCalc(){ - FeeCalculator feeCalc = {calcFeeCalculator, NULL}; - return feeCalc; +static Config__Handle Config__HandlePtr_value(Config__Handle *obj) { + return *obj; } -FeeCalculator overflow(){ - FeeCalculator feeCalc = {overflowFeeCalculator, NULL}; - return feeCalc; + +static CLI__Handle *new_CLI__HandlePtr() { + return (CLI__Handle *) calloc(1,sizeof(CLI__Handle)); } - int MEMPOOLIDX = 0; - void *MEMPOOL[1024 * 256]; - int JSONPOOLIDX = 0; - json_value *JSON_POOL[128]; +static CLI__Handle *copy_CLI__HandlePtr(CLI__Handle value) { + CLI__Handle *obj = (CLI__Handle *) calloc(1,sizeof(CLI__Handle)); + *obj = value; + return obj; +} - int HANDLEPOOLIDX = 0; - Handle HANDLE_POOL[128]; +static void delete_CLI__HandlePtr(CLI__Handle *obj) { + if (obj) free(obj); +} - typedef struct - { - Client__Handle client; - WalletResponse__Handle wallet; - } wallet_register; +static void CLI__HandlePtr_assign(CLI__Handle *obj, CLI__Handle value) { + *obj = value; +} - int WALLETPOOLIDX = 0; - wallet_register WALLET_POOL[64]; +static CLI__Handle CLI__HandlePtr_value(CLI__Handle *obj) { + return *obj; +} - int stdout_backup; - int pipefd[2]; - void *registerMemCleanup(void *p) - { - int i; - for (i = 0; i < MEMPOOLIDX; i++) - { - if (MEMPOOL[i] == NULL) - { - MEMPOOL[i] = p; - return p; - } - } - MEMPOOL[MEMPOOLIDX++] = p; - return p; - } +static Client__Handle *new_Client__HandlePtr() { + return (Client__Handle *) calloc(1,sizeof(Client__Handle)); +} - void freeRegisteredMemCleanup(void *p) - { - int i; - for (i = 0; i < MEMPOOLIDX; i++) - { - if (MEMPOOL[i] == p) - { - free(p); - MEMPOOL[i] = NULL; - break; - } - } - } +static Client__Handle *copy_Client__HandlePtr(Client__Handle value) { + Client__Handle *obj = (Client__Handle *) calloc(1,sizeof(Client__Handle)); + *obj = value; + return obj; +} - int registerJsonFree(void *p) - { - int i; - for (i = 0; i < JSONPOOLIDX; i++) - { - if (JSON_POOL[i] == NULL) - { - JSON_POOL[i] = p; - return i; - } - } - JSON_POOL[JSONPOOLIDX++] = p; - return JSONPOOLIDX - 1; - } +static void delete_Client__HandlePtr(Client__Handle *obj) { + if (obj) free(obj); +} +static void Client__HandlePtr_assign(Client__Handle *obj, Client__Handle value) { + *obj = value; +} +static Client__Handle Client__HandlePtr_value(Client__Handle *obj) { + return *obj; +} - int registerWalletClean(Client__Handle clientHandle, - WalletResponse__Handle walletHandle) - { - int i; - for (i = 0; i < WALLETPOOLIDX; i++) - { - if (WALLET_POOL[i].wallet == 0 && WALLET_POOL[i].client == 0) - { - WALLET_POOL[i].wallet = walletHandle; - WALLET_POOL[i].client = clientHandle; - return i; - } - } - WALLET_POOL[WALLETPOOLIDX].wallet = walletHandle; - WALLET_POOL[WALLETPOOLIDX].client = clientHandle; - return WALLETPOOLIDX++; - } - int registerHandleClose(Handle handle) - { - int i; - for (i = 0; i < HANDLEPOOLIDX; i++) - { - if (HANDLE_POOL[i] == 0) - { - HANDLE_POOL[i] = handle; - return i; - } - } - HANDLE_POOL[HANDLEPOOLIDX++] = handle; - return HANDLEPOOLIDX - 1; - } +static WalletResponse__Handle *new_WalletResponse__HandlePtr() { + return (WalletResponse__Handle *) calloc(1,sizeof(WalletResponse__Handle)); +} - void closeRegisteredHandle(Handle handle) - { - int i; - for (i = 0; i < HANDLEPOOLIDX; i++) - { - if (HANDLE_POOL[i] == handle) - { - HANDLE_POOL[i] = 0; - SKY_handle_close(handle); - break; - } - } - } -#include -#include -#include -#include -#include - void cleanupWallet(Client__Handle client, WalletResponse__Handle wallet) - { - int result; - GoString_ strWalletDir; - GoString_ strFileName; - memset(&strWalletDir, 0, sizeof(GoString_)); - memset(&strFileName, 0, sizeof(GoString_)); +static WalletResponse__Handle *copy_WalletResponse__HandlePtr(WalletResponse__Handle value) { + WalletResponse__Handle *obj = (WalletResponse__Handle *) calloc(1,sizeof(WalletResponse__Handle)); + *obj = value; + return obj; +} - result = SKY_api_Handle_Client_GetWalletDir(client, &strWalletDir); - if (result != 0) - { - return; - } - result = SKY_api_Handle_Client_GetWalletFileName(wallet, &strFileName); - if (result != 0) - { - free((void *)strWalletDir.p); - return; - } - char fullPath[128]; - if (strWalletDir.n + strFileName.n < 126) - { - strcpy(fullPath, strWalletDir.p); - if (fullPath[0] == 0 || fullPath[strlen(fullPath) - 1] != '/') - strcat(fullPath, "/"); - strcat(fullPath, strFileName.p); - result = unlink(fullPath); - if (strlen(fullPath) < 123) - { - strcat(fullPath, ".bak"); - result = unlink(fullPath); - } - } - GoString str = {strFileName.p, strFileName.n}; - result = SKY_api_Client_UnloadWallet(client, str); - GoString strFullPath = {fullPath, strlen(fullPath)}; - free((void *)strWalletDir.p); - free((void *)strFileName.p); - } +static void delete_WalletResponse__HandlePtr(WalletResponse__Handle *obj) { + if (obj) free(obj); +} - void cleanRegisteredWallet( - Client__Handle client, - WalletResponse__Handle wallet) - { +static void WalletResponse__HandlePtr_assign(WalletResponse__Handle *obj, WalletResponse__Handle value) { + *obj = value; +} - int i; - for (i = 0; i < WALLETPOOLIDX; i++) - { - if (WALLET_POOL[i].wallet == wallet && WALLET_POOL[i].client == client) - { - WALLET_POOL[i].wallet = 0; - WALLET_POOL[i].client = 0; - cleanupWallet(client, wallet); - return; - } - } - } +static WalletResponse__Handle WalletResponse__HandlePtr_value(WalletResponse__Handle *obj) { + return *obj; +} - void setup(void) - { - srand((unsigned int)time(NULL)); - } +static CreateTransactionRequest__Handle *new_CreateTransactionRequest__HandlePtr() { + return (CreateTransactionRequest__Handle *) calloc(1,sizeof(CreateTransactionRequest__Handle)); +} - // TODO: Move to libsky_io.c - void fprintbuff(FILE * f, void *buff, size_t n) - { - unsigned char *ptr = (unsigned char *)buff; - fprintf(f, "[ "); - for (; n; --n, ptr++) - { - fprintf(f, "%02d ", *ptr); - } - fprintf(f, "]"); - } +static CreateTransactionRequest__Handle *copy_CreateTransactionRequest__HandlePtr(CreateTransactionRequest__Handle value) { + CreateTransactionRequest__Handle *obj = (CreateTransactionRequest__Handle *) calloc(1,sizeof(CreateTransactionRequest__Handle)); + *obj = value; + return obj; +} - int parseBoolean(const char *str, int length) - { - int result = 0; - if (length == 1) - { - result = str[0] == '1' || str[0] == 't' || str[0] == 'T'; - } - else - { - result = strncmp(str, "true", length) == 0 || - strncmp(str, "True", length) == 0 || - strncmp(str, "TRUE", length) == 0; - } - return result; - } +static void delete_CreateTransactionRequest__HandlePtr(CreateTransactionRequest__Handle *obj) { + if (obj) free(obj); +} - void toGoString(GoString_ * s, GoString * r) - { - GoString *tmp = r; +static void CreateTransactionRequest__HandlePtr_assign(CreateTransactionRequest__Handle *obj, CreateTransactionRequest__Handle value) { + *obj = value; +} - *tmp = (*(GoString *)s); - } +static CreateTransactionRequest__Handle CreateTransactionRequest__HandlePtr_value(CreateTransactionRequest__Handle *obj) { + return *obj; +} - int copySlice(GoSlice_ * pdest, GoSlice_ * psource, int elem_size) - { - pdest->len = psource->len; - pdest->cap = psource->len; - int size = pdest->len * elem_size; - pdest->data = malloc(size); - if (pdest->data == NULL) - return 1; - registerMemCleanup(pdest->data); - memcpy(pdest->data, psource->data, size); - return 0; - } - int concatSlices(GoSlice_ * slice1, GoSlice_ * slice2, int elem_size, GoSlice_ *result) - { - int size1 = slice1->len; - int size2 = slice2->len; - int size = size1 + size2; - if (size <= 0) - return 1; - void *data = malloc(size * elem_size); - if (data == NULL) - return 1; - registerMemCleanup(data); - result->data = data; - result->len = size; - result->cap = size; - char *p = data; - if (size1 > 0) - { - memcpy(p, slice1->data, size1 * elem_size); - p += (elem_size * size1); - } - if (size2 > 0) - { - memcpy(p, slice2->data, size2 * elem_size); - } - return 0; - } - void parseJsonMetaData(char *metadata, long long *n, long long *r, long long *p, long long *keyLen) - { - *n = *r = *p = *keyLen = 0; - int length = strlen(metadata); - int openingQuote = -1; - const char *keys[] = {"n", "r", "p", "keyLen"}; - int keysCount = 4; - int keyIndex = -1; - int startNumber = -1; - int i; - int k; - for (i = 0; i < length; i++) - { - if (metadata[i] == '\"') - { - startNumber = -1; - if (openingQuote >= 0) - { - keyIndex = -1; - metadata[i] = 0; - for (k = 0; k < keysCount; k++) - { - if (strcmp(metadata + openingQuote + 1, keys[k]) == 0) - { - keyIndex = k; - } - } - openingQuote = -1; - } - else - { - openingQuote = i; - } - } - else if (metadata[i] >= '0' && metadata[i] <= '9') - { - if (startNumber < 0) - startNumber = i; - } - else if (metadata[i] == ',') - { - if (startNumber >= 0) - { - metadata[i] = 0; - int number = atoi(metadata + startNumber); - startNumber = -1; - if (keyIndex == 0) - *n = number; - else if (keyIndex == 1) - *r = number; - else if (keyIndex == 2) - *p = number; - else if (keyIndex == 3) - *keyLen = number; - } - } - else - { - startNumber = -1; - } - } - } +static Strings__Handle *new_Strings__HandlePtr() { + return (Strings__Handle *) calloc(1,sizeof(Strings__Handle)); +} - int cutSlice(GoSlice_ * slice, int start, int end, int elem_size, GoSlice_ *result) - { - int size = end - start; - if (size <= 0) - return 1; - void *data = malloc(size * elem_size); - if (data == NULL) - return 1; - registerMemCleanup(data); - result->data = data; - result->len = size; - result->cap = size; - char *p = slice->data; - p += (elem_size * start); - memcpy(data, p, elem_size * size); - return 0; - } +static Strings__Handle *copy_Strings__HandlePtr(Strings__Handle value) { + Strings__Handle *obj = (Strings__Handle *) calloc(1,sizeof(Strings__Handle)); + *obj = value; + return obj; +} - coin__Transaction *makeEmptyTransaction(Transaction__Handle * handle) - { - int result; - coin__Transaction *ptransaction = NULL; - result = SKY_coin_Create_Transaction(handle); - registerHandleClose(*handle); - result = SKY_coin_GetTransactionObject(*handle, &ptransaction); - return ptransaction; - } - int makeUxBodyWithSecret(coin__UxBody * puxBody, cipher__SecKey * pseckey) - { - cipher__PubKey pubkey; - cipher__Address address; - int result; +static void delete_Strings__HandlePtr(Strings__Handle *obj) { + if (obj) free(obj); +} - memset(puxBody, 0, sizeof(coin__UxBody)); - puxBody->Coins = 1000000; - puxBody->Hours = 100; +static void Strings__HandlePtr_assign(Strings__Handle *obj, Strings__Handle value) { + *obj = value; +} - result = SKY_cipher_GenerateKeyPair(&pubkey, pseckey); - if (result != 0) - { - return 1; - } +static Strings__Handle Strings__HandlePtr_value(Strings__Handle *obj) { + return *obj; +} - GoSlice slice; - memset(&slice, 0, sizeof(GoSlice)); - cipher__SHA256 hash; - result = SKY_cipher_RandByte(128, (coin__UxArray *)&slice); - registerMemCleanup(slice.data); - if (result != 0) - { - return 1; - } - result = SKY_cipher_SumSHA256(slice, &puxBody->SrcTransaction); - if (result != 0) - { - return 1; - } +static Wallets__Handle *new_Wallets__HandlePtr() { + return (Wallets__Handle *) calloc(1,sizeof(Wallets__Handle)); +} - result = SKY_cipher_AddressFromPubKey(&pubkey, &puxBody->Address); - if (result != 0) - { - return 1; - } - return result; - } - int makeUxOutWithSecret(coin__UxOut * puxOut, cipher__SecKey * pseckey) - { - int result; - memset(puxOut, 0, sizeof(coin__UxOut)); - result = makeUxBodyWithSecret(&puxOut->Body, pseckey); - puxOut->Head.Time = 100; - puxOut->Head.BkSeq = 2; - return result; - } - int makeUxOut(coin__UxOut * puxOut) - { - cipher__SecKey seckey; - return makeUxOutWithSecret(puxOut, &seckey); - } - int makeUxArray(coin_UxOutArray * parray, int n) - { - parray->data = malloc(sizeof(coin__UxOut) * n); - if (!parray->data) - return 1; - registerMemCleanup(parray->data); - parray->count = parray->count = n; - coin__UxOut *p = (coin__UxOut *)parray->data; - int result = 0; - int i; - for (i = 0; i < n; i++) - { - result = makeUxOut(p); - if (result != 0) - break; - p++; - } - return result; - } - int makeAddress(cipher__Address * paddress) - { - cipher__PubKey pubkey; - cipher__SecKey seckey; - cipher__Address address; - int result; +static Wallets__Handle *copy_Wallets__HandlePtr(Wallets__Handle value) { + Wallets__Handle *obj = (Wallets__Handle *) calloc(1,sizeof(Wallets__Handle)); + *obj = value; + return obj; +} - result = SKY_cipher_GenerateKeyPair(&pubkey, &seckey); - if (result != 0) - return 1; +static void delete_Wallets__HandlePtr(Wallets__Handle *obj) { + if (obj) free(obj); +} - result = SKY_cipher_AddressFromPubKey(&pubkey, paddress); - if (result != 0) - return 1; - return result; - } - coin__Transaction *makeTransactionFromUxOut(coin__UxOut * puxOut, cipher__SecKey * pseckey, Transaction__Handle * handle) - { - int result; - coin__Transaction *ptransaction = NULL; - result = SKY_coin_Create_Transaction(handle); - // cr_assert(result == SKY_OK, "SKY_coin_Create_Transaction failed"); - registerHandleClose(*handle); - result = SKY_coin_GetTransactionObject(*handle, &ptransaction); - // cr_assert(result == SKY_OK, "SKY_coin_GetTransactionObject failed"); - cipher__SHA256 sha256; - result = SKY_coin_UxOut_Hash(puxOut, &sha256); - // cr_assert(result == SKY_OK, "SKY_coin_UxOut_Hash failed"); - GoUint16 r; - r = SKY_coin_Transaction_PushInput(*handle, &sha256); +static void Wallets__HandlePtr_assign(Wallets__Handle *obj, Wallets__Handle value) { + *obj = value; +} - cipher__Address address1, address2; - result = makeAddress(&address1); - // cr_assert(result == SKY_OK, "makeAddress failed"); - result = makeAddress(&address2); - // cr_assert(result == SKY_OK, "makeAddress failed"); +static Wallets__Handle Wallets__HandlePtr_value(Wallets__Handle *obj) { + return *obj; +} - result = SKY_coin_Transaction_PushOutput(*handle, &address1, 1000000, 50); - // cr_assert(result == SKY_OK, "SKY_coin_Transaction_PushOutput failed"); - result = SKY_coin_Transaction_PushOutput(*handle, &address2, 5000000, 50); - // cr_assert(result == SKY_OK, "SKY_coin_Transaction_PushOutput failed"); - GoSlice secKeys = {pseckey, 1, 1}; - result = SKY_coin_Transaction_SignInputs(*handle, secKeys); - // cr_assert(result == SKY_OK, "SKY_coin_Transaction_SignInputs failed"); - result = SKY_coin_Transaction_UpdateHeader(*handle); - // cr_assert(result == SKY_OK, "SKY_coin_Transaction_UpdateHeader failed"); - return ptransaction; - } +static ReadableOutputSet_Handle *new_ReadableOutputSet_HandlePtr() { + return (ReadableOutputSet_Handle *) calloc(1,sizeof(ReadableOutputSet_Handle)); +} - coin__Transaction *makeTransaction(Transaction__Handle * handle) - { - int result; - coin__UxOut uxOut; - cipher__SecKey seckey; - coin__Transaction *ptransaction = NULL; - result = makeUxOutWithSecret(&uxOut, &seckey); - ptransaction = makeTransactionFromUxOut(&uxOut, &seckey, handle); - return ptransaction; - } +static ReadableOutputSet_Handle *copy_ReadableOutputSet_HandlePtr(ReadableOutputSet_Handle value) { + ReadableOutputSet_Handle *obj = (ReadableOutputSet_Handle *) calloc(1,sizeof(ReadableOutputSet_Handle)); + *obj = value; + return obj; +} - int makeTransactions(int n, Transactions__Handle *handle) - { - int result = SKY_coin_Create_Transactions(handle); - if (result != 0) - return 1; - registerHandleClose(*handle); - int i; - for (i = 0; i < n; i++) - { - Transaction__Handle thandle; - makeTransaction(&thandle); - registerHandleClose(thandle); - result = SKY_coin_Transactions_Add(*handle, thandle); - if (result != 0) - return 1; - } - return result; - } +static void delete_ReadableOutputSet_HandlePtr(ReadableOutputSet_Handle *obj) { + if (obj) free(obj); +} - // Base 64 +static void ReadableOutputSet_HandlePtr_assign(ReadableOutputSet_Handle *obj, ReadableOutputSet_Handle value) { + *obj = value; +} - int b64_int(unsigned int ch) - { - if (ch == 43) - return 62; - if (ch == 47) - return 63; - if (ch == 61) - return 64; - if ((ch > 47) && (ch < 58)) - return ch + 4; - if ((ch > 64) && (ch < 91)) - return ch - 'A'; - if ((ch > 96) && (ch < 123)) - return (ch - 'a') + 26; - return -1; - } +static ReadableOutputSet_Handle ReadableOutputSet_HandlePtr_value(ReadableOutputSet_Handle *obj) { + return *obj; +} - int b64_decode(const unsigned char *in, unsigned int in_len, unsigned char *out) - { - unsigned int i = 0, j = 0, k = 0, s[4]; - for (i = 0; i < in_len; i++) - { - int n = b64_int(*(in + i)); - if (n < 0) - return -1; - s[j++] = n; - if (j == 4) - { - out[k + 0] = ((s[0] & 255) << 2) + ((s[1] & 0x30) >> 4); - if (s[2] != 64) - { - out[k + 1] = ((s[1] & 0x0F) << 4) + ((s[2] & 0x3C) >> 2); - if ((s[3] != 64)) - { - out[k + 2] = ((s[2] & 0x03) << 6) + (s[3]); - k += 3; - } - else - { - k += 2; - } - } - else - { - k += 1; - } - j = 0; - } - } +static CreateTransactionParams__Handle *new_CreateTransactionParams__HandlePtr() { + return (CreateTransactionParams__Handle *) calloc(1,sizeof(CreateTransactionParams__Handle)); +} - return k; - } +static CreateTransactionParams__Handle *copy_CreateTransactionParams__HandlePtr(CreateTransactionParams__Handle value) { + CreateTransactionParams__Handle *obj = (CreateTransactionParams__Handle *) calloc(1,sizeof(CreateTransactionParams__Handle)); + *obj = value; + return obj; +} - int DecodeBase64(GoSlice encrypted, GoString_ * outs) - { - char encryptedText[1024]; - int decode_length = b64_decode((unsigned char *)encrypted.data, - encrypted.len, encryptedText); +static void delete_CreateTransactionParams__HandlePtr(CreateTransactionParams__Handle *obj) { + if (obj) free(obj); +} - outs->p=encryptedText; - outs->n = decode_length; - return decode_length; - } +static void CreateTransactionParams__HandlePtr_assign(CreateTransactionParams__Handle *obj, CreateTransactionParams__Handle value) { + *obj = value; +} -int putUvarint(GoSlice* buf , GoUint64 x){ - int i = 0; - while( x >= 0x80 && i < buf->cap) { - ((unsigned char*)buf->data)[i] = ((GoUint8)x) | 0x80; - x >>= 7; - i++; - } - if( i < buf->cap ){ - ((unsigned char*)buf->data)[i] = (GoUint8)(x); - buf->len = i + 1; - } else { - buf->len = i; - } - return buf->len; +static CreateTransactionParams__Handle CreateTransactionParams__HandlePtr_value(CreateTransactionParams__Handle *obj) { + return *obj; } -int putVarint(GoSlice* buf , GoInt64 x){ - GoUint64 ux = (GoUint64)x << 1; - if ( x < 0 ) { - ux = ~ux; - } - return putUvarint(buf, ux); + +static CreatedTransaction__Handle *new_CreatedTransaction__HandlePtr() { + return (CreatedTransaction__Handle *) calloc(1,sizeof(CreatedTransaction__Handle)); } -void hashKeyIndexNonce(GoSlice_ key, GoInt64 index, - cipher__SHA256 *nonceHash, cipher__SHA256 *resultHash){ - GoUint32 errcode; - int length = 32 + sizeof(cipher__SHA256); - unsigned char buff[length]; - GoSlice slice = {buff, 0, length}; - memset(buff, 0, length * sizeof(char)); - putVarint( &slice, index ); - memcpy(buff + 32, *nonceHash, sizeof(cipher__SHA256)); - slice.len = length; - cipher__SHA256 indexNonceHash; - errcode = SKY_cipher_SumSHA256(slice, &indexNonceHash); - SKY_cipher_AddSHA256(key.data, &indexNonceHash, resultHash); +static CreatedTransaction__Handle *copy_CreatedTransaction__HandlePtr(CreatedTransaction__Handle value) { + CreatedTransaction__Handle *obj = (CreatedTransaction__Handle *) calloc(1,sizeof(CreatedTransaction__Handle)); + *obj = value; + return obj; } -void convertGoUint8toSHA256(GoUint8_* __in, cipher_SHA256* __out){ -memcpy(__out->data, __in, 32); +static void delete_CreatedTransaction__HandlePtr(CreatedTransaction__Handle *obj) { + if (obj) free(obj); } - - GoUint32 CSharp_skycoin_SKY_cipher_SumSHA256(GoSlice seed, cipher_SHA256* sha){ - GoUint32 result = SKY_cipher_SumSHA256(seed, sha); - return result; - } +static void CreatedTransaction__HandlePtr_assign(CreatedTransaction__Handle *obj, CreatedTransaction__Handle value) { + *obj = value; +} +static CreatedTransaction__Handle CreatedTransaction__HandlePtr_value(CreatedTransaction__Handle *obj) { + return *obj; +} - GoUint32 CSharp_skycoin_SKY_cipher_SignHash(cipher_SHA256 *sha,cipher__SecKey *sec,cipher_Sig *s){ - GoUint32 result = SKY_cipher_SignHash(sha,sec,s); - return result; - } +static CreatedTransactionOutput__Handle *new_CreatedTransactionOutput__HandlePtr() { + return (CreatedTransactionOutput__Handle *) calloc(1,sizeof(CreatedTransactionOutput__Handle)); +} - GoUint32 CSharp_skycoin_SKY_cipher_PubKeyFromSig(cipher_Sig *sig,cipher_SHA256 *h,cipher_PubKey *p){ - GoUint32 result = SKY_cipher_PubKeyFromSig(sig,h,p); - return result; - } +static CreatedTransactionOutput__Handle *copy_CreatedTransactionOutput__HandlePtr(CreatedTransactionOutput__Handle value) { + CreatedTransactionOutput__Handle *obj = (CreatedTransactionOutput__Handle *) calloc(1,sizeof(CreatedTransactionOutput__Handle)); + *obj = value; + return obj; +} +static void delete_CreatedTransactionOutput__HandlePtr(CreatedTransactionOutput__Handle *obj) { + if (obj) free(obj); +} - GoUint32 CSharp_skycoin_SKY_cipher_SHA256_Set(cipher_SHA256 *h,GoSlice s){ - GoUint32 result = SKY_cipher_SHA256_Set(h,s); - return result; - } +static void CreatedTransactionOutput__HandlePtr_assign(CreatedTransactionOutput__Handle *obj, CreatedTransactionOutput__Handle value) { + *obj = value; +} +static CreatedTransactionOutput__Handle CreatedTransactionOutput__HandlePtr_value(CreatedTransactionOutput__Handle *obj) { + return *obj; +} - GoUint32 CSharp_skycoin_SKY_cipher_SHA256_Hex(cipher_SHA256 *h,GoString_* s){ - GoUint32 result = SKY_cipher_SHA256_Hex(h,s); - return result; - } +static CreatedTransactionInput__Handle *new_CreatedTransactionInput__HandlePtr() { + return (CreatedTransactionInput__Handle *) calloc(1,sizeof(CreatedTransactionInput__Handle)); +} - GoUint32 CSharp_skycoin_SKY_cipher_SHA256FromHex(GoString s,cipher_SHA256 *h){ - GoUint32 result = SKY_cipher_SHA256FromHex(s,h); - return result; - } +static CreatedTransactionInput__Handle *copy_CreatedTransactionInput__HandlePtr(CreatedTransactionInput__Handle value) { + CreatedTransactionInput__Handle *obj = (CreatedTransactionInput__Handle *) calloc(1,sizeof(CreatedTransactionInput__Handle)); + *obj = value; + return obj; +} +static void delete_CreatedTransactionInput__HandlePtr(CreatedTransactionInput__Handle *obj) { + if (obj) free(obj); +} - GoUint32 CSharp_skycoin_SKY_coin_Transaction_HashInner(Transaction__Handle tx,cipher_SHA256 *h){ - GoUint32 result = SKY_coin_Transaction_HashInner(tx,h); - return result; - } +static void CreatedTransactionInput__HandlePtr_assign(CreatedTransactionInput__Handle *obj, CreatedTransactionInput__Handle value) { + *obj = value; +} +static CreatedTransactionInput__Handle CreatedTransactionInput__HandlePtr_value(CreatedTransactionInput__Handle *obj) { + return *obj; +} - GoUint32 CSharp_skycoin_SKY_coin_Transaction_Hash(Transaction__Handle tx,cipher_SHA256 *h){ - GoUint32 result = SKY_coin_Transaction_Hash(tx,h); - return result; - } +static CreateTransactionResponse__Handle *new_CreateTransactionResponse__HandlePtr() { + return (CreateTransactionResponse__Handle *) calloc(1,sizeof(CreateTransactionResponse__Handle)); +} - GoUint32 CSharp_skycoin_SKY_coin_Transaction_SetInputAt(Transaction__Handle tx,GoInt p1,cipher_SHA256 *h){ - GoUint32 result = SKY_coin_Transaction_SetInputAt(tx,p1,h); - return result; - } - +static CreateTransactionResponse__Handle *copy_CreateTransactionResponse__HandlePtr(CreateTransactionResponse__Handle value) { + CreateTransactionResponse__Handle *obj = (CreateTransactionResponse__Handle *) calloc(1,sizeof(CreateTransactionResponse__Handle)); + *obj = value; + return obj; +} - GoUint32 CSharp_skycoin_SKY_coin_Transaction_GetInputAt(Transaction__Handle tx, GoInt p1,cipher_SHA256 *h){ - GoUint32 result = SKY_coin_Transaction_GetInputAt(tx,p1,h); - return result; - } +static void delete_CreateTransactionResponse__HandlePtr(CreateTransactionResponse__Handle *obj) { + if (obj) free(obj); +} +static void CreateTransactionResponse__HandlePtr_assign(CreateTransactionResponse__Handle *obj, CreateTransactionResponse__Handle value) { + *obj = value; +} - GoUint16 CSharp_skycoin_SKY_coin_Transaction_PushInput(Transaction__Handle tx, cipher_SHA256* h){ - GoUint16 p1 = SKY_coin_Transaction_PushInput(tx,h); - return p1; - } +static CreateTransactionResponse__Handle CreateTransactionResponse__HandlePtr_value(CreateTransactionResponse__Handle *obj) { + return *obj; +} - GoUint32 CSharp_skycoin_SKY_coin_Transaction_SignInputs(Transaction__Handle handle, cipher_SecKeys* __in_pubKeys){ - GoSlice data; - data.data = __in_pubKeys->data; - data.len = __in_pubKeys->count; - data.cap = __in_pubKeys->count; - return SKY_coin_Transaction_SignInputs(handle, data); - } +static SignedBlock__Handle *new_SignedBlock__HandlePtr() { + return (SignedBlock__Handle *) calloc(1,sizeof(SignedBlock__Handle)); +} +static SignedBlock__Handle *copy_SignedBlock__HandlePtr(SignedBlock__Handle value) { + SignedBlock__Handle *obj = (SignedBlock__Handle *) calloc(1,sizeof(SignedBlock__Handle)); + *obj = value; + return obj; +} - GoUint32 CSharp_skycoin_SKY_cipher_GenerateDeterministicKeyPairs(GoSlice seed, GoInt n, cipher_SecKeys* __out_secKeys){ - __out_secKeys->data = NULL; - __out_secKeys->count = 0; - GoSlice_ data; - data.data = malloc(sizeof(cipher_SecKey) * n); - data.len = n; - data.cap = n; - GoUint32 result = SKY_cipher_GenerateDeterministicKeyPairs(seed, n, &data); - if( result == 0){ - __out_secKeys->data = data.data; - __out_secKeys->count = data.len; - } - return result; - } +static void delete_SignedBlock__HandlePtr(SignedBlock__Handle *obj) { + if (obj) free(obj); +} +static void SignedBlock__HandlePtr_assign(SignedBlock__Handle *obj, SignedBlock__Handle value) { + *obj = value; +} - GoUint32 CSharp_skycoin_SKY_cipher_GenerateDeterministicKeyPairsSeed(GoSlice seed, GoInt n, coin__UxArray* newSeed, cipher_SecKeys* __out_secKeys){ - __out_secKeys->data = NULL; - __out_secKeys->count = 0; - GoSlice_ data; - data.data = malloc(sizeof(cipher_SecKey) * n); - data.len = n; - data.cap = n; - GoUint32 result = SKY_cipher_GenerateDeterministicKeyPairsSeed(seed, n, newSeed, &data); - if( result == 0){ - __out_secKeys->data = data.data; - __out_secKeys->count = data.len; - } - return result; - } +static SignedBlock__Handle SignedBlock__HandlePtr_value(SignedBlock__Handle *obj) { + return *obj; +} - GoUint32 CSharp_skycoin_SKY_coin_VerifyTransactionCoinsSpending(coin_UxOutArray* __uxIn, coin_UxOutArray* __uxOut){ - GoSlice_ dataIn; - dataIn.data = __uxIn->data; - dataIn.len = __uxIn->count; - dataIn.cap = __uxIn->count; - GoSlice_ dataOut; - dataOut.data = __uxOut->data; - dataOut.len = __uxOut->count; - dataOut.cap = __uxOut->count; - GoUint32 result = SKY_coin_VerifyTransactionCoinsSpending(&dataIn, &dataOut); - return result; - }; +static SortableTransactionResult_Handle *new_SortableTransactionResult_HandlePtr() { + return (SortableTransactionResult_Handle *) calloc(1,sizeof(SortableTransactionResult_Handle)); +} +static SortableTransactionResult_Handle *copy_SortableTransactionResult_HandlePtr(SortableTransactionResult_Handle value) { + SortableTransactionResult_Handle *obj = (SortableTransactionResult_Handle *) calloc(1,sizeof(SortableTransactionResult_Handle)); + *obj = value; + return obj; +} - GoUint32 CSharp_skycoin_SKY_coin_VerifyTransactionHoursSpending(GoUint64 _headTime , coin_UxOutArray* __uxIn, coin_UxOutArray* __uxOut){ - GoSlice_ dataIn; - dataIn.data = __uxIn->data; - dataIn.len = __uxIn->count; - dataIn.cap = __uxIn->count; - GoSlice_ dataOut; - dataOut.data = __uxOut->data; - dataOut.len = __uxOut->count; - dataOut.cap = __uxOut->count; - GoUint32 result = SKY_coin_VerifyTransactionHoursSpending(_headTime, &dataIn, &dataOut); - return result; - }; +static void delete_SortableTransactionResult_HandlePtr(SortableTransactionResult_Handle *obj) { + if (obj) free(obj); +} +static void SortableTransactionResult_HandlePtr_assign(SortableTransactionResult_Handle *obj, SortableTransactionResult_Handle value) { + *obj = value; +} - GoUint32 CSharp_skycoin_SKY_coin_CreateUnspents(coin__BlockHeader* bh, Transaction__Handle t, coin_UxOutArray* __return_Ux){ - __return_Ux->data = NULL; - __return_Ux->count = 0; - GoSlice_ data; - data.data = NULL; - data.len = 0; - data.cap = 0; - GoUint32 result = SKY_coin_CreateUnspents(bh, t, &data); - if( result == 0){ - __return_Ux->data = data.data; - __return_Ux->count = data.len; - } - return result; - } +static SortableTransactionResult_Handle SortableTransactionResult_HandlePtr_value(SortableTransactionResult_Handle *obj) { + return *obj; +} - GoUint32 CSharp_skycoin_SKY_coin_UxArray_HasDupes(coin_UxOutArray* __uxIn, GoUint8* p1){ - GoSlice_ data; - data.data = __uxIn->data; - data.len = __uxIn->count; - data.cap = __uxIn->count; - return SKY_coin_UxArray_HasDupes(&data, p1); - } +static WalletReadableNotes_Handle *new_WalletReadableNotes_HandlePtr() { + return (WalletReadableNotes_Handle *) calloc(1,sizeof(WalletReadableNotes_Handle)); +} +static WalletReadableNotes_Handle *copy_WalletReadableNotes_HandlePtr(WalletReadableNotes_Handle value) { + WalletReadableNotes_Handle *obj = (WalletReadableNotes_Handle *) calloc(1,sizeof(WalletReadableNotes_Handle)); + *obj = value; + return obj; +} - GoUint32 CSharp_skycoin_SKY_coin_UxArray_Coins(coin_UxOutArray* __uxIn, GoUint64* p1){ - GoSlice_ data; - data.data = __uxIn->data; - data.len = __uxIn->count; - data.cap = __uxIn->count; - return SKY_coin_UxArray_Coins(&data, p1); - } +static void delete_WalletReadableNotes_HandlePtr(WalletReadableNotes_Handle *obj) { + if (obj) free(obj); +} +static void WalletReadableNotes_HandlePtr_assign(WalletReadableNotes_Handle *obj, WalletReadableNotes_Handle value) { + *obj = value; +} - GoUint32 CSharp_skycoin_SKY_coin_UxArray_CoinHours(coin_UxOutArray* __uxIn, GoUint64 p1, GoUint64* p2){ - GoSlice_ data; - data.data = __uxIn->data; - data.len = __uxIn->count; - data.cap = __uxIn->count; - return SKY_coin_UxArray_CoinHours(&data, p1, p2); - } +static WalletReadableNotes_Handle WalletReadableNotes_HandlePtr_value(WalletReadableNotes_Handle *obj) { + return *obj; +} - GoUint32 CSharp_skycoin_SKY_coin_UxArray_Less(coin_UxOutArray* __uxIn, GoInt p1, GoInt p2, GoUint8* p3){ - GoSlice_ data; - data.data = __uxIn->data; - data.len = __uxIn->count; - data.cap = __uxIn->count; - return SKY_coin_UxArray_Less(&data, p1, p2, p3); - } +static OutputsResult_Handle *new_OutputsResult_HandlePtr() { + return (OutputsResult_Handle *) calloc(1,sizeof(OutputsResult_Handle)); +} +static OutputsResult_Handle *copy_OutputsResult_HandlePtr(OutputsResult_Handle value) { + OutputsResult_Handle *obj = (OutputsResult_Handle *) calloc(1,sizeof(OutputsResult_Handle)); + *obj = value; + return obj; +} - GoUint32 CSharp_skycoin_SKY_coin_UxArray_Swap(coin_UxOutArray* __uxIn, GoInt p1, GoInt p2){ - GoSlice_ data; - data.data = __uxIn->data; - data.len = __uxIn->count; - data.cap = __uxIn->count; - return SKY_coin_UxArray_Swap(&data, p1, p2); - } +static void delete_OutputsResult_HandlePtr(OutputsResult_Handle *obj) { + if (obj) free(obj); +} +static void OutputsResult_HandlePtr_assign(OutputsResult_Handle *obj, OutputsResult_Handle value) { + *obj = value; +} - GoUint32 CSharp_skycoin_SKY_coin_UxArray_Sub(coin_UxOutArray* __uxIn, coin_UxOutArray* __uxIn2, coin_UxOutArray* __return_Ux){ - GoSlice_ data; - data.data = __uxIn->data; - data.len = __uxIn->count; - data.cap = __uxIn->count; - GoSlice_ data2; - data2.data = __uxIn2->data; - data2.len = __uxIn2->count; - data2.cap = __uxIn2->count; - GoSlice_ data3; - data3.data = NULL; - data3.len = 0; - data3.cap = 0; - GoUint32 result = SKY_coin_UxArray_Sub(&data, &data2, &data3); - if( result == 0){ - __return_Ux->data = data3.data; - __return_Ux->count = data3.len; - } - return result; - } +static OutputsResult_Handle OutputsResult_HandlePtr_value(OutputsResult_Handle *obj) { + return *obj; +} - GoUint32 CSharp_skycoin_SKY_coin_UxArray_Add(coin_UxOutArray* __uxIn, coin_UxOutArray* __uxIn2, coin_UxOutArray* __return_Ux){ - GoSlice_ data; - data.data = __uxIn->data; - data.len = __uxIn->count; - data.cap = __uxIn->count; - GoSlice_ data2; - data2.data = __uxIn2->data; - data2.len = __uxIn2->count; - data2.cap = __uxIn2->count; - GoSlice_ data3; - data3.data = NULL; - data3.len = 0; - data3.cap = 0; - GoUint32 result = SKY_coin_UxArray_Add(&data, &data2, &data3); - if( result == 0){ - __return_Ux->data = data3.data; - __return_Ux->count = data3.len; - } - return result; - } +static StatusResult_Handle *new_StatusResult_HandlePtr() { + return (StatusResult_Handle *) calloc(1,sizeof(StatusResult_Handle)); +} - - GoUint32 CSharp_skycoin_SKY_coin_NewAddressUxOuts(coin_UxOutArray* __uxIn, AddressUxOuts_Handle* p1){ - GoSlice_ data; - data.data = __uxIn->data; - data.len = __uxIn->count; - data.cap = __uxIn->count; - return SKY_coin_NewAddressUxOuts(&data, p1); - } +static StatusResult_Handle *copy_StatusResult_HandlePtr(StatusResult_Handle value) { + StatusResult_Handle *obj = (StatusResult_Handle *) calloc(1,sizeof(StatusResult_Handle)); + *obj = value; + return obj; +} - - GoUint32 CSharp_skycoin_SKY_coin_UxArray_Hashes(coin_UxOutArray* __uxIn, cipher_SHA256s* __out_hashes){ - GoSlice_ data; - data.data = __uxIn->data; - data.len = __uxIn->count; - data.cap = __uxIn->count; - GoSlice_ dataOut; - dataOut.data = NULL; - dataOut.len = 0; - dataOut.cap = 0; - GoUint32 result = SKY_coin_UxArray_Hashes(&data, &dataOut); - if(result == 0){ - __out_hashes->data = dataOut.data; - __out_hashes->count = dataOut.len; - } - return result; - } +static void delete_StatusResult_HandlePtr(StatusResult_Handle *obj) { + if (obj) free(obj); +} - - GoUint32 CSharp_skycoin_SKY_coin_AddressUxOuts_Flatten(AddressUxOuts_Handle p0, coin_UxOutArray* __return_Ux){ - GoSlice_ data; - data.data = NULL; - data.len = 0; - data.cap = 0; - GoUint32 result = SKY_coin_AddressUxOuts_Flatten(p0, &data); - if( result == 0 ){ - __return_Ux->data = data.data; - __return_Ux->count = data.len; - } - return result; - } +static void StatusResult_HandlePtr_assign(StatusResult_Handle *obj, StatusResult_Handle value) { + *obj = value; +} - - GoUint32 CSharp_skycoin_SKY_coin_AddressUxOuts_Get(AddressUxOuts_Handle p0, cipher__Address* p1, coin_UxOutArray* __return_Ux){ - GoSlice_ data; - data.data = NULL; - data.len = 0; - data.cap = 0; - GoUint32 result = SKY_coin_AddressUxOuts_Get(p0, p1, &data); - if( result == 0 ){ - __return_Ux->data = data.data; - __return_Ux->count = data.len; - } - return result; - } +static StatusResult_Handle StatusResult_HandlePtr_value(StatusResult_Handle *obj) { + return *obj; +} - - GoUint32 CSharp_skycoin_SKY_coin_AddressUxOuts_Set(AddressUxOuts_Handle p0, cipher__Address* p1, coin_UxOutArray* __uxIn){ - GoSlice_ data; - data.data = __uxIn->data; - data.len = __uxIn->count; - data.cap = __uxIn->count; - return SKY_coin_AddressUxOuts_Set(p0, p1, &data); - } - - GoUint32 CSharp_skycoin_SKY_coin_AddressUxOuts_Keys(AddressUxOuts_Handle p0, cipher_Addresses* __out_addr){ - GoSlice_ data; - data.data = NULL; - data.len = 0; - data.cap = 0; - GoUint32 result = SKY_coin_AddressUxOuts_Keys(p0, &data); - if( result == 0){ - __out_addr->data = data.data; - __out_addr->count = data.len; - } - return result; - } +static AddressUxOuts_Handle *new_AddressUxOuts_HandlePtr() { + return (AddressUxOuts_Handle *) calloc(1,sizeof(AddressUxOuts_Handle)); +} +static AddressUxOuts_Handle *copy_AddressUxOuts_HandlePtr(AddressUxOuts_Handle value) { + AddressUxOuts_Handle *obj = (AddressUxOuts_Handle *) calloc(1,sizeof(AddressUxOuts_Handle)); + *obj = value; + return obj; +} - GoUint32 CSharp_skycoin_SKY_coin_Transactions_Hashes(Transactions__Handle p0, cipher_SHA256s* __out_hashes){ - GoSlice_ data; - data.data = NULL; - data.len = 0; - data.cap = 0; - GoUint32 result = SKY_coin_Transactions_Hashes(p0, &data); - if( result == 0){ - __out_hashes->data = data.data; - __out_hashes->count = data.len; - } - return result; - } +static void delete_AddressUxOuts_HandlePtr(AddressUxOuts_Handle *obj) { + if (obj) free(obj); +} +static void AddressUxOuts_HandlePtr_assign(AddressUxOuts_Handle *obj, AddressUxOuts_Handle value) { + *obj = value; +} - GoUint32 CSharp_skycoin_SKY_coin_UxOut_Hash(coin__UxOut* ux, cipher_SHA256* sha){ - GoUint32 result = SKY_coin_UxOut_Hash(ux, sha); - return result; - } +static AddressUxOuts_Handle AddressUxOuts_HandlePtr_value(AddressUxOuts_Handle *obj) { + return *obj; +} - GoUint32 CSharp_skycoin_SKY_cipher_AddSHA256(cipher_SHA256* p0, cipher_SHA256* p1, cipher_SHA256* p2){ - GoUint32 result = SKY_cipher_AddSHA256(p0,p1,p2); - return result; - } +static BuildInfo_Handle *new_BuildInfo_HandlePtr() { + return (BuildInfo_Handle *) calloc(1,sizeof(BuildInfo_Handle)); +} +static BuildInfo_Handle *copy_BuildInfo_HandlePtr(BuildInfo_Handle value) { + BuildInfo_Handle *obj = (BuildInfo_Handle *) calloc(1,sizeof(BuildInfo_Handle)); + *obj = value; + return obj; +} - GoUint32 CSharp_skycoin_SKY_coin_GetTransactionObject(Transaction__Handle tx, coin__Transaction *p1){ - GoUint32 result = SKY_coin_GetTransactionObject(tx,&p1); - return result; - } +static void delete_BuildInfo_HandlePtr(BuildInfo_Handle *obj) { + if (obj) free(obj); +} +static void BuildInfo_HandlePtr_assign(BuildInfo_Handle *obj, BuildInfo_Handle value) { + *obj = value; +} - GoUint32 CSharp_skycoin_SKY_coin_UxBody_Hash(coin__UxBody* p0, cipher_SHA256* p1){ - GoUint32 result = SKY_coin_UxBody_Hash(p0,p1); - return result; - } +static BuildInfo_Handle BuildInfo_HandlePtr_value(BuildInfo_Handle *obj) { + return *obj; +} - GoUint32 CSharp_skycoin_SKY_coin_UxOut_SnapshotHash(coin__UxOut* p0, cipher_SHA256* p1){ - GoUint32 result = SKY_coin_UxOut_SnapshotHash(p0,p1); - return result; - } +static ReadableUnspentOutputsSummary_Handle *new_ReadableUnspentOutputsSummary_HandlePtr() { + return (ReadableUnspentOutputsSummary_Handle *) calloc(1,sizeof(ReadableUnspentOutputsSummary_Handle)); +} +static ReadableUnspentOutputsSummary_Handle *copy_ReadableUnspentOutputsSummary_HandlePtr(ReadableUnspentOutputsSummary_Handle value) { + ReadableUnspentOutputsSummary_Handle *obj = (ReadableUnspentOutputsSummary_Handle *) calloc(1,sizeof(ReadableUnspentOutputsSummary_Handle)); + *obj = value; + return obj; +} - GoUint32 CSharp_skycoin_SKY_fee_TransactionFee(Transaction__Handle handle , GoUint64 p1,coin_UxOutArray* __uxIn, GoUint64* p3){ - GoSlice_ dataIn; - dataIn.data = __uxIn->data; - dataIn.len = __uxIn->count; - dataIn.cap = __uxIn->count; - GoUint32 result = SKY_fee_TransactionFee(handle, p1,&dataIn,p3); - return result; - }; +static void delete_ReadableUnspentOutputsSummary_HandlePtr(ReadableUnspentOutputsSummary_Handle *obj) { + if (obj) free(obj); +} +static void ReadableUnspentOutputsSummary_HandlePtr_assign(ReadableUnspentOutputsSummary_Handle *obj, ReadableUnspentOutputsSummary_Handle value) { + *obj = value; +} - GoUint32 CSharp_skycoin_SKY_cipher_CheckSecKeyHash(cipher_SecKey *s, cipher_SHA256* sha){ - GoUint32 result = SKY_cipher_CheckSecKeyHash(s, sha); - return result; - } +static ReadableUnspentOutputsSummary_Handle ReadableUnspentOutputsSummary_HandlePtr_value(ReadableUnspentOutputsSummary_Handle *obj) { + return *obj; +} - GoUint32 CSharp_skycoin_SKY_coin_NewBlock(Block__Handle p0, GoUint64 p1, cipher_SHA256* p2, Transactions__Handle p3, FeeCalculator* p4, Block__Handle* p5){ - GoUint32 result = SKY_coin_NewBlock(p0, p1,p2,p3,p4,p5); - return result; - } +static Hash_Handle *new_Hash_HandlePtr() { + return (Hash_Handle *) calloc(1,sizeof(Hash_Handle)); +} +static Hash_Handle *copy_Hash_HandlePtr(Hash_Handle value) { + Hash_Handle *obj = (Hash_Handle *) calloc(1,sizeof(Hash_Handle)); + *obj = value; + return obj; +} - GoUint32 CSharp_skycoin_SKY_coin_Block_HashHeader(Block__Handle p0, cipher_SHA256* p1){ - GoUint32 result = SKY_coin_Block_HashHeader(p0, p1); - return result; - } +static void delete_Hash_HandlePtr(Hash_Handle *obj) { + if (obj) free(obj); +} +static void Hash_HandlePtr_assign(Hash_Handle *obj, Hash_Handle value) { + *obj = value; +} - GoUint32 CSharp_skycoin_SKY_coin_BlockBody_Hash(BlockBody__Handle p0, cipher_SHA256* p1){ - GoUint32 result = SKY_coin_BlockBody_Hash(p0, p1); - return result; - } +static Hash_Handle Hash_HandlePtr_value(Hash_Handle *obj) { + return *obj; +} - GoUint32 CSharp_skycoin_SKY_coin_BlockHeader_Hash(BlockHeader__Handle p0, cipher_SHA256* p1){ - GoUint32 result = SKY_coin_BlockHeader_Hash(p0, p1); - return result; - } +static UnspentOutputsSummary_Handle *new_UnspentOutputsSummary_HandlePtr() { + return (UnspentOutputsSummary_Handle *) calloc(1,sizeof(UnspentOutputsSummary_Handle)); +} +static UnspentOutputsSummary_Handle *copy_UnspentOutputsSummary_HandlePtr(UnspentOutputsSummary_Handle value) { + UnspentOutputsSummary_Handle *obj = (UnspentOutputsSummary_Handle *) calloc(1,sizeof(UnspentOutputsSummary_Handle)); + *obj = value; + return obj; +} - GoUint32 CSharp_skycoin_SKY_coin_Block_HashBody(Block__Handle p0, cipher_SHA256* p1){ - GoUint32 result = SKY_coin_Block_HashBody(p0, p1); - return result; - } +static void delete_UnspentOutputsSummary_HandlePtr(UnspentOutputsSummary_Handle *obj) { + if (obj) free(obj); +} +static void UnspentOutputsSummary_HandlePtr_assign(UnspentOutputsSummary_Handle *obj, UnspentOutputsSummary_Handle value) { + *obj = value; +} - GoUint32 CSharp_skycoin_SKY_coin_BlockHeader_UxHash(BlockHeader__Handle p0, cipher_SHA256* p1){ - GoUint32 result = SKY_coin_BlockHeader_UxHash(p0, p1); - return result; - } +static UnspentOutputsSummary_Handle UnspentOutputsSummary_HandlePtr_value(UnspentOutputsSummary_Handle *obj) { + return *obj; +} - GoUint32 CSharp_skycoin_SKY_coin_VerifyInputSignatures(Transaction__Handle handle , coin_UxOutArray* __uxIn){ - coin__UxArray dataIn; - dataIn.data = __uxIn->data; - dataIn.len = __uxIn->count; - dataIn.cap = __uxIn->count; - GoUint32 result = SKY_coin_VerifyInputSignatures(handle,&dataIn); - return result; - }; +static unsigned char *new_CharPtr() { + return (unsigned char *) calloc(1,sizeof(unsigned char)); +} +static unsigned char *copy_CharPtr(unsigned char value) { + unsigned char *obj = (unsigned char *) calloc(1,sizeof(unsigned char)); + *obj = value; + return obj; +} +static void delete_CharPtr(unsigned char *obj) { + if (obj) free(obj); +} -GoUint32_ _WrapperFeeCalculator(Transaction__Handle handle, GoUint64_* pFee, void* context){ - FeeCalcFunc* feeCalc = (FeeCalcFunc*)context; - int *result = callFeeCalculator(feeCalc, handle, pFee); - GoUint32_ error = 0; - if(result != 0) - return error; - return 0; +static void CharPtr_assign(unsigned char *obj, unsigned char value) { + *obj = value; } -SWIGINTERN int cipher_PubKey_isEqual(cipher_PubKey *self,cipher_PubKey *a){ - return memcmp(self->data, a->data, sizeof(a->data)) == 0; - } -SWIGINTERN void cipher_PubKey_assignFrom(cipher_PubKey *self,cipher_PubKey *data){ - memcpy(&self->data, data->data, sizeof(self->data)); - } -SWIGINTERN void cipher_PubKey_assignTo(cipher_PubKey *self,cipher_PubKey *data){ - memcpy(data->data, &self->data, sizeof(self->data)); - } -SWIGINTERN void cipher_PubKey_assignSlice(cipher_PubKey *self,GoSlice slice){ - memcpy((void *) &self->data, slice.data, 33); - } -SWIGINTERN GoSlice cipher_PubKey_toSlice(cipher_PubKey *self){ - GoSlice buffer = {self, sizeof(self->data), sizeof(self->data)}; - return buffer; - } -SWIGINTERN int cipher_SecKey_isEqual(cipher_SecKey *self,cipher_SecKey *a){ - return memcmp(self->data, a->data, sizeof(a->data)) == 0; - } -SWIGINTERN void cipher_SecKey_assignFrom(cipher_SecKey *self,void *data){ - memcpy(&self->data, data, sizeof(self->data)); - } -SWIGINTERN void cipher_SecKey_assignTo(cipher_SecKey *self,void *data){ - memcpy(data, &self->data, sizeof(self->data)); - } -SWIGINTERN int cipher_Ripemd160_isEqual(cipher_Ripemd160 *self,cipher_Ripemd160 *a){ - return memcmp(self->data, a->data, sizeof(a->data)) == 0; - } -SWIGINTERN void cipher_Ripemd160_assignFrom(cipher_Ripemd160 *self,void *data){ - memcpy(&self->data, data, sizeof(self->data)); - } -SWIGINTERN void cipher_Ripemd160_assignTo(cipher_Ripemd160 *self,void *data){ - memcpy(data, &self->data, sizeof(self->data)); - } -SWIGINTERN int cipher_Sig_isEqual(cipher_Sig *self,cipher_Sig *a){ - return memcmp(self->data, a->data, sizeof(a->data)) == 0; - } -SWIGINTERN void cipher_Sig_assignFrom(cipher_Sig *self,void *data){ - memcpy(&self->data, data, sizeof(self->data)); - } -SWIGINTERN void cipher_Sig_assignTo(cipher_Sig *self,void *data){ - memcpy(data, &self->data, sizeof(self->data)); - } -SWIGINTERN int cipher_SHA256_isEqual(cipher_SHA256 *self,cipher_SHA256 *a){ - return memcmp(self->data, a->data, sizeof(a->data)) == 0; - } -SWIGINTERN void cipher_SHA256_assignFrom(cipher_SHA256 *self,cipher_SHA256 *data){ - memcpy(&self->data, data->data, sizeof(self->data)); - } -SWIGINTERN void cipher_SHA256_assignTo(cipher_SHA256 *self,cipher_SHA256 *data){ - memcpy(data->data, &self->data, sizeof(self->data)); - } -SWIGINTERN _GoString_ cipher_SHA256_getStr(cipher_SHA256 *self){ - _GoString_ str; - str.p = (const char*)self->data; - str.n = strlen(str.p); - return str; - } -SWIGINTERN int cipher_Checksum_isEqual(cipher_Checksum *self,cipher_Checksum *a){ - return memcmp(self->data, a->data, sizeof(a->data)) == 0; - } -SWIGINTERN void cipher_Checksum_assignFrom(cipher_Checksum *self,void *data){ - memcpy(&self->data, data, sizeof(self->data)); - } -SWIGINTERN void cipher_Checksum_assignTo(cipher_Checksum *self,void *data){ - memcpy(data, &self->data, sizeof(self->data)); - } -SWIGINTERN cipher_SecKey *cipher_SecKeys_getAt(cipher_SecKeys *self,int i){ - if( i < self->count ){ - return &self->data[i]; - } - else - return NULL; - } -SWIGINTERN int cipher_SecKeys_setAt(cipher_SecKeys *self,int i,cipher_SecKey *seckey){ - if( i < self->count){ - memcpy(&self->data[i], seckey, sizeof(*seckey)); - return i; - } else { - return -1; - } - } -SWIGINTERN int cipher_SecKeys_isEqual(cipher_SecKeys *self,cipher_SecKeys *a){ - return self->count == a->count && memcmp(self->data, a->data, sizeof(cipher_SecKey) * self->count) == 0; - } -SWIGINTERN void cipher_SecKeys_allocate(cipher_SecKeys *self,int n){ - self->data = malloc(n * sizeof(*(self->data))); - self->count = n; - } -SWIGINTERN void cipher_SecKeys_release(cipher_SecKeys *self){ - destroy_cipher_SecKeys(self); - } -SWIGINTERN cipher_PubKey *cipher_PubKeys_getAt(cipher_PubKeys *self,int i){ - if( i < self->count ){ - return &self->data[i]; +static unsigned char CharPtr_value(unsigned char *obj) { + return *obj; +} + + +static FeeCalculator *new_FeeCalculatorPtr() { + return (FeeCalculator *) calloc(1,sizeof(FeeCalculator)); +} + +static FeeCalculator *copy_FeeCalculatorPtr(FeeCalculator value) { + FeeCalculator *obj = (FeeCalculator *) calloc(1,sizeof(FeeCalculator)); + *obj = value; + return obj; +} + +static void delete_FeeCalculatorPtr(FeeCalculator *obj) { + if (obj) free(obj); +} + +static void FeeCalculatorPtr_assign(FeeCalculator *obj, FeeCalculator value) { + *obj = value; +} + +static FeeCalculator FeeCalculatorPtr_value(FeeCalculator *obj) { + return *obj; +} + + +static FeeCalcFunc *new_FeeCalcFuncPtr() { + return (FeeCalcFunc *) calloc(1,sizeof(FeeCalcFunc)); +} + +static FeeCalcFunc *copy_FeeCalcFuncPtr(FeeCalcFunc value) { + FeeCalcFunc *obj = (FeeCalcFunc *) calloc(1,sizeof(FeeCalcFunc)); + *obj = value; + return obj; +} + +static void delete_FeeCalcFuncPtr(FeeCalcFunc *obj) { + if (obj) free(obj); +} + +static void FeeCalcFuncPtr_assign(FeeCalcFunc *obj, FeeCalcFunc value) { + *obj = value; +} + +static FeeCalcFunc FeeCalcFuncPtr_value(FeeCalcFunc *obj) { + return *obj; +} + + +static coin__Block* *new_coin__BlockPtr() { + return (coin__Block* *) calloc(1,sizeof(coin__Block*)); +} + +static coin__Block* *copy_coin__BlockPtr(coin__Block* value) { + coin__Block* *obj = (coin__Block* *) calloc(1,sizeof(coin__Block*)); + *obj = value; + return obj; +} + +static void delete_coin__BlockPtr(coin__Block* *obj) { + if (obj) free(obj); +} + +static void coin__BlockPtr_assign(coin__Block* *obj, coin__Block* value) { + *obj = value; +} + +static coin__Block* coin__BlockPtr_value(coin__Block* *obj) { + return *obj; +} + + +#include "json.h" + //Define function SKY_handle_close to avoid including libskycoin.h + void SKY_handle_close(Handle p0); + + GoUint32_ zeroFeeCalculator(Transaction__Handle handle, GoUint64_ *pFee, void* context){ + *pFee = 0; + return 0; +} + + GoUint32_ calcFeeCalculator(Transaction__Handle handle, GoUint64_ *pFee, void* context){ + *pFee = 1; + return 0; +} + + GoUint32_ fix121FeeCalculator(Transaction__Handle handle, GoUint64_ *pFee, void* context){ + *pFee = 121; + return 0; +} + + GoUint32_ badFeeCalculator(Transaction__Handle handle, GoUint64_ *pFee, void* context){ + return 0x7FFFFFFF; +} + +GoUint32_ overflowFeeCalculator(Transaction__Handle handle, GoUint64_ *pFee, void *context) +{ + *pFee = 0xFFFFFFFFFFFFFFFF; + return 0; +} + +FeeCalculator feeCalc(){ + FeeCalculator feeCalc = {zeroFeeCalculator, NULL}; + return feeCalc; +} + +FeeCalculator fix121(){ + FeeCalculator feeCalc = {fix121FeeCalculator, NULL}; + return feeCalc; +} + +FeeCalculator badCalc(){ + FeeCalculator feeCalc = {badFeeCalculator, NULL}; + return feeCalc; +} + +FeeCalculator calcCalc(){ + FeeCalculator feeCalc = {calcFeeCalculator, NULL}; + return feeCalc; +} + +FeeCalculator overflow(){ + FeeCalculator feeCalc = {overflowFeeCalculator, NULL}; + return feeCalc; +} + int MEMPOOLIDX = 0; + void *MEMPOOL[1024 * 256]; + + int JSONPOOLIDX = 0; + json_value *JSON_POOL[128]; + + int HANDLEPOOLIDX = 0; + Handle HANDLE_POOL[128]; + + typedef struct + { + Client__Handle client; + WalletResponse__Handle wallet; + } wallet_register; + + int WALLETPOOLIDX = 0; + wallet_register WALLET_POOL[64]; + + int stdout_backup; + int pipefd[2]; + + void *registerMemCleanup(void *p) + { + int i; + for (i = 0; i < MEMPOOLIDX; i++) + { + if (MEMPOOL[i] == NULL) + { + MEMPOOL[i] = p; + return p; + } } - else - return NULL; + MEMPOOL[MEMPOOLIDX++] = p; + return p; } -SWIGINTERN int cipher_PubKeys_setAt(cipher_PubKeys *self,int i,cipher_PubKey *pubkey){ - if( i < self->count){ - memcpy(&self->data[i], pubkey, sizeof(*pubkey)); - return i; - } else { - return -1; + + void freeRegisteredMemCleanup(void *p) + { + int i; + for (i = 0; i < MEMPOOLIDX; i++) + { + if (MEMPOOL[i] == p) + { + free(p); + MEMPOOL[i] = NULL; + break; + } } } -SWIGINTERN int cipher_PubKeys_isEqual(cipher_PubKeys *self,cipher_PubKeys *a){ - return self->count == a->count && memcmp(self->data, a->data, sizeof(cipher_PubKey) * self->count) == 0; - } -SWIGINTERN void cipher_PubKeys_allocate(cipher_PubKeys *self,int n){ - self->data = malloc(n * sizeof(*(self->data))); - self->count = n; - } -SWIGINTERN void cipher_PubKeys_release(cipher_PubKeys *self){ - if(self->data != NULL) - free(self->data); - } -SWIGINTERN cipher_SHA256 *cipher_SHA256s_getAt(cipher_SHA256s *self,int i){ - if( i < self->count ){ - return &self->data[i]; + + int registerJsonFree(void *p) + { + int i; + for (i = 0; i < JSONPOOLIDX; i++) + { + if (JSON_POOL[i] == NULL) + { + JSON_POOL[i] = p; + return i; + } } - else - return NULL; + JSON_POOL[JSONPOOLIDX++] = p; + return JSONPOOLIDX - 1; } -SWIGINTERN int cipher_SHA256s_setAt(cipher_SHA256s *self,int i,cipher_SHA256 *hash){ - if( i < self->count){ - memcpy(&self->data[i], hash, sizeof(*hash)); - return i; - } else { - return -1; + + + + int registerWalletClean(Client__Handle clientHandle, + WalletResponse__Handle walletHandle) + { + int i; + for (i = 0; i < WALLETPOOLIDX; i++) + { + if (WALLET_POOL[i].wallet == 0 && WALLET_POOL[i].client == 0) + { + WALLET_POOL[i].wallet = walletHandle; + WALLET_POOL[i].client = clientHandle; + return i; + } } + WALLET_POOL[WALLETPOOLIDX].wallet = walletHandle; + WALLET_POOL[WALLETPOOLIDX].client = clientHandle; + return WALLETPOOLIDX++; } -SWIGINTERN int cipher_SHA256s_isEqual(cipher_SHA256s *self,cipher_SHA256s *a){ - return self->count == a->count && memcmp(self->data, a->data, sizeof(cipher_SHA256) * self->count) == 0; - } -SWIGINTERN void cipher_SHA256s_allocate(cipher_SHA256s *self,int n){ - self->data = malloc(n * sizeof(*(self->data))); - self->count = n; - } -SWIGINTERN void cipher_SHA256s_release(cipher_SHA256s *self){ - if(self->data != NULL) free(self->data); - } -SWIGINTERN coin__UxOut *coin_UxOutArray_getAt(coin_UxOutArray *self,int i){ - if( i < self->count ){ - return &self->data[i]; + + int registerHandleClose(Handle handle) + { + int i; + for (i = 0; i < HANDLEPOOLIDX; i++) + { + if (HANDLE_POOL[i] == 0) + { + HANDLE_POOL[i] = handle; + return i; + } } - else - return NULL; + HANDLE_POOL[HANDLEPOOLIDX++] = handle; + return HANDLEPOOLIDX - 1; } -SWIGINTERN int coin_UxOutArray_setAt(coin_UxOutArray *self,int i,coin__UxOut *uxout){ - if( i < self->count){ - memcpy(&self->data[i], uxout, sizeof(*uxout)); - return i; - } else { - return -1; + + void closeRegisteredHandle(Handle handle) + { + int i; + for (i = 0; i < HANDLEPOOLIDX; i++) + { + if (HANDLE_POOL[i] == handle) + { + HANDLE_POOL[i] = 0; + SKY_handle_close(handle); + break; + } } } -SWIGINTERN int coin_UxOutArray_isEqual(coin_UxOutArray *self,coin_UxOutArray *a){ - return self->count == a->count && memcmp(self->data, a->data, sizeof(coin__UxOut) * self->count) == 0; +#include +#include +#include +#include +#include + void cleanupWallet(Client__Handle client, WalletResponse__Handle wallet) + { + int result; + GoString_ strWalletDir; + GoString_ strFileName; + memset(&strWalletDir, 0, sizeof(GoString_)); + memset(&strFileName, 0, sizeof(GoString_)); + + result = SKY_api_Handle_Client_GetWalletDir(client, &strWalletDir); + if (result != 0) + { + return; + } + result = SKY_api_Handle_Client_GetWalletFileName(wallet, &strFileName); + if (result != 0) + { + free((void *)strWalletDir.p); + return; + } + char fullPath[128]; + if (strWalletDir.n + strFileName.n < 126) + { + strcpy(fullPath, strWalletDir.p); + if (fullPath[0] == 0 || fullPath[strlen(fullPath) - 1] != '/') + strcat(fullPath, "/"); + strcat(fullPath, strFileName.p); + result = unlink(fullPath); + if (strlen(fullPath) < 123) + { + strcat(fullPath, ".bak"); + result = unlink(fullPath); + } + } + GoString str = {strFileName.p, strFileName.n}; + result = SKY_api_Client_UnloadWallet(client, str); + GoString strFullPath = {fullPath, strlen(fullPath)}; + free((void *)strWalletDir.p); + free((void *)strFileName.p); } -SWIGINTERN void coin_UxOutArray_allocate(coin_UxOutArray *self,int n){ - self->data = malloc(n * sizeof(*(self->data))); - self->count = n; + + void cleanRegisteredWallet( + Client__Handle client, + WalletResponse__Handle wallet) + { + + int i; + for (i = 0; i < WALLETPOOLIDX; i++) + { + if (WALLET_POOL[i].wallet == wallet && WALLET_POOL[i].client == client) + { + WALLET_POOL[i].wallet = 0; + WALLET_POOL[i].client = 0; + cleanupWallet(client, wallet); + return; + } + } } -SWIGINTERN void coin_UxOutArray_append(coin_UxOutArray *self,coin__UxOut *uxout){ - int n = self->count+1; - self->data = malloc(n * sizeof(*(self->data))); - self->count =n ; - memcpy(&self->data[n-1], uxout, sizeof(*uxout)); + void setup(void) + { + srand((unsigned int)time(NULL)); } -SWIGINTERN void coin_UxOutArray_release(coin_UxOutArray *self){ - if(self->data != NULL) - free(self->data); + + + // TODO: Move to libsky_io.c + void fprintbuff(FILE * f, void *buff, size_t n) + { + unsigned char *ptr = (unsigned char *)buff; + fprintf(f, "[ "); + for (; n; --n, ptr++) + { + fprintf(f, "%02d ", *ptr); + } + fprintf(f, "]"); } -SWIGINTERN cipher__Address *cipher_Addresses_getAt(cipher_Addresses *self,int i){ - if( i < self->count ){ - return &self->data[i]; + + int parseBoolean(const char *str, int length) + { + int result = 0; + if (length == 1) + { + result = str[0] == '1' || str[0] == 't' || str[0] == 'T'; } else - return NULL; - } -SWIGINTERN int cipher_Addresses_setAt(cipher_Addresses *self,int i,cipher_Addresses *addr){ - if( i < self->count){ - memcpy(&self->data[i], addr, sizeof(*addr)); - return i; - } else { - return -1; + { + result = strncmp(str, "true", length) == 0 || + strncmp(str, "True", length) == 0 || + strncmp(str, "TRUE", length) == 0; } + return result; } -SWIGINTERN int cipher_Addresses_isEqual(cipher_Addresses *self,cipher_Addresses *a){ - return self->count == a->count && memcmp(self->data, a->data, sizeof(cipher__Address) * self->count) == 0; - } -SWIGINTERN void cipher_Addresses_allocate(cipher_Addresses *self,int n){ - self->data = malloc(n * sizeof(*(self->data))); - self->count = n; - } -SWIGINTERN void cipher_Addresses_release(cipher_Addresses *self){ - if(self->data != NULL) - free(self->data); - } -SWIGINTERN int _GoString__SetString(_GoString_ *self,char *str){ - self->p = str; - self->n = strlen(str); - } -SWIGINTERN char *_GoString__getString(_GoString_ *self){ - return (const char *)self->p; - } -SWIGINTERN int _GoString__isEqual(_GoString_ *self,_GoString_ *string2){ - return (self->n == string2->n) && - (strcmp((char *)self->p, (char *)string2->p) == 0); -} -SWIGINTERN int GoSlice_isEqual(GoSlice *self,GoSlice *slice){ - return ((self->len == slice->len)) && (memcmp(self->data,slice->data, sizeof(GoSlice_))==0 ); - } -SWIGINTERN void GoSlice_convertString(GoSlice *self,_GoString_ data){ - self->data = data.p; - self->len = strlen(data.p); - self->cap = self->len; + + void toGoString(GoString_ * s, GoString * r) + { + GoString *tmp = r; + + *tmp = (*(GoString *)s); } -SWIGINTERN void GoSlice_setAtChar(GoSlice *self,char p,unsigned long long i){ - ((char *) self->data)[i] = p; + + int copySlice(GoSlice_ * pdest, GoSlice_ * psource, int elem_size) + { + pdest->len = psource->len; + pdest->cap = psource->len; + int size = pdest->len * elem_size; + pdest->data = malloc(size); + if (pdest->data == NULL) + return 1; + registerMemCleanup(pdest->data); + memcpy(pdest->data, psource->data, size); + return 0; } -SWIGINTERN void GoSlice_getString(GoSlice *self,_GoString_ *out){ - out->p = (char *)self->data; - out->n = strlen((char *)self->data); -} -SWIGINTERN int GoSlice_getAtString(GoSlice *self,int index,_GoString_ *outs){ - int i; - _GoString_ *iStr; - char *out; - for (i = 0, iStr = (_GoString_ *)self->data; i < self->len; ++i, ++iStr) + + int concatSlices(GoSlice_ * slice1, GoSlice_ * slice2, int elem_size, GoSlice_ *result) { - if (index == i) + int size1 = slice1->len; + int size2 = slice2->len; + int size = size1 + size2; + if (size <= 0) + return 1; + void *data = malloc(size * elem_size); + if (data == NULL) + return 1; + registerMemCleanup(data); + result->data = data; + result->len = size; + result->cap = size; + char *p = data; + if (size1 > 0) { - out = _GoString__getString(iStr); - _GoString__SetString(outs,out); - return 0; + memcpy(p, slice1->data, size1 * elem_size); + p += (elem_size * size1); } - } - return 1; -} -SWIGINTERN int cipher__Address_isEqual(cipher__Address *self,cipher__Address *a){ - if( self->Version == a->Version ){ - return memcmp(self->Key, a->Key, sizeof(a->Key)) == 0; + if (size2 > 0) + { + memcpy(p, slice2->data, size2 * elem_size); } return 0; } -SWIGINTERN char cipher__Address_getVersion(cipher__Address *self){ - return self->Version; - } -SWIGINTERN void cipher__Address_setVersion(cipher__Address *self,char pValue){ - self->Version = pValue; - } -SWIGINTERN int cipher__BitcoinAddress_isEqual(cipher__BitcoinAddress *self,cipher__BitcoinAddress *a){ - if( self->Version == a->Version ){ - return memcmp(self->Key, a->Key, sizeof(a->Key)) == 0; - } - return 0; + void parseJsonMetaData(char *metadata, long long *n, long long *r, long long *p, long long *keyLen) + { + *n = *r = *p = *keyLen = 0; + int length = strlen(metadata); + int openingQuote = -1; + const char *keys[] = {"n", "r", "p", "keyLen"}; + int keysCount = 4; + int keyIndex = -1; + int startNumber = -1; + int i; + int k; + for (i = 0; i < length; i++) + { + if (metadata[i] == '\"') + { + startNumber = -1; + if (openingQuote >= 0) + { + keyIndex = -1; + metadata[i] = 0; + for (k = 0; k < keysCount; k++) + { + if (strcmp(metadata + openingQuote + 1, keys[k]) == 0) + { + keyIndex = k; + } + } + openingQuote = -1; + } + else + { + openingQuote = i; + } + } + else if (metadata[i] >= '0' && metadata[i] <= '9') + { + if (startNumber < 0) + startNumber = i; + } + else if (metadata[i] == ',') + { + if (startNumber >= 0) + { + metadata[i] = 0; + int number = atoi(metadata + startNumber); + startNumber = -1; + if (keyIndex == 0) + *n = number; + else if (keyIndex == 1) + *r = number; + else if (keyIndex == 2) + *p = number; + else if (keyIndex == 3) + *keyLen = number; + } + } + else + { + startNumber = -1; + } + } } -SWIGINTERN int coin__Transaction_isEqual(coin__Transaction *self,coin__Transaction *t){ - return equalTransactions(self, t); + + int cutSlice(GoSlice_ * slice, int start, int end, int elem_size, GoSlice_ *result) + { + int size = end - start; + if (size <= 0) + return 1; + void *data = malloc(size * elem_size); + if (data == NULL) + return 1; + registerMemCleanup(data); + result->data = data; + result->len = size; + result->cap = size; + char *p = slice->data; + p += (elem_size * start); + memcpy(data, p, elem_size * size); + return 0; } -SWIGINTERN cipher_SHA256 coin__Transaction_GetInnerHash(coin__Transaction *self){ - cipher_SHA256 h; - cipher_SHA256_assignFrom(&h,self->InnerHash); - return h; + + coin__Transaction *makeEmptyTransaction(Transaction__Handle * handle) + { + int result; + coin__Transaction *ptransaction = NULL; + result = SKY_coin_Create_Transaction(handle); + registerHandleClose(*handle); + result = SKY_coin_GetTransactionObject(*handle, &ptransaction); + return ptransaction; } -SWIGINTERN int coin__Transaction_setInnerHash(coin__Transaction *self,cipher_SHA256 h){ - memset(self->InnerHash, 0, sizeof(cipher__SHA256)); - cipher_SHA256_assignFrom(self->InnerHash,&h); - return 0; - } -SWIGINTERN int coin__TransactionOutput_isEqual(coin__TransactionOutput *self,coin__TransactionOutput *t){ - if( self->Coins != t->Coins || - self->Hours != t->Hours ){ - return 0; - } + int makeUxBodyWithSecret(coin__UxBody * puxBody, cipher__SecKey * pseckey) + { + cipher__PubKey pubkey; + cipher__Address address; + int result; - if(memcmp(&self->Address, &t->Address, sizeof(cipher__Address)) != 0) - return 0; - return 1; + memset(puxBody, 0, sizeof(coin__UxBody)); + puxBody->Coins = 1000000; + puxBody->Hours = 100; + + result = SKY_cipher_GenerateKeyPair(&pubkey, pseckey); + if (result != 0) + { + return 1; + } + + GoSlice slice; + memset(&slice, 0, sizeof(GoSlice)); + cipher__SHA256 hash; + + result = SKY_cipher_RandByte(128, (coin__UxArray *)&slice); + registerMemCleanup(slice.data); + if (result != 0) + { + return 1; + } + result = SKY_cipher_SumSHA256(slice, &puxBody->SrcTransaction); + if (result != 0) + { + return 1; + } + + result = SKY_cipher_AddressFromPubKey(&pubkey, &puxBody->Address); + if (result != 0) + { + return 1; + } + return result; } -SWIGINTERN int coin__BlockHeader_isEqual(coin__BlockHeader *self,coin__BlockHeader *bh){ - return equalBlockHeaders(self, bh); + int makeUxOutWithSecret(coin__UxOut * puxOut, cipher__SecKey * pseckey) + { + int result; + memset(puxOut, 0, sizeof(coin__UxOut)); + result = makeUxBodyWithSecret(&puxOut->Body, pseckey); + puxOut->Head.Time = 100; + puxOut->Head.BkSeq = 2; + return result; } -SWIGINTERN int coin__BlockBody_isEqual(coin__BlockBody *self,coin__BlockBody *b){ - return equalTransactionsArrays(&self->Transactions, &b->Transactions); + int makeUxOut(coin__UxOut * puxOut) + { + cipher__SecKey seckey; + return makeUxOutWithSecret(puxOut, &seckey); } -SWIGINTERN void coin__UxBody_SetSrcTransaction(coin__UxBody *self,cipher_SHA256 *o){ - cipher_SHA256* p = (cipher_SHA256*)o; - memcpy( &self->SrcTransaction, &p->data, sizeof(cipher__SHA256)); + int makeUxArray(coin_UxOutArray * parray, int n) + { + parray->data = malloc(sizeof(coin__UxOut) * n); + if (!parray->data) + return 1; + registerMemCleanup(parray->data); + parray->count = parray->count = n; + coin__UxOut *p = (coin__UxOut *)parray->data; + int result = 0; + int i; + for (i = 0; i < n; i++) + { + result = makeUxOut(p); + if (result != 0) + break; + p++; } -SWIGINTERN int coin__UxOut_isEqual(coin__UxOut *self,coin__UxOut *u){ - return memcmp(&self, u, sizeof(coin__UxOut)) == 0; + return result; + } + int makeAddress(cipher__Address * paddress) + { + cipher__PubKey pubkey; + cipher__SecKey seckey; + cipher__Address address; + int result; + + result = SKY_cipher_GenerateKeyPair(&pubkey, &seckey); + if (result != 0) + return 1; + + result = SKY_cipher_AddressFromPubKey(&pubkey, paddress); + if (result != 0) + return 1; + return result; + } + coin__Transaction *makeTransactionFromUxOut(coin__UxOut * puxOut, cipher__SecKey * pseckey, Transaction__Handle * handle) + { + int result; + coin__Transaction *ptransaction = NULL; + result = SKY_coin_Create_Transaction(handle); + // cr_assert(result == SKY_OK, "SKY_coin_Create_Transaction failed"); + registerHandleClose(*handle); + result = SKY_coin_GetTransactionObject(*handle, &ptransaction); + // cr_assert(result == SKY_OK, "SKY_coin_GetTransactionObject failed"); + cipher__SHA256 sha256; + result = SKY_coin_UxOut_Hash(puxOut, &sha256); + // cr_assert(result == SKY_OK, "SKY_coin_UxOut_Hash failed"); + GoUint16 r; + r = SKY_coin_Transaction_PushInput(*handle, &sha256); + + cipher__Address address1, address2; + result = makeAddress(&address1); + // cr_assert(result == SKY_OK, "makeAddress failed"); + result = makeAddress(&address2); + // cr_assert(result == SKY_OK, "makeAddress failed"); + + result = SKY_coin_Transaction_PushOutput(*handle, &address1, 1000000, 50); + // cr_assert(result == SKY_OK, "SKY_coin_Transaction_PushOutput failed"); + result = SKY_coin_Transaction_PushOutput(*handle, &address2, 5000000, 50); + // cr_assert(result == SKY_OK, "SKY_coin_Transaction_PushOutput failed"); + + GoSlice secKeys = {pseckey, 1, 1}; + result = SKY_coin_Transaction_SignInputs(*handle, secKeys); + // cr_assert(result == SKY_OK, "SKY_coin_Transaction_SignInputs failed"); + result = SKY_coin_Transaction_UpdateHeader(*handle); + // cr_assert(result == SKY_OK, "SKY_coin_Transaction_UpdateHeader failed"); + return ptransaction; + } + + coin__Transaction *makeTransaction(Transaction__Handle * handle) + { + int result; + coin__UxOut uxOut; + cipher__SecKey seckey; + coin__Transaction *ptransaction = NULL; + result = makeUxOutWithSecret(&uxOut, &seckey); + ptransaction = makeTransactionFromUxOut(&uxOut, &seckey, handle); + return ptransaction; } -#ifdef __cplusplus -extern "C" { -#endif + int makeTransactions(int n, Transactions__Handle *handle) + { + int result = SKY_coin_Create_Transactions(handle); + if (result != 0) + return 1; + registerHandleClose(*handle); + int i; + for (i = 0; i < n; i++) + { + Transaction__Handle thandle; + makeTransaction(&thandle); + registerHandleClose(thandle); + result = SKY_coin_Transactions_Add(*handle, thandle); + if (result != 0) + return 1; + } + return result; + } + + // Base 64 + + int b64_int(unsigned int ch) + { + if (ch == 43) + return 62; + if (ch == 47) + return 63; + if (ch == 61) + return 64; + if ((ch > 47) && (ch < 58)) + return ch + 4; + if ((ch > 64) && (ch < 91)) + return ch - 'A'; + if ((ch > 96) && (ch < 123)) + return (ch - 'a') + 26; + return -1; + } + + int b64_decode(const unsigned char *in, unsigned int in_len, unsigned char *out) + { + + unsigned int i = 0, j = 0, k = 0, s[4]; + for (i = 0; i < in_len; i++) + { + int n = b64_int(*(in + i)); + if (n < 0) + return -1; + s[j++] = n; + if (j == 4) + { + out[k + 0] = ((s[0] & 255) << 2) + ((s[1] & 0x30) >> 4); + if (s[2] != 64) + { + out[k + 1] = ((s[1] & 0x0F) << 4) + ((s[2] & 0x3C) >> 2); + if ((s[3] != 64)) + { + out[k + 2] = ((s[2] & 0x03) << 6) + (s[3]); + k += 3; + } + else + { + k += 2; + } + } + else + { + k += 1; + } + j = 0; + } + } + + return k; + } + + int DecodeBase64(GoSlice encrypted, GoString_ * outs) + { + char encryptedText[1024]; + int decode_length = b64_decode((unsigned char *)encrypted.data, + encrypted.len, encryptedText); + + outs->p=encryptedText; + outs->n = decode_length; + return decode_length; + } + +int putUvarint(GoSlice* buf , GoUint64 x){ + int i = 0; + while( x >= 0x80 && i < buf->cap) { + ((unsigned char*)buf->data)[i] = ((GoUint8)x) | 0x80; + x >>= 7; + i++; + } + if( i < buf->cap ){ + ((unsigned char*)buf->data)[i] = (GoUint8)(x); + buf->len = i + 1; + } else { + buf->len = i; + } + return buf->len; +} + +int putVarint(GoSlice* buf , GoInt64 x){ + GoUint64 ux = (GoUint64)x << 1; + if ( x < 0 ) { + ux = ~ux; + } + return putUvarint(buf, ux); +} + +void hashKeyIndexNonce(GoSlice_ key, GoInt64 index, + cipher__SHA256 *nonceHash, cipher__SHA256 *resultHash){ + GoUint32 errcode; + int length = 32 + sizeof(cipher__SHA256); + unsigned char buff[length]; + GoSlice slice = {buff, 0, length}; + memset(buff, 0, length * sizeof(char)); + putVarint( &slice, index ); + memcpy(buff + 32, *nonceHash, sizeof(cipher__SHA256)); + slice.len = length; + cipher__SHA256 indexNonceHash; + errcode = SKY_cipher_SumSHA256(slice, &indexNonceHash); + SKY_cipher_AddSHA256(key.data, &indexNonceHash, resultHash); +} + +void convertGoUint8toSHA256(GoUint8_* __in, cipher_SHA256* __out){ +memcpy(__out->data, __in, 32); +} + + + GoUint32 CSharp_skycoin_SKY_cipher_SumSHA256(GoSlice seed, cipher_SHA256* sha){ + GoUint32 result = SKY_cipher_SumSHA256(seed, sha); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_cipher_SignHash(cipher_SHA256 *sha,cipher__SecKey *sec,cipher_Sig *s){ + GoUint32 result = SKY_cipher_SignHash(sha,sec,s); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_cipher_PubKeyFromSig(cipher_Sig *sig,cipher_SHA256 *h,cipher_PubKey *p){ + GoUint32 result = SKY_cipher_PubKeyFromSig(sig,h,p); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_cipher_SHA256_Set(cipher_SHA256 *h,GoSlice s){ + GoUint32 result = SKY_cipher_SHA256_Set(h,s); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_cipher_SHA256_Hex(cipher_SHA256 *h,GoString_* s){ + GoUint32 result = SKY_cipher_SHA256_Hex(h,s); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_cipher_SHA256FromHex(GoString s,cipher_SHA256 *h){ + GoUint32 result = SKY_cipher_SHA256FromHex(s,h); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_Transaction_HashInner(Transaction__Handle tx,cipher_SHA256 *h){ + GoUint32 result = SKY_coin_Transaction_HashInner(tx,h); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_Transaction_Hash(Transaction__Handle tx,cipher_SHA256 *h){ + GoUint32 result = SKY_coin_Transaction_Hash(tx,h); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_Transaction_SetInputAt(Transaction__Handle tx,GoInt p1,cipher_SHA256 *h){ + GoUint32 result = SKY_coin_Transaction_SetInputAt(tx,p1,h); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_Transaction_GetInputAt(Transaction__Handle tx, GoInt p1,cipher_SHA256 *h){ + GoUint32 result = SKY_coin_Transaction_GetInputAt(tx,p1,h); + return result; + } + + + GoUint16 CSharp_skycoin_SKY_coin_Transaction_PushInput(Transaction__Handle tx, cipher_SHA256* h){ + GoUint16 p1 = SKY_coin_Transaction_PushInput(tx,h); + return p1; + } + + + GoUint32 CSharp_skycoin_SKY_coin_Transaction_SignInputs(Transaction__Handle handle, cipher_SecKeys* __in_pubKeys){ + GoSlice data; + data.data = __in_pubKeys->data; + data.len = __in_pubKeys->count; + data.cap = __in_pubKeys->count; + return SKY_coin_Transaction_SignInputs(handle, data); + } + + + GoUint32 CSharp_skycoin_SKY_cipher_GenerateDeterministicKeyPairs(GoSlice seed, GoInt n, cipher_SecKeys* __out_secKeys){ + __out_secKeys->data = NULL; + __out_secKeys->count = 0; + GoSlice_ data; + data.data = malloc(sizeof(cipher_SecKey) * n); + data.len = n; + data.cap = n; + GoUint32 result = SKY_cipher_GenerateDeterministicKeyPairs(seed, n, &data); + if( result == 0){ + __out_secKeys->data = data.data; + __out_secKeys->count = data.len; + } + return result; + } + + + GoUint32 CSharp_skycoin_SKY_cipher_GenerateDeterministicKeyPairsSeed(GoSlice seed, GoInt n, coin__UxArray* newSeed, cipher_SecKeys* __out_secKeys){ + __out_secKeys->data = NULL; + __out_secKeys->count = 0; + GoSlice_ data; + data.data = malloc(sizeof(cipher_SecKey) * n); + data.len = n; + data.cap = n; + GoUint32 result = SKY_cipher_GenerateDeterministicKeyPairsSeed(seed, n, newSeed, &data); + if( result == 0){ + __out_secKeys->data = data.data; + __out_secKeys->count = data.len; + } + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_VerifyTransactionCoinsSpending(coin_UxOutArray* __uxIn, coin_UxOutArray* __uxOut){ + GoSlice_ dataIn; + dataIn.data = __uxIn->data; + dataIn.len = __uxIn->count; + dataIn.cap = __uxIn->count; + GoSlice_ dataOut; + dataOut.data = __uxOut->data; + dataOut.len = __uxOut->count; + dataOut.cap = __uxOut->count; + GoUint32 result = SKY_coin_VerifyTransactionCoinsSpending(&dataIn, &dataOut); + return result; + }; + + + GoUint32 CSharp_skycoin_SKY_coin_VerifyTransactionHoursSpending(GoUint64 _headTime , coin_UxOutArray* __uxIn, coin_UxOutArray* __uxOut){ + GoSlice_ dataIn; + dataIn.data = __uxIn->data; + dataIn.len = __uxIn->count; + dataIn.cap = __uxIn->count; + GoSlice_ dataOut; + dataOut.data = __uxOut->data; + dataOut.len = __uxOut->count; + dataOut.cap = __uxOut->count; + GoUint32 result = SKY_coin_VerifyTransactionHoursSpending(_headTime, &dataIn, &dataOut); + return result; + }; + + + GoUint32 CSharp_skycoin_SKY_coin_CreateUnspents(coin__BlockHeader* bh, Transaction__Handle t, coin_UxOutArray* __return_Ux){ + __return_Ux->data = NULL; + __return_Ux->count = 0; + GoSlice_ data; + data.data = NULL; + data.len = 0; + data.cap = 0; + GoUint32 result = SKY_coin_CreateUnspents(bh, t, &data); + if( result == 0){ + __return_Ux->data = data.data; + __return_Ux->count = data.len; + } + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_UxArray_HasDupes(coin_UxOutArray* __uxIn, GoUint8* p1){ + GoSlice_ data; + data.data = __uxIn->data; + data.len = __uxIn->count; + data.cap = __uxIn->count; + return SKY_coin_UxArray_HasDupes(&data, p1); + } + + + GoUint32 CSharp_skycoin_SKY_coin_UxArray_Coins(coin_UxOutArray* __uxIn, GoUint64* p1){ + GoSlice_ data; + data.data = __uxIn->data; + data.len = __uxIn->count; + data.cap = __uxIn->count; + return SKY_coin_UxArray_Coins(&data, p1); + } + + + GoUint32 CSharp_skycoin_SKY_coin_UxArray_CoinHours(coin_UxOutArray* __uxIn, GoUint64 p1, GoUint64* p2){ + GoSlice_ data; + data.data = __uxIn->data; + data.len = __uxIn->count; + data.cap = __uxIn->count; + return SKY_coin_UxArray_CoinHours(&data, p1, p2); + } + + + GoUint32 CSharp_skycoin_SKY_coin_UxArray_Less(coin_UxOutArray* __uxIn, GoInt p1, GoInt p2, GoUint8* p3){ + GoSlice_ data; + data.data = __uxIn->data; + data.len = __uxIn->count; + data.cap = __uxIn->count; + return SKY_coin_UxArray_Less(&data, p1, p2, p3); + } + + + GoUint32 CSharp_skycoin_SKY_coin_UxArray_Swap(coin_UxOutArray* __uxIn, GoInt p1, GoInt p2){ + GoSlice_ data; + data.data = __uxIn->data; + data.len = __uxIn->count; + data.cap = __uxIn->count; + return SKY_coin_UxArray_Swap(&data, p1, p2); + } + + + GoUint32 CSharp_skycoin_SKY_coin_UxArray_Sub(coin_UxOutArray* __uxIn, coin_UxOutArray* __uxIn2, coin_UxOutArray* __return_Ux){ + GoSlice_ data; + data.data = __uxIn->data; + data.len = __uxIn->count; + data.cap = __uxIn->count; + GoSlice_ data2; + data2.data = __uxIn2->data; + data2.len = __uxIn2->count; + data2.cap = __uxIn2->count; + GoSlice_ data3; + data3.data = NULL; + data3.len = 0; + data3.cap = 0; + GoUint32 result = SKY_coin_UxArray_Sub(&data, &data2, &data3); + if( result == 0){ + __return_Ux->data = data3.data; + __return_Ux->count = data3.len; + } + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_UxArray_Add(coin_UxOutArray* __uxIn, coin_UxOutArray* __uxIn2, coin_UxOutArray* __return_Ux){ + GoSlice_ data; + data.data = __uxIn->data; + data.len = __uxIn->count; + data.cap = __uxIn->count; + GoSlice_ data2; + data2.data = __uxIn2->data; + data2.len = __uxIn2->count; + data2.cap = __uxIn2->count; + GoSlice_ data3; + data3.data = NULL; + data3.len = 0; + data3.cap = 0; + GoUint32 result = SKY_coin_UxArray_Add(&data, &data2, &data3); + if( result == 0){ + __return_Ux->data = data3.data; + __return_Ux->count = data3.len; + } + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_NewAddressUxOuts(coin_UxOutArray* __uxIn, AddressUxOuts_Handle* p1){ + GoSlice_ data; + data.data = __uxIn->data; + data.len = __uxIn->count; + data.cap = __uxIn->count; + return SKY_coin_NewAddressUxOuts(&data, p1); + } + + + GoUint32 CSharp_skycoin_SKY_coin_UxArray_Hashes(coin_UxOutArray* __uxIn, cipher_SHA256s* __out_hashes){ + GoSlice_ data; + data.data = __uxIn->data; + data.len = __uxIn->count; + data.cap = __uxIn->count; + GoSlice_ dataOut; + dataOut.data = NULL; + dataOut.len = 0; + dataOut.cap = 0; + GoUint32 result = SKY_coin_UxArray_Hashes(&data, &dataOut); + if(result == 0){ + __out_hashes->data = dataOut.data; + __out_hashes->count = dataOut.len; + } + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_AddressUxOuts_Flatten(AddressUxOuts_Handle p0, coin_UxOutArray* __return_Ux){ + GoSlice_ data; + data.data = NULL; + data.len = 0; + data.cap = 0; + GoUint32 result = SKY_coin_AddressUxOuts_Flatten(p0, &data); + if( result == 0 ){ + __return_Ux->data = data.data; + __return_Ux->count = data.len; + } + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_AddressUxOuts_Get(AddressUxOuts_Handle p0, cipher__Address* p1, coin_UxOutArray* __return_Ux){ + GoSlice_ data; + data.data = NULL; + data.len = 0; + data.cap = 0; + GoUint32 result = SKY_coin_AddressUxOuts_Get(p0, p1, &data); + if( result == 0 ){ + __return_Ux->data = data.data; + __return_Ux->count = data.len; + } + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_AddressUxOuts_Set(AddressUxOuts_Handle p0, cipher__Address* p1, coin_UxOutArray* __uxIn){ + GoSlice_ data; + data.data = __uxIn->data; + data.len = __uxIn->count; + data.cap = __uxIn->count; + return SKY_coin_AddressUxOuts_Set(p0, p1, &data); + } + + + GoUint32 CSharp_skycoin_SKY_coin_AddressUxOuts_Keys(AddressUxOuts_Handle p0, cipher_Addresses* __out_addr){ + GoSlice_ data; + data.data = NULL; + data.len = 0; + data.cap = 0; + GoUint32 result = SKY_coin_AddressUxOuts_Keys(p0, &data); + if( result == 0){ + __out_addr->data = data.data; + __out_addr->count = data.len; + } + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_Transactions_Hashes(Transactions__Handle p0, cipher_SHA256s* __out_hashes){ + GoSlice_ data; + data.data = NULL; + data.len = 0; + data.cap = 0; + GoUint32 result = SKY_coin_Transactions_Hashes(p0, &data); + if( result == 0){ + __out_hashes->data = data.data; + __out_hashes->count = data.len; + } + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_UxOut_Hash(coin__UxOut* ux, cipher_SHA256* sha){ + GoUint32 result = SKY_coin_UxOut_Hash(ux, sha); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_cipher_AddSHA256(cipher_SHA256* p0, cipher_SHA256* p1, cipher_SHA256* p2){ + GoUint32 result = SKY_cipher_AddSHA256(p0,p1,p2); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_GetTransactionObject(Transaction__Handle tx, coin__Transaction *p1){ + GoUint32 result = SKY_coin_GetTransactionObject(tx,&p1); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_UxBody_Hash(coin__UxBody* p0, cipher_SHA256* p1){ + GoUint32 result = SKY_coin_UxBody_Hash(p0,p1); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_UxOut_SnapshotHash(coin__UxOut* p0, cipher_SHA256* p1){ + GoUint32 result = SKY_coin_UxOut_SnapshotHash(p0,p1); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_fee_TransactionFee(Transaction__Handle handle , GoUint64 p1,coin_UxOutArray* __uxIn, GoUint64* p3){ + GoSlice_ dataIn; + dataIn.data = __uxIn->data; + dataIn.len = __uxIn->count; + dataIn.cap = __uxIn->count; + GoUint32 result = SKY_fee_TransactionFee(handle, p1,&dataIn,p3); + return result; + }; + + + GoUint32 CSharp_skycoin_SKY_cipher_CheckSecKeyHash(cipher_SecKey *s, cipher_SHA256* sha){ + GoUint32 result = SKY_cipher_CheckSecKeyHash(s, sha); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_NewBlock(Block__Handle p0, GoUint64 p1, cipher_SHA256* p2, Transactions__Handle p3, FeeCalculator* p4, Block__Handle* p5){ + GoUint32 result = SKY_coin_NewBlock(p0, p1,p2,p3,p4,p5); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_Block_HashHeader(Block__Handle p0, cipher_SHA256* p1){ + GoUint32 result = SKY_coin_Block_HashHeader(p0, p1); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_BlockBody_Hash(BlockBody__Handle p0, cipher_SHA256* p1){ + GoUint32 result = SKY_coin_BlockBody_Hash(p0, p1); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_BlockHeader_Hash(BlockHeader__Handle p0, cipher_SHA256* p1){ + GoUint32 result = SKY_coin_BlockHeader_Hash(p0, p1); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_Block_HashBody(Block__Handle p0, cipher_SHA256* p1){ + GoUint32 result = SKY_coin_Block_HashBody(p0, p1); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_BlockHeader_UxHash(BlockHeader__Handle p0, cipher_SHA256* p1){ + GoUint32 result = SKY_coin_BlockHeader_UxHash(p0, p1); + return result; + } + + + GoUint32 CSharp_skycoin_SKY_coin_VerifyInputSignatures(Transaction__Handle handle , coin_UxOutArray* __uxIn){ + coin__UxArray dataIn; + dataIn.data = __uxIn->data; + dataIn.len = __uxIn->count; + dataIn.cap = __uxIn->count; + GoUint32 result = SKY_coin_VerifyInputSignatures(handle,&dataIn); + return result; + }; + + + +GoUint32_ _WrapperFeeCalculator(Transaction__Handle handle, GoUint64_* pFee, void* context){ + FeeCalcFunc* feeCalc = (FeeCalcFunc*)context; + int *result = callFeeCalculator(feeCalc, handle, pFee); + GoUint32_ error = 0; + if(result != 0) + return error; + return 0; +} + +SWIGINTERN int cipher_PubKey_isEqual(cipher_PubKey *self,cipher_PubKey *a){ + return memcmp(self->data, a->data, sizeof(a->data)) == 0; + } +SWIGINTERN void cipher_PubKey_assignFrom(cipher_PubKey *self,cipher_PubKey *data){ + memcpy(&self->data, data->data, sizeof(self->data)); + } +SWIGINTERN void cipher_PubKey_assignTo(cipher_PubKey *self,cipher_PubKey *data){ + memcpy(data->data, &self->data, sizeof(self->data)); + } +SWIGINTERN void cipher_PubKey_assignSlice(cipher_PubKey *self,GoSlice slice){ + memcpy((void *) &self->data, slice.data, 33); + } +SWIGINTERN GoSlice cipher_PubKey_toSlice(cipher_PubKey *self){ + GoSlice buffer = {self, sizeof(self->data), sizeof(self->data)}; + return buffer; + } +SWIGINTERN int cipher_SecKey_isEqual(cipher_SecKey *self,cipher_SecKey *a){ + return memcmp(self->data, a->data, sizeof(a->data)) == 0; + } +SWIGINTERN void cipher_SecKey_assignFrom(cipher_SecKey *self,void *data){ + memcpy(&self->data, data, sizeof(self->data)); + } +SWIGINTERN void cipher_SecKey_assignTo(cipher_SecKey *self,void *data){ + memcpy(data, &self->data, sizeof(self->data)); + } +SWIGINTERN int cipher_Ripemd160_isEqual(cipher_Ripemd160 *self,cipher_Ripemd160 *a){ + return memcmp(self->data, a->data, sizeof(a->data)) == 0; + } +SWIGINTERN void cipher_Ripemd160_assignFrom(cipher_Ripemd160 *self,void *data){ + memcpy(&self->data, data, sizeof(self->data)); + } +SWIGINTERN void cipher_Ripemd160_assignTo(cipher_Ripemd160 *self,void *data){ + memcpy(data, &self->data, sizeof(self->data)); + } +SWIGINTERN int cipher_Sig_isEqual(cipher_Sig *self,cipher_Sig *a){ + return memcmp(self->data, a->data, sizeof(a->data)) == 0; + } +SWIGINTERN void cipher_Sig_assignFrom(cipher_Sig *self,void *data){ + memcpy(&self->data, data, sizeof(self->data)); + } +SWIGINTERN void cipher_Sig_assignTo(cipher_Sig *self,void *data){ + memcpy(data, &self->data, sizeof(self->data)); + } +SWIGINTERN int cipher_SHA256_isEqual(cipher_SHA256 *self,cipher_SHA256 *a){ + return memcmp(self->data, a->data, sizeof(a->data)) == 0; + } +SWIGINTERN void cipher_SHA256_assignFrom(cipher_SHA256 *self,cipher_SHA256 *data){ + memcpy(&self->data, data->data, sizeof(self->data)); + } +SWIGINTERN void cipher_SHA256_assignTo(cipher_SHA256 *self,cipher_SHA256 *data){ + memcpy(data->data, &self->data, sizeof(self->data)); + } +SWIGINTERN _GoString_ cipher_SHA256_getStr(cipher_SHA256 *self){ + _GoString_ str; + str.p = (const char*)self->data; + str.n = strlen(str.p); + return str; + } +SWIGINTERN int cipher_Checksum_isEqual(cipher_Checksum *self,cipher_Checksum *a){ + return memcmp(self->data, a->data, sizeof(a->data)) == 0; + } +SWIGINTERN void cipher_Checksum_assignFrom(cipher_Checksum *self,void *data){ + memcpy(&self->data, data, sizeof(self->data)); + } +SWIGINTERN void cipher_Checksum_assignTo(cipher_Checksum *self,void *data){ + memcpy(data, &self->data, sizeof(self->data)); + } +SWIGINTERN cipher_SecKey *cipher_SecKeys_getAt(cipher_SecKeys *self,int i){ + if( i < self->count ){ + return &self->data[i]; + } + else + return NULL; + } +SWIGINTERN int cipher_SecKeys_setAt(cipher_SecKeys *self,int i,cipher_SecKey *seckey){ + if( i < self->count){ + memcpy(&self->data[i], seckey, sizeof(*seckey)); + return i; + } else { + return -1; + } + } +SWIGINTERN int cipher_SecKeys_isEqual(cipher_SecKeys *self,cipher_SecKeys *a){ + return self->count == a->count && memcmp(self->data, a->data, sizeof(cipher_SecKey) * self->count) == 0; + } +SWIGINTERN void cipher_SecKeys_allocate(cipher_SecKeys *self,int n){ + self->data = malloc(n * sizeof(*(self->data))); + self->count = n; + } +SWIGINTERN void cipher_SecKeys_release(cipher_SecKeys *self){ + destroy_cipher_SecKeys(self); + } +SWIGINTERN cipher_PubKey *cipher_PubKeys_getAt(cipher_PubKeys *self,int i){ + if( i < self->count ){ + return &self->data[i]; + } + else + return NULL; + } +SWIGINTERN int cipher_PubKeys_setAt(cipher_PubKeys *self,int i,cipher_PubKey *pubkey){ + if( i < self->count){ + memcpy(&self->data[i], pubkey, sizeof(*pubkey)); + return i; + } else { + return -1; + } + } +SWIGINTERN int cipher_PubKeys_isEqual(cipher_PubKeys *self,cipher_PubKeys *a){ + return self->count == a->count && memcmp(self->data, a->data, sizeof(cipher_PubKey) * self->count) == 0; + } +SWIGINTERN void cipher_PubKeys_allocate(cipher_PubKeys *self,int n){ + self->data = malloc(n * sizeof(*(self->data))); + self->count = n; + } +SWIGINTERN void cipher_PubKeys_release(cipher_PubKeys *self){ + if(self->data != NULL) + free(self->data); + } +SWIGINTERN cipher_SHA256 *cipher_SHA256s_getAt(cipher_SHA256s *self,int i){ + if( i < self->count ){ + return &self->data[i]; + } + else + return NULL; + } +SWIGINTERN int cipher_SHA256s_setAt(cipher_SHA256s *self,int i,cipher_SHA256 *hash){ + if( i < self->count){ + memcpy(&self->data[i], hash, sizeof(*hash)); + return i; + } else { + return -1; + } + } +SWIGINTERN int cipher_SHA256s_isEqual(cipher_SHA256s *self,cipher_SHA256s *a){ + return self->count == a->count && memcmp(self->data, a->data, sizeof(cipher_SHA256) * self->count) == 0; + } +SWIGINTERN void cipher_SHA256s_allocate(cipher_SHA256s *self,int n){ + self->data = malloc(n * sizeof(*(self->data))); + self->count = n; + } +SWIGINTERN void cipher_SHA256s_release(cipher_SHA256s *self){ + if(self->data != NULL) free(self->data); + } +SWIGINTERN coin__UxOut *coin_UxOutArray_getAt(coin_UxOutArray *self,int i){ + if( i < self->count ){ + return &self->data[i]; + } + else + return NULL; + } +SWIGINTERN int coin_UxOutArray_setAt(coin_UxOutArray *self,int i,coin__UxOut *uxout){ + if( i < self->count){ + memcpy(&self->data[i], uxout, sizeof(*uxout)); + return i; + } else { + return -1; + } + } +SWIGINTERN int coin_UxOutArray_isEqual(coin_UxOutArray *self,coin_UxOutArray *a){ + return self->count == a->count && memcmp(self->data, a->data, sizeof(coin__UxOut) * self->count) == 0; + } +SWIGINTERN void coin_UxOutArray_allocate(coin_UxOutArray *self,int n){ + self->data = malloc(n * sizeof(*(self->data))); + self->count = n; + } +SWIGINTERN void coin_UxOutArray_append(coin_UxOutArray *self,coin__UxOut *uxout){ + int n = self->count+1; + self->data = malloc(n * sizeof(*(self->data))); + self->count =n ; + memcpy(&self->data[n-1], uxout, sizeof(*uxout)); + + } +SWIGINTERN void coin_UxOutArray_release(coin_UxOutArray *self){ + if(self->data != NULL) + free(self->data); + } +SWIGINTERN cipher__Address *cipher_Addresses_getAt(cipher_Addresses *self,int i){ + if( i < self->count ){ + return &self->data[i]; + } + else + return NULL; + } +SWIGINTERN int cipher_Addresses_setAt(cipher_Addresses *self,int i,cipher_Addresses *addr){ + if( i < self->count){ + memcpy(&self->data[i], addr, sizeof(*addr)); + return i; + } else { + return -1; + } + } +SWIGINTERN int cipher_Addresses_isEqual(cipher_Addresses *self,cipher_Addresses *a){ + return self->count == a->count && memcmp(self->data, a->data, sizeof(cipher__Address) * self->count) == 0; + } +SWIGINTERN void cipher_Addresses_allocate(cipher_Addresses *self,int n){ + self->data = malloc(n * sizeof(*(self->data))); + self->count = n; + } +SWIGINTERN void cipher_Addresses_release(cipher_Addresses *self){ + if(self->data != NULL) + free(self->data); + } +SWIGINTERN int _GoString__SetString(_GoString_ *self,char *str){ + self->p = str; + self->n = strlen(str); + } +SWIGINTERN char *_GoString__getString(_GoString_ *self){ + return (const char *)self->p; + } +SWIGINTERN int _GoString__isEqual(_GoString_ *self,_GoString_ *string2){ + return (self->n == string2->n) && + (strcmp((char *)self->p, (char *)string2->p) == 0); +} +SWIGINTERN int GoSlice_isEqual(GoSlice *self,GoSlice *slice){ + return ((self->len == slice->len)) && (memcmp(self->data,slice->data, sizeof(GoSlice_))==0 ); + } +SWIGINTERN void GoSlice_convertString(GoSlice *self,_GoString_ data){ + self->data = data.p; + self->len = strlen(data.p); + self->cap = self->len; + } +SWIGINTERN void GoSlice_setAtChar(GoSlice *self,char p,unsigned long long i){ + ((char *) self->data)[i] = p; + } +SWIGINTERN void GoSlice_getString(GoSlice *self,_GoString_ *out){ + out->p = (char *)self->data; + out->n = strlen((char *)self->data); +} +SWIGINTERN int GoSlice_getAtString(GoSlice *self,int index,_GoString_ *outs){ + int i; + _GoString_ *iStr; + char *out; + for (i = 0, iStr = (_GoString_ *)self->data; i < self->len; ++i, ++iStr) + { + if (index == i) + { + out = _GoString__getString(iStr); + _GoString__SetString(outs,out); + return 0; + } + } + return 1; +} +SWIGINTERN int cipher__Address_isEqual(cipher__Address *self,cipher__Address *a){ + if( self->Version == a->Version ){ + return memcmp(self->Key, a->Key, sizeof(a->Key)) == 0; + } + return 0; + } +SWIGINTERN char cipher__Address_getVersion(cipher__Address *self){ + return self->Version; + } +SWIGINTERN void cipher__Address_setVersion(cipher__Address *self,char pValue){ + self->Version = pValue; + } +SWIGINTERN int cipher__BitcoinAddress_isEqual(cipher__BitcoinAddress *self,cipher__BitcoinAddress *a){ + if( self->Version == a->Version ){ + return memcmp(self->Key, a->Key, sizeof(a->Key)) == 0; + } + return 0; + } +SWIGINTERN int coin__Transaction_isEqual(coin__Transaction *self,coin__Transaction *t){ + return equalTransactions(self, t); + } +SWIGINTERN cipher_SHA256 coin__Transaction_GetInnerHash(coin__Transaction *self){ + cipher_SHA256 h; + cipher_SHA256_assignFrom(&h,self->InnerHash); + return h; + } +SWIGINTERN int coin__Transaction_setInnerHash(coin__Transaction *self,cipher_SHA256 h){ + memset(self->InnerHash, 0, sizeof(cipher__SHA256)); + cipher_SHA256_assignFrom(self->InnerHash,&h); + return 0; + } +SWIGINTERN int coin__TransactionOutput_isEqual(coin__TransactionOutput *self,coin__TransactionOutput *t){ + if( self->Coins != t->Coins || + self->Hours != t->Hours ){ + return 0; + } + + if(memcmp(&self->Address, &t->Address, sizeof(cipher__Address)) != 0) + return 0; + return 1; + } +SWIGINTERN int coin__BlockHeader_isEqual(coin__BlockHeader *self,coin__BlockHeader *bh){ + return equalBlockHeaders(self, bh); + } +SWIGINTERN int coin__BlockBody_isEqual(coin__BlockBody *self,coin__BlockBody *b){ + return equalTransactionsArrays(&self->Transactions, &b->Transactions); + } +SWIGINTERN void coin__UxBody_SetSrcTransaction(coin__UxBody *self,cipher_SHA256 *o){ + cipher_SHA256* p = (cipher_SHA256*)o; + memcpy( &self->SrcTransaction, &p->data, sizeof(cipher__SHA256)); + } +SWIGINTERN int coin__UxOut_isEqual(coin__UxOut *self,coin__UxOut *u){ + return memcmp(&self, u, sizeof(coin__UxOut)) == 0; + } + +#ifdef __cplusplus +extern "C" { +#endif + +SWIGEXPORT int SWIGSTDCALL CSharp_skycoin_equalSlices(void * jarg1, void * jarg2, int jarg3) { + int jresult ; + GoSlice *arg1 = (GoSlice *) 0 ; + GoSlice *arg2 = (GoSlice *) 0 ; + int arg3 ; + int result; + + arg1 = (GoSlice *)jarg1; + arg2 = (GoSlice *)jarg2; + arg3 = (int)jarg3; + result = (int)equalSlices(arg1,arg2,arg3); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_skycoin_equalTransactions(void * jarg1, void * jarg2) { + int jresult ; + coin__Transaction *arg1 = (coin__Transaction *) 0 ; + coin__Transaction *arg2 = (coin__Transaction *) 0 ; + int result; + + arg1 = (coin__Transaction *)jarg1; + arg2 = (coin__Transaction *)jarg2; + result = (int)equalTransactions(arg1,arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_skycoin_equalTransactionsArrays(void * jarg1, void * jarg2) { + int jresult ; + coin__Transactions *arg1 = (coin__Transactions *) 0 ; + coin__Transactions *arg2 = (coin__Transactions *) 0 ; + int result; + + arg1 = (coin__Transactions *)jarg1; + arg2 = (coin__Transactions *)jarg2; + result = (int)equalTransactionsArrays(arg1,arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_skycoin_equalBlockHeaders(void * jarg1, void * jarg2) { + int jresult ; + coin__BlockHeader *arg1 = (coin__BlockHeader *) 0 ; + coin__BlockHeader *arg2 = (coin__BlockHeader *) 0 ; + int result; + + arg1 = (coin__BlockHeader *)jarg1; + arg2 = (coin__BlockHeader *)jarg2; + result = (int)equalBlockHeaders(arg1,arg2); + jresult = result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_destroy_cipher_SecKeys(void * jarg1) { + cipher_SecKeys *arg1 = (cipher_SecKeys *) 0 ; + + arg1 = (cipher_SecKeys *)jarg1; + destroy_cipher_SecKeys(arg1); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_GoSlicep() { + void * jresult ; + GoSlice *result = 0 ; + + result = (GoSlice *)new_GoSlicep(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_GoSlicep(void * jarg1) { + void * jresult ; + GoSlice arg1 ; + GoSlice *argp1 ; + GoSlice *result = 0 ; + + argp1 = (GoSlice *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null GoSlice", 0); + return 0; + } + arg1 = *argp1; + result = (GoSlice *)copy_GoSlicep(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_GoSlicep(void * jarg1) { + GoSlice *arg1 = (GoSlice *) 0 ; + + arg1 = (GoSlice *)jarg1; + delete_GoSlicep(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_GoSlicep_assign(void * jarg1, void * jarg2) { + GoSlice *arg1 = (GoSlice *) 0 ; + GoSlice arg2 ; + GoSlice *argp2 ; + + arg1 = (GoSlice *)jarg1; + argp2 = (GoSlice *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null GoSlice", 0); + return ; + } + arg2 = *argp2; + GoSlicep_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_GoSlicep_value(void * jarg1) { + void * jresult ; + GoSlice *arg1 = (GoSlice *) 0 ; + GoSlice result; + + arg1 = (GoSlice *)jarg1; + result = GoSlicep_value(arg1); + { + GoSlice * resultptr = (GoSlice *) malloc(sizeof(GoSlice)); + memmove(resultptr, &result, sizeof(GoSlice)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_GoUint8Ptr() { + void * jresult ; + GoUint8_ *result = 0 ; + + result = (GoUint8_ *)new_GoUint8Ptr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_GoUint8Ptr(unsigned char jarg1) { + void * jresult ; + GoUint8_ arg1 ; + GoUint8_ *result = 0 ; + + arg1 = (GoUint8_)jarg1; + result = (GoUint8_ *)copy_GoUint8Ptr(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_GoUint8Ptr(void * jarg1) { + GoUint8_ *arg1 = (GoUint8_ *) 0 ; + + arg1 = (GoUint8_ *)jarg1; + delete_GoUint8Ptr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_GoUint8Ptr_assign(void * jarg1, unsigned char jarg2) { + GoUint8_ *arg1 = (GoUint8_ *) 0 ; + GoUint8_ arg2 ; + + arg1 = (GoUint8_ *)jarg1; + arg2 = (GoUint8_)jarg2; + GoUint8Ptr_assign(arg1,arg2); +} + + +SWIGEXPORT unsigned char SWIGSTDCALL CSharp_skycoin_GoUint8Ptr_value(void * jarg1) { + unsigned char jresult ; + GoUint8_ *arg1 = (GoUint8_ *) 0 ; + GoUint8_ result; + + arg1 = (GoUint8_ *)jarg1; + result = GoUint8Ptr_value(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_GoStringp() { + void * jresult ; + _GoString_ *result = 0 ; + + result = (_GoString_ *)new_GoStringp(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_GoStringp(void * jarg1) { + void * jresult ; + _GoString_ arg1 ; + _GoString_ *argp1 ; + _GoString_ *result = 0 ; + + argp1 = (_GoString_ *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null _GoString_", 0); + return 0; + } + arg1 = *argp1; + result = (_GoString_ *)copy_GoStringp(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_GoStringp(void * jarg1) { + _GoString_ *arg1 = (_GoString_ *) 0 ; + + arg1 = (_GoString_ *)jarg1; + delete_GoStringp(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_GoStringp_assign(void * jarg1, void * jarg2) { + _GoString_ *arg1 = (_GoString_ *) 0 ; + _GoString_ arg2 ; + _GoString_ *argp2 ; + + arg1 = (_GoString_ *)jarg1; + argp2 = (_GoString_ *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null _GoString_", 0); + return ; + } + arg2 = *argp2; + GoStringp_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_GoStringp_value(void * jarg1) { + void * jresult ; + _GoString_ *arg1 = (_GoString_ *) 0 ; + _GoString_ result; + + arg1 = (_GoString_ *)jarg1; + result = GoStringp_value(arg1); + { + _GoString_ * resultptr = (_GoString_ *) malloc(sizeof(_GoString_)); + memmove(resultptr, &result, sizeof(_GoString_)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_intp() { + void * jresult ; + int *result = 0 ; + + result = (int *)new_intp(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_intp(int jarg1) { + void * jresult ; + int arg1 ; + int *result = 0 ; + + arg1 = (int)jarg1; + result = (int *)copy_intp(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_intp(void * jarg1) { + int *arg1 = (int *) 0 ; + + arg1 = (int *)jarg1; + delete_intp(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_intp_assign(void * jarg1, int jarg2) { + int *arg1 = (int *) 0 ; + int arg2 ; + + arg1 = (int *)jarg1; + arg2 = (int)jarg2; + intp_assign(arg1,arg2); +} + + +SWIGEXPORT int SWIGSTDCALL CSharp_skycoin_intp_value(void * jarg1) { + int jresult ; + int *arg1 = (int *) 0 ; + int result; + + arg1 = (int *)jarg1; + result = (int)intp_value(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_GoUint32Ptr() { + void * jresult ; + unsigned int *result = 0 ; + + result = (unsigned int *)new_GoUint32Ptr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_GoUint32Ptr(unsigned int jarg1) { + void * jresult ; + unsigned int arg1 ; + unsigned int *result = 0 ; + + arg1 = (unsigned int)jarg1; + result = (unsigned int *)copy_GoUint32Ptr(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_GoUint32Ptr(void * jarg1) { + unsigned int *arg1 = (unsigned int *) 0 ; + + arg1 = (unsigned int *)jarg1; + delete_GoUint32Ptr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_GoUint32Ptr_assign(void * jarg1, unsigned int jarg2) { + unsigned int *arg1 = (unsigned int *) 0 ; + unsigned int arg2 ; + + arg1 = (unsigned int *)jarg1; + arg2 = (unsigned int)jarg2; + GoUint32Ptr_assign(arg1,arg2); +} + + +SWIGEXPORT unsigned int SWIGSTDCALL CSharp_skycoin_GoUint32Ptr_value(void * jarg1) { + unsigned int jresult ; + unsigned int *arg1 = (unsigned int *) 0 ; + unsigned int result; + + arg1 = (unsigned int *)jarg1; + result = (unsigned int)GoUint32Ptr_value(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_coin__Transactionp() { + void * jresult ; + coin__Transaction *result = 0 ; + + result = (coin__Transaction *)new_coin__Transactionp(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_coin__Transactionp(void * jarg1) { + void * jresult ; + coin__Transaction arg1 ; + coin__Transaction *argp1 ; + coin__Transaction *result = 0 ; + + argp1 = (coin__Transaction *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null coin__Transaction", 0); + return 0; + } + arg1 = *argp1; + result = (coin__Transaction *)copy_coin__Transactionp(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_coin__Transactionp(void * jarg1) { + coin__Transaction *arg1 = (coin__Transaction *) 0 ; + + arg1 = (coin__Transaction *)jarg1; + delete_coin__Transactionp(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_coin__Transactionp_assign(void * jarg1, void * jarg2) { + coin__Transaction *arg1 = (coin__Transaction *) 0 ; + coin__Transaction arg2 ; + coin__Transaction *argp2 ; + + arg1 = (coin__Transaction *)jarg1; + argp2 = (coin__Transaction *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null coin__Transaction", 0); + return ; + } + arg2 = *argp2; + coin__Transactionp_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_coin__Transactionp_value(void * jarg1) { + void * jresult ; + coin__Transaction *arg1 = (coin__Transaction *) 0 ; + coin__Transaction result; + + arg1 = (coin__Transaction *)jarg1; + result = coin__Transactionp_value(arg1); + { + coin__Transaction * resultptr = (coin__Transaction *) malloc(sizeof(coin__Transaction)); + memmove(resultptr, &result, sizeof(coin__Transaction)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_AddressUxOuts__HandlePtr() { + void * jresult ; + AddressUxOuts_Handle *result = 0 ; + + result = (AddressUxOuts_Handle *)new_AddressUxOuts__HandlePtr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_AddressUxOuts__HandlePtr(void * jarg1) { + void * jresult ; + AddressUxOuts_Handle arg1 ; + AddressUxOuts_Handle *argp1 ; + AddressUxOuts_Handle *result = 0 ; + + argp1 = (AddressUxOuts_Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null AddressUxOuts_Handle", 0); + return 0; + } + arg1 = *argp1; + result = (AddressUxOuts_Handle *)copy_AddressUxOuts__HandlePtr(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_AddressUxOuts__HandlePtr(void * jarg1) { + AddressUxOuts_Handle *arg1 = (AddressUxOuts_Handle *) 0 ; + + arg1 = (AddressUxOuts_Handle *)jarg1; + delete_AddressUxOuts__HandlePtr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_AddressUxOuts__HandlePtr_assign(void * jarg1, void * jarg2) { + AddressUxOuts_Handle *arg1 = (AddressUxOuts_Handle *) 0 ; + AddressUxOuts_Handle arg2 ; + AddressUxOuts_Handle *argp2 ; + + arg1 = (AddressUxOuts_Handle *)jarg1; + argp2 = (AddressUxOuts_Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null AddressUxOuts_Handle", 0); + return ; + } + arg2 = *argp2; + AddressUxOuts__HandlePtr_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_AddressUxOuts__HandlePtr_value(void * jarg1) { + void * jresult ; + AddressUxOuts_Handle *arg1 = (AddressUxOuts_Handle *) 0 ; + AddressUxOuts_Handle result; + + arg1 = (AddressUxOuts_Handle *)jarg1; + result = AddressUxOuts__HandlePtr_value(arg1); + { + AddressUxOuts_Handle * resultptr = (AddressUxOuts_Handle *) malloc(sizeof(AddressUxOuts_Handle)); + memmove(resultptr, &result, sizeof(AddressUxOuts_Handle)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_GoUint64p() { + void * jresult ; + unsigned long long *result = 0 ; + + result = (unsigned long long *)new_GoUint64p(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_GoUint64p(unsigned long long jarg1) { + void * jresult ; + unsigned long long arg1 ; + unsigned long long *result = 0 ; + + arg1 = (unsigned long long)jarg1; + result = (unsigned long long *)copy_GoUint64p(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_GoUint64p(void * jarg1) { + unsigned long long *arg1 = (unsigned long long *) 0 ; + + arg1 = (unsigned long long *)jarg1; + delete_GoUint64p(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_GoUint64p_assign(void * jarg1, unsigned long long jarg2) { + unsigned long long *arg1 = (unsigned long long *) 0 ; + unsigned long long arg2 ; + + arg1 = (unsigned long long *)jarg1; + arg2 = (unsigned long long)jarg2; + GoUint64p_assign(arg1,arg2); +} + + +SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_skycoin_GoUint64p_value(void * jarg1) { + unsigned long long jresult ; + unsigned long long *arg1 = (unsigned long long *) 0 ; + unsigned long long result; + + arg1 = (unsigned long long *)jarg1; + result = (unsigned long long)GoUint64p_value(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Gointp() { + void * jresult ; + long long *result = 0 ; + + result = (long long *)new_Gointp(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Gointp(long long jarg1) { + void * jresult ; + long long arg1 ; + long long *result = 0 ; + + arg1 = (long long)jarg1; + result = (long long *)copy_Gointp(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Gointp(void * jarg1) { + long long *arg1 = (long long *) 0 ; + + arg1 = (long long *)jarg1; + delete_Gointp(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Gointp_assign(void * jarg1, long long jarg2) { + long long *arg1 = (long long *) 0 ; + long long arg2 ; + + arg1 = (long long *)jarg1; + arg2 = (long long)jarg2; + Gointp_assign(arg1,arg2); +} + + +SWIGEXPORT long long SWIGSTDCALL CSharp_skycoin_Gointp_value(void * jarg1) { + long long jresult ; + long long *arg1 = (long long *) 0 ; + long long result; + + arg1 = (long long *)jarg1; + result = (long long)Gointp_value(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_GoUint16p() { + void * jresult ; + unsigned short *result = 0 ; + + result = (unsigned short *)new_GoUint16p(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_GoUint16p(unsigned short jarg1) { + void * jresult ; + unsigned short arg1 ; + unsigned short *result = 0 ; + + arg1 = (unsigned short)jarg1; + result = (unsigned short *)copy_GoUint16p(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_GoUint16p(void * jarg1) { + unsigned short *arg1 = (unsigned short *) 0 ; + + arg1 = (unsigned short *)jarg1; + delete_GoUint16p(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_GoUint16p_assign(void * jarg1, unsigned short jarg2) { + unsigned short *arg1 = (unsigned short *) 0 ; + unsigned short arg2 ; + + arg1 = (unsigned short *)jarg1; + arg2 = (unsigned short)jarg2; + GoUint16p_assign(arg1,arg2); +} + + +SWIGEXPORT unsigned short SWIGSTDCALL CSharp_skycoin_GoUint16p_value(void * jarg1) { + unsigned short jresult ; + unsigned short *arg1 = (unsigned short *) 0 ; + unsigned short result; + + arg1 = (unsigned short *)jarg1; + result = (unsigned short)GoUint16p_value(arg1); + jresult = result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_cipher__Addressp() { + void * jresult ; + cipher__Address *result = 0 ; + + result = (cipher__Address *)new_cipher__Addressp(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_cipher__Addressp(void * jarg1) { + void * jresult ; + cipher__Address arg1 ; + cipher__Address *argp1 ; + cipher__Address *result = 0 ; + + argp1 = (cipher__Address *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null cipher__Address", 0); + return 0; + } + arg1 = *argp1; + result = (cipher__Address *)copy_cipher__Addressp(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_cipher__Addressp(void * jarg1) { + cipher__Address *arg1 = (cipher__Address *) 0 ; + + arg1 = (cipher__Address *)jarg1; + delete_cipher__Addressp(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_cipher__Addressp_assign(void * jarg1, void * jarg2) { + cipher__Address *arg1 = (cipher__Address *) 0 ; + cipher__Address arg2 ; + cipher__Address *argp2 ; + + arg1 = (cipher__Address *)jarg1; + argp2 = (cipher__Address *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null cipher__Address", 0); + return ; + } + arg2 = *argp2; + cipher__Addressp_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_cipher__Addressp_value(void * jarg1) { + void * jresult ; + cipher__Address *arg1 = (cipher__Address *) 0 ; + cipher__Address result; + + arg1 = (cipher__Address *)jarg1; + result = cipher__Addressp_value(arg1); + { + cipher__Address * resultptr = (cipher__Address *) malloc(sizeof(cipher__Address)); + memmove(resultptr, &result, sizeof(cipher__Address)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Transactions__HandlePtr() { + void * jresult ; + Transactions__Handle *result = 0 ; + + result = (Transactions__Handle *)new_Transactions__HandlePtr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Transactions__HandlePtr(void * jarg1) { + void * jresult ; + Transactions__Handle arg1 ; + Transactions__Handle *argp1 ; + Transactions__Handle *result = 0 ; + + argp1 = (Transactions__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Transactions__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (Transactions__Handle *)copy_Transactions__HandlePtr(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Transactions__HandlePtr(void * jarg1) { + Transactions__Handle *arg1 = (Transactions__Handle *) 0 ; + + arg1 = (Transactions__Handle *)jarg1; + delete_Transactions__HandlePtr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Transactions__HandlePtr_assign(void * jarg1, void * jarg2) { + Transactions__Handle *arg1 = (Transactions__Handle *) 0 ; + Transactions__Handle arg2 ; + Transactions__Handle *argp2 ; + + arg1 = (Transactions__Handle *)jarg1; + argp2 = (Transactions__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Transactions__Handle", 0); + return ; + } + arg2 = *argp2; + Transactions__HandlePtr_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_Transactions__HandlePtr_value(void * jarg1) { + void * jresult ; + Transactions__Handle *arg1 = (Transactions__Handle *) 0 ; + Transactions__Handle result; + + arg1 = (Transactions__Handle *)jarg1; + result = Transactions__HandlePtr_value(arg1); + { + Transactions__Handle * resultptr = (Transactions__Handle *) malloc(sizeof(Transactions__Handle)); + memmove(resultptr, &result, sizeof(Transactions__Handle)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Transaction__Handlep() { + void * jresult ; + Transaction__Handle *result = 0 ; + + result = (Transaction__Handle *)new_Transaction__Handlep(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Transaction__Handlep(void * jarg1) { + void * jresult ; + Transaction__Handle arg1 ; + Transaction__Handle *argp1 ; + Transaction__Handle *result = 0 ; + + argp1 = (Transaction__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Transaction__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (Transaction__Handle *)copy_Transaction__Handlep(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Transaction__Handlep(void * jarg1) { + Transaction__Handle *arg1 = (Transaction__Handle *) 0 ; + + arg1 = (Transaction__Handle *)jarg1; + delete_Transaction__Handlep(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Transaction__Handlep_assign(void * jarg1, void * jarg2) { + Transaction__Handle *arg1 = (Transaction__Handle *) 0 ; + Transaction__Handle arg2 ; + Transaction__Handle *argp2 ; + + arg1 = (Transaction__Handle *)jarg1; + argp2 = (Transaction__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Transaction__Handle", 0); + return ; + } + arg2 = *argp2; + Transaction__Handlep_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_Transaction__Handlep_value(void * jarg1) { + void * jresult ; + Transaction__Handle *arg1 = (Transaction__Handle *) 0 ; + Transaction__Handle result; + + arg1 = (Transaction__Handle *)jarg1; + result = Transaction__Handlep_value(arg1); + { + Transaction__Handle * resultptr = (Transaction__Handle *) malloc(sizeof(Transaction__Handle)); + memmove(resultptr, &result, sizeof(Transaction__Handle)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Block__HandlePtr() { + void * jresult ; + Block__Handle *result = 0 ; + + result = (Block__Handle *)new_Block__HandlePtr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Block__HandlePtr(void * jarg1) { + void * jresult ; + Block__Handle arg1 ; + Block__Handle *argp1 ; + Block__Handle *result = 0 ; + + argp1 = (Block__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Block__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (Block__Handle *)copy_Block__HandlePtr(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Block__HandlePtr(void * jarg1) { + Block__Handle *arg1 = (Block__Handle *) 0 ; + + arg1 = (Block__Handle *)jarg1; + delete_Block__HandlePtr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Block__HandlePtr_assign(void * jarg1, void * jarg2) { + Block__Handle *arg1 = (Block__Handle *) 0 ; + Block__Handle arg2 ; + Block__Handle *argp2 ; + + arg1 = (Block__Handle *)jarg1; + argp2 = (Block__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Block__Handle", 0); + return ; + } + arg2 = *argp2; + Block__HandlePtr_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_Block__HandlePtr_value(void * jarg1) { + void * jresult ; + Block__Handle *arg1 = (Block__Handle *) 0 ; + Block__Handle result; + + arg1 = (Block__Handle *)jarg1; + result = Block__HandlePtr_value(arg1); + { + Block__Handle * resultptr = (Block__Handle *) malloc(sizeof(Block__Handle)); + memmove(resultptr, &result, sizeof(Block__Handle)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_BlockBody__HandlePtr() { + void * jresult ; + BlockBody__Handle *result = 0 ; + + result = (BlockBody__Handle *)new_BlockBody__HandlePtr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_BlockBody__HandlePtr(void * jarg1) { + void * jresult ; + BlockBody__Handle arg1 ; + BlockBody__Handle *argp1 ; + BlockBody__Handle *result = 0 ; + + argp1 = (BlockBody__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null BlockBody__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (BlockBody__Handle *)copy_BlockBody__HandlePtr(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_BlockBody__HandlePtr(void * jarg1) { + BlockBody__Handle *arg1 = (BlockBody__Handle *) 0 ; + + arg1 = (BlockBody__Handle *)jarg1; + delete_BlockBody__HandlePtr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_BlockBody__HandlePtr_assign(void * jarg1, void * jarg2) { + BlockBody__Handle *arg1 = (BlockBody__Handle *) 0 ; + BlockBody__Handle arg2 ; + BlockBody__Handle *argp2 ; + + arg1 = (BlockBody__Handle *)jarg1; + argp2 = (BlockBody__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null BlockBody__Handle", 0); + return ; + } + arg2 = *argp2; + BlockBody__HandlePtr_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_BlockBody__HandlePtr_value(void * jarg1) { + void * jresult ; + BlockBody__Handle *arg1 = (BlockBody__Handle *) 0 ; + BlockBody__Handle result; + + arg1 = (BlockBody__Handle *)jarg1; + result = BlockBody__HandlePtr_value(arg1); + { + BlockBody__Handle * resultptr = (BlockBody__Handle *) malloc(sizeof(BlockBody__Handle)); + memmove(resultptr, &result, sizeof(BlockBody__Handle)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_BlockHeader__HandlePtr() { + void * jresult ; + BlockHeader__Handle *result = 0 ; + + result = (BlockHeader__Handle *)new_BlockHeader__HandlePtr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_BlockHeader__HandlePtr(void * jarg1) { + void * jresult ; + BlockHeader__Handle arg1 ; + BlockHeader__Handle *argp1 ; + BlockHeader__Handle *result = 0 ; + + argp1 = (BlockHeader__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null BlockHeader__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (BlockHeader__Handle *)copy_BlockHeader__HandlePtr(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_BlockHeader__HandlePtr(void * jarg1) { + BlockHeader__Handle *arg1 = (BlockHeader__Handle *) 0 ; + + arg1 = (BlockHeader__Handle *)jarg1; + delete_BlockHeader__HandlePtr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_BlockHeader__HandlePtr_assign(void * jarg1, void * jarg2) { + BlockHeader__Handle *arg1 = (BlockHeader__Handle *) 0 ; + BlockHeader__Handle arg2 ; + BlockHeader__Handle *argp2 ; + + arg1 = (BlockHeader__Handle *)jarg1; + argp2 = (BlockHeader__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null BlockHeader__Handle", 0); + return ; + } + arg2 = *argp2; + BlockHeader__HandlePtr_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_BlockHeader__HandlePtr_value(void * jarg1) { + void * jresult ; + BlockHeader__Handle *arg1 = (BlockHeader__Handle *) 0 ; + BlockHeader__Handle result; + + arg1 = (BlockHeader__Handle *)jarg1; + result = BlockHeader__HandlePtr_value(arg1); + { + BlockHeader__Handle * resultptr = (BlockHeader__Handle *) malloc(sizeof(BlockHeader__Handle)); + memmove(resultptr, &result, sizeof(BlockHeader__Handle)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Signature_HandlePtr() { + void * jresult ; + Signature_Handle *result = 0 ; + + result = (Signature_Handle *)new_Signature_HandlePtr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Signature_HandlePtr(void * jarg1) { + void * jresult ; + Signature_Handle arg1 ; + Signature_Handle *argp1 ; + Signature_Handle *result = 0 ; + + argp1 = (Signature_Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Signature_Handle", 0); + return 0; + } + arg1 = *argp1; + result = (Signature_Handle *)copy_Signature_HandlePtr(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Signature_HandlePtr(void * jarg1) { + Signature_Handle *arg1 = (Signature_Handle *) 0 ; + + arg1 = (Signature_Handle *)jarg1; + delete_Signature_HandlePtr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Signature_HandlePtr_assign(void * jarg1, void * jarg2) { + Signature_Handle *arg1 = (Signature_Handle *) 0 ; + Signature_Handle arg2 ; + Signature_Handle *argp2 ; + + arg1 = (Signature_Handle *)jarg1; + argp2 = (Signature_Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Signature_Handle", 0); + return ; + } + arg2 = *argp2; + Signature_HandlePtr_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_Signature_HandlePtr_value(void * jarg1) { + void * jresult ; + Signature_Handle *arg1 = (Signature_Handle *) 0 ; + Signature_Handle result; + + arg1 = (Signature_Handle *)jarg1; + result = Signature_HandlePtr_value(arg1); + { + Signature_Handle * resultptr = (Signature_Handle *) malloc(sizeof(Signature_Handle)); + memmove(resultptr, &result, sizeof(Signature_Handle)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Number_HandlePtr() { + void * jresult ; + Number_Handle *result = 0 ; + + result = (Number_Handle *)new_Number_HandlePtr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Number_HandlePtr(void * jarg1) { + void * jresult ; + Number_Handle arg1 ; + Number_Handle *argp1 ; + Number_Handle *result = 0 ; + + argp1 = (Number_Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Number_Handle", 0); + return 0; + } + arg1 = *argp1; + result = (Number_Handle *)copy_Number_HandlePtr(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Number_HandlePtr(void * jarg1) { + Number_Handle *arg1 = (Number_Handle *) 0 ; + + arg1 = (Number_Handle *)jarg1; + delete_Number_HandlePtr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Number_HandlePtr_assign(void * jarg1, void * jarg2) { + Number_Handle *arg1 = (Number_Handle *) 0 ; + Number_Handle arg2 ; + Number_Handle *argp2 ; + + arg1 = (Number_Handle *)jarg1; + argp2 = (Number_Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Number_Handle", 0); + return ; + } + arg2 = *argp2; + Number_HandlePtr_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_Number_HandlePtr_value(void * jarg1) { + void * jresult ; + Number_Handle *arg1 = (Number_Handle *) 0 ; + Number_Handle result; + + arg1 = (Number_Handle *)jarg1; + result = Number_HandlePtr_value(arg1); + { + Number_Handle * resultptr = (Number_Handle *) malloc(sizeof(Number_Handle)); + memmove(resultptr, &result, sizeof(Number_Handle)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_WebRpcClient_HandlePtr() { + void * jresult ; + WebRpcClient__Handle *result = 0 ; + + result = (WebRpcClient__Handle *)new_WebRpcClient_HandlePtr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_WebRpcClient_HandlePtr(void * jarg1) { + void * jresult ; + WebRpcClient__Handle arg1 ; + WebRpcClient__Handle *argp1 ; + WebRpcClient__Handle *result = 0 ; + + argp1 = (WebRpcClient__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null WebRpcClient__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (WebRpcClient__Handle *)copy_WebRpcClient_HandlePtr(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_WebRpcClient_HandlePtr(void * jarg1) { + WebRpcClient__Handle *arg1 = (WebRpcClient__Handle *) 0 ; + + arg1 = (WebRpcClient__Handle *)jarg1; + delete_WebRpcClient_HandlePtr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_WebRpcClient_HandlePtr_assign(void * jarg1, void * jarg2) { + WebRpcClient__Handle *arg1 = (WebRpcClient__Handle *) 0 ; + WebRpcClient__Handle arg2 ; + WebRpcClient__Handle *argp2 ; + + arg1 = (WebRpcClient__Handle *)jarg1; + argp2 = (WebRpcClient__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null WebRpcClient__Handle", 0); + return ; + } + arg2 = *argp2; + WebRpcClient_HandlePtr_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_WebRpcClient_HandlePtr_value(void * jarg1) { + void * jresult ; + WebRpcClient__Handle *arg1 = (WebRpcClient__Handle *) 0 ; + WebRpcClient__Handle result; + + arg1 = (WebRpcClient__Handle *)jarg1; + result = WebRpcClient_HandlePtr_value(arg1); + { + WebRpcClient__Handle * resultptr = (WebRpcClient__Handle *) malloc(sizeof(WebRpcClient__Handle)); + memmove(resultptr, &result, sizeof(WebRpcClient__Handle)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Wallet__HandlePtr() { + void * jresult ; + Wallet__Handle *result = 0 ; + + result = (Wallet__Handle *)new_Wallet__HandlePtr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Wallet__HandlePtr(void * jarg1) { + void * jresult ; + Wallet__Handle arg1 ; + Wallet__Handle *argp1 ; + Wallet__Handle *result = 0 ; + + argp1 = (Wallet__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Wallet__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (Wallet__Handle *)copy_Wallet__HandlePtr(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Wallet__HandlePtr(void * jarg1) { + Wallet__Handle *arg1 = (Wallet__Handle *) 0 ; + + arg1 = (Wallet__Handle *)jarg1; + delete_Wallet__HandlePtr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Wallet__HandlePtr_assign(void * jarg1, void * jarg2) { + Wallet__Handle *arg1 = (Wallet__Handle *) 0 ; + Wallet__Handle arg2 ; + Wallet__Handle *argp2 ; + + arg1 = (Wallet__Handle *)jarg1; + argp2 = (Wallet__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Wallet__Handle", 0); + return ; + } + arg2 = *argp2; + Wallet__HandlePtr_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_Wallet__HandlePtr_value(void * jarg1) { + void * jresult ; + Wallet__Handle *arg1 = (Wallet__Handle *) 0 ; + Wallet__Handle result; + + arg1 = (Wallet__Handle *)jarg1; + result = Wallet__HandlePtr_value(arg1); + { + Wallet__Handle * resultptr = (Wallet__Handle *) malloc(sizeof(Wallet__Handle)); + memmove(resultptr, &result, sizeof(Wallet__Handle)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_ReadableWallet__HandlePtr() { + void * jresult ; + ReadableWallet__Handle *result = 0 ; + + result = (ReadableWallet__Handle *)new_ReadableWallet__HandlePtr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_ReadableWallet__HandlePtr(void * jarg1) { + void * jresult ; + ReadableWallet__Handle arg1 ; + ReadableWallet__Handle *argp1 ; + ReadableWallet__Handle *result = 0 ; + + argp1 = (ReadableWallet__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null ReadableWallet__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (ReadableWallet__Handle *)copy_ReadableWallet__HandlePtr(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_ReadableWallet__HandlePtr(void * jarg1) { + ReadableWallet__Handle *arg1 = (ReadableWallet__Handle *) 0 ; + + arg1 = (ReadableWallet__Handle *)jarg1; + delete_ReadableWallet__HandlePtr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_ReadableWallet__HandlePtr_assign(void * jarg1, void * jarg2) { + ReadableWallet__Handle *arg1 = (ReadableWallet__Handle *) 0 ; + ReadableWallet__Handle arg2 ; + ReadableWallet__Handle *argp2 ; + + arg1 = (ReadableWallet__Handle *)jarg1; + argp2 = (ReadableWallet__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null ReadableWallet__Handle", 0); + return ; + } + arg2 = *argp2; + ReadableWallet__HandlePtr_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_ReadableWallet__HandlePtr_value(void * jarg1) { + void * jresult ; + ReadableWallet__Handle *arg1 = (ReadableWallet__Handle *) 0 ; + ReadableWallet__Handle result; + + arg1 = (ReadableWallet__Handle *)jarg1; + result = ReadableWallet__HandlePtr_value(arg1); + { + ReadableWallet__Handle * resultptr = (ReadableWallet__Handle *) malloc(sizeof(ReadableWallet__Handle)); + memmove(resultptr, &result, sizeof(ReadableWallet__Handle)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_ReadableEntry__HandlePtr() { + void * jresult ; + ReadableEntry__Handle *result = 0 ; + + result = (ReadableEntry__Handle *)new_ReadableEntry__HandlePtr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_ReadableEntry__HandlePtr(void * jarg1) { + void * jresult ; + ReadableEntry__Handle arg1 ; + ReadableEntry__Handle *argp1 ; + ReadableEntry__Handle *result = 0 ; + + argp1 = (ReadableEntry__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null ReadableEntry__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (ReadableEntry__Handle *)copy_ReadableEntry__HandlePtr(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_ReadableEntry__HandlePtr(void * jarg1) { + ReadableEntry__Handle *arg1 = (ReadableEntry__Handle *) 0 ; + + arg1 = (ReadableEntry__Handle *)jarg1; + delete_ReadableEntry__HandlePtr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_ReadableEntry__HandlePtr_assign(void * jarg1, void * jarg2) { + ReadableEntry__Handle *arg1 = (ReadableEntry__Handle *) 0 ; + ReadableEntry__Handle arg2 ; + ReadableEntry__Handle *argp2 ; + + arg1 = (ReadableEntry__Handle *)jarg1; + argp2 = (ReadableEntry__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null ReadableEntry__Handle", 0); + return ; + } + arg2 = *argp2; + ReadableEntry__HandlePtr_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_ReadableEntry__HandlePtr_value(void * jarg1) { + void * jresult ; + ReadableEntry__Handle *arg1 = (ReadableEntry__Handle *) 0 ; + ReadableEntry__Handle result; + + arg1 = (ReadableEntry__Handle *)jarg1; + result = ReadableEntry__HandlePtr_value(arg1); + { + ReadableEntry__Handle * resultptr = (ReadableEntry__Handle *) malloc(sizeof(ReadableEntry__Handle)); + memmove(resultptr, &result, sizeof(ReadableEntry__Handle)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Options__HandlePtr() { + void * jresult ; + Options__Handle *result = 0 ; + + result = (Options__Handle *)new_Options__HandlePtr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Options__HandlePtr(void * jarg1) { + void * jresult ; + Options__Handle arg1 ; + Options__Handle *argp1 ; + Options__Handle *result = 0 ; + + argp1 = (Options__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Options__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (Options__Handle *)copy_Options__HandlePtr(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Options__HandlePtr(void * jarg1) { + Options__Handle *arg1 = (Options__Handle *) 0 ; + + arg1 = (Options__Handle *)jarg1; + delete_Options__HandlePtr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Options__HandlePtr_assign(void * jarg1, void * jarg2) { + Options__Handle *arg1 = (Options__Handle *) 0 ; + Options__Handle arg2 ; + Options__Handle *argp2 ; + + arg1 = (Options__Handle *)jarg1; + argp2 = (Options__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Options__Handle", 0); + return ; + } + arg2 = *argp2; + Options__HandlePtr_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_Options__HandlePtr_value(void * jarg1) { + void * jresult ; + Options__Handle *arg1 = (Options__Handle *) 0 ; + Options__Handle result; + + arg1 = (Options__Handle *)jarg1; + result = Options__HandlePtr_value(arg1); + { + Options__Handle * resultptr = (Options__Handle *) malloc(sizeof(Options__Handle)); + memmove(resultptr, &result, sizeof(Options__Handle)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Config__HandlePtr() { + void * jresult ; + Config__Handle *result = 0 ; + + result = (Config__Handle *)new_Config__HandlePtr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Config__HandlePtr(void * jarg1) { + void * jresult ; + Config__Handle arg1 ; + Config__Handle *argp1 ; + Config__Handle *result = 0 ; + + argp1 = (Config__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Config__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (Config__Handle *)copy_Config__HandlePtr(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Config__HandlePtr(void * jarg1) { + Config__Handle *arg1 = (Config__Handle *) 0 ; + + arg1 = (Config__Handle *)jarg1; + delete_Config__HandlePtr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Config__HandlePtr_assign(void * jarg1, void * jarg2) { + Config__Handle *arg1 = (Config__Handle *) 0 ; + Config__Handle arg2 ; + Config__Handle *argp2 ; + + arg1 = (Config__Handle *)jarg1; + argp2 = (Config__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Config__Handle", 0); + return ; + } + arg2 = *argp2; + Config__HandlePtr_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_Config__HandlePtr_value(void * jarg1) { + void * jresult ; + Config__Handle *arg1 = (Config__Handle *) 0 ; + Config__Handle result; + + arg1 = (Config__Handle *)jarg1; + result = Config__HandlePtr_value(arg1); + { + Config__Handle * resultptr = (Config__Handle *) malloc(sizeof(Config__Handle)); + memmove(resultptr, &result, sizeof(Config__Handle)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_CLI__HandlePtr() { + void * jresult ; + CLI__Handle *result = 0 ; + + result = (CLI__Handle *)new_CLI__HandlePtr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_CLI__HandlePtr(void * jarg1) { + void * jresult ; + CLI__Handle arg1 ; + CLI__Handle *argp1 ; + CLI__Handle *result = 0 ; + + argp1 = (CLI__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null CLI__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (CLI__Handle *)copy_CLI__HandlePtr(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_CLI__HandlePtr(void * jarg1) { + CLI__Handle *arg1 = (CLI__Handle *) 0 ; + + arg1 = (CLI__Handle *)jarg1; + delete_CLI__HandlePtr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_CLI__HandlePtr_assign(void * jarg1, void * jarg2) { + CLI__Handle *arg1 = (CLI__Handle *) 0 ; + CLI__Handle arg2 ; + CLI__Handle *argp2 ; + + arg1 = (CLI__Handle *)jarg1; + argp2 = (CLI__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null CLI__Handle", 0); + return ; + } + arg2 = *argp2; + CLI__HandlePtr_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_CLI__HandlePtr_value(void * jarg1) { + void * jresult ; + CLI__Handle *arg1 = (CLI__Handle *) 0 ; + CLI__Handle result; + + arg1 = (CLI__Handle *)jarg1; + result = CLI__HandlePtr_value(arg1); + { + CLI__Handle * resultptr = (CLI__Handle *) malloc(sizeof(CLI__Handle)); + memmove(resultptr, &result, sizeof(CLI__Handle)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Client__HandlePtr() { + void * jresult ; + Client__Handle *result = 0 ; + + result = (Client__Handle *)new_Client__HandlePtr(); + jresult = (void *)result; + return jresult; +} + -SWIGEXPORT int SWIGSTDCALL CSharp_skycoin_equalSlices(void * jarg1, void * jarg2, int jarg3) { - int jresult ; - GoSlice *arg1 = (GoSlice *) 0 ; - GoSlice *arg2 = (GoSlice *) 0 ; - int arg3 ; - int result; +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Client__HandlePtr(void * jarg1) { + void * jresult ; + Client__Handle arg1 ; + Client__Handle *argp1 ; + Client__Handle *result = 0 ; - arg1 = (GoSlice *)jarg1; - arg2 = (GoSlice *)jarg2; - arg3 = (int)jarg3; - result = (int)equalSlices(arg1,arg2,arg3); - jresult = result; + argp1 = (Client__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Client__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (Client__Handle *)copy_Client__HandlePtr(arg1); + jresult = (void *)result; return jresult; } -SWIGEXPORT int SWIGSTDCALL CSharp_skycoin_equalTransactions(void * jarg1, void * jarg2) { - int jresult ; - coin__Transaction *arg1 = (coin__Transaction *) 0 ; - coin__Transaction *arg2 = (coin__Transaction *) 0 ; - int result; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Client__HandlePtr(void * jarg1) { + Client__Handle *arg1 = (Client__Handle *) 0 ; - arg1 = (coin__Transaction *)jarg1; - arg2 = (coin__Transaction *)jarg2; - result = (int)equalTransactions(arg1,arg2); - jresult = result; + arg1 = (Client__Handle *)jarg1; + delete_Client__HandlePtr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Client__HandlePtr_assign(void * jarg1, void * jarg2) { + Client__Handle *arg1 = (Client__Handle *) 0 ; + Client__Handle arg2 ; + Client__Handle *argp2 ; + + arg1 = (Client__Handle *)jarg1; + argp2 = (Client__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Client__Handle", 0); + return ; + } + arg2 = *argp2; + Client__HandlePtr_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_Client__HandlePtr_value(void * jarg1) { + void * jresult ; + Client__Handle *arg1 = (Client__Handle *) 0 ; + Client__Handle result; + + arg1 = (Client__Handle *)jarg1; + result = Client__HandlePtr_value(arg1); + { + Client__Handle * resultptr = (Client__Handle *) malloc(sizeof(Client__Handle)); + memmove(resultptr, &result, sizeof(Client__Handle)); + jresult = resultptr; + } return jresult; } -SWIGEXPORT int SWIGSTDCALL CSharp_skycoin_equalTransactionsArrays(void * jarg1, void * jarg2) { - int jresult ; - coin__Transactions *arg1 = (coin__Transactions *) 0 ; - coin__Transactions *arg2 = (coin__Transactions *) 0 ; - int result; +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_WalletResponse__HandlePtr() { + void * jresult ; + WalletResponse__Handle *result = 0 ; - arg1 = (coin__Transactions *)jarg1; - arg2 = (coin__Transactions *)jarg2; - result = (int)equalTransactionsArrays(arg1,arg2); - jresult = result; + result = (WalletResponse__Handle *)new_WalletResponse__HandlePtr(); + jresult = (void *)result; return jresult; } -SWIGEXPORT int SWIGSTDCALL CSharp_skycoin_equalBlockHeaders(void * jarg1, void * jarg2) { - int jresult ; - coin__BlockHeader *arg1 = (coin__BlockHeader *) 0 ; - coin__BlockHeader *arg2 = (coin__BlockHeader *) 0 ; - int result; +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_WalletResponse__HandlePtr(void * jarg1) { + void * jresult ; + WalletResponse__Handle arg1 ; + WalletResponse__Handle *argp1 ; + WalletResponse__Handle *result = 0 ; - arg1 = (coin__BlockHeader *)jarg1; - arg2 = (coin__BlockHeader *)jarg2; - result = (int)equalBlockHeaders(arg1,arg2); - jresult = result; + argp1 = (WalletResponse__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null WalletResponse__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (WalletResponse__Handle *)copy_WalletResponse__HandlePtr(arg1); + jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_destroy_cipher_SecKeys(void * jarg1) { - cipher_SecKeys *arg1 = (cipher_SecKeys *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_WalletResponse__HandlePtr(void * jarg1) { + WalletResponse__Handle *arg1 = (WalletResponse__Handle *) 0 ; - arg1 = (cipher_SecKeys *)jarg1; - destroy_cipher_SecKeys(arg1); + arg1 = (WalletResponse__Handle *)jarg1; + delete_WalletResponse__HandlePtr(arg1); } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_GoSlicep() { +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_WalletResponse__HandlePtr_assign(void * jarg1, void * jarg2) { + WalletResponse__Handle *arg1 = (WalletResponse__Handle *) 0 ; + WalletResponse__Handle arg2 ; + WalletResponse__Handle *argp2 ; + + arg1 = (WalletResponse__Handle *)jarg1; + argp2 = (WalletResponse__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null WalletResponse__Handle", 0); + return ; + } + arg2 = *argp2; + WalletResponse__HandlePtr_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_WalletResponse__HandlePtr_value(void * jarg1) { void * jresult ; - GoSlice *result = 0 ; + WalletResponse__Handle *arg1 = (WalletResponse__Handle *) 0 ; + WalletResponse__Handle result; - result = (GoSlice *)new_GoSlicep(); + arg1 = (WalletResponse__Handle *)jarg1; + result = WalletResponse__HandlePtr_value(arg1); + { + WalletResponse__Handle * resultptr = (WalletResponse__Handle *) malloc(sizeof(WalletResponse__Handle)); + memmove(resultptr, &result, sizeof(WalletResponse__Handle)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_CreateTransactionRequest__HandlePtr() { + void * jresult ; + CreateTransactionRequest__Handle *result = 0 ; + + result = (CreateTransactionRequest__Handle *)new_CreateTransactionRequest__HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_GoSlicep(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_CreateTransactionRequest__HandlePtr(void * jarg1) { void * jresult ; - GoSlice arg1 ; - GoSlice *argp1 ; - GoSlice *result = 0 ; + CreateTransactionRequest__Handle arg1 ; + CreateTransactionRequest__Handle *argp1 ; + CreateTransactionRequest__Handle *result = 0 ; - argp1 = (GoSlice *)jarg1; + argp1 = (CreateTransactionRequest__Handle *)jarg1; if (!argp1) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null GoSlice", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null CreateTransactionRequest__Handle", 0); return 0; } arg1 = *argp1; - result = (GoSlice *)copy_GoSlicep(arg1); + result = (CreateTransactionRequest__Handle *)copy_CreateTransactionRequest__HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_GoSlicep(void * jarg1) { - GoSlice *arg1 = (GoSlice *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_CreateTransactionRequest__HandlePtr(void * jarg1) { + CreateTransactionRequest__Handle *arg1 = (CreateTransactionRequest__Handle *) 0 ; - arg1 = (GoSlice *)jarg1; - delete_GoSlicep(arg1); + arg1 = (CreateTransactionRequest__Handle *)jarg1; + delete_CreateTransactionRequest__HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_GoSlicep_assign(void * jarg1, void * jarg2) { - GoSlice *arg1 = (GoSlice *) 0 ; - GoSlice arg2 ; - GoSlice *argp2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_CreateTransactionRequest__HandlePtr_assign(void * jarg1, void * jarg2) { + CreateTransactionRequest__Handle *arg1 = (CreateTransactionRequest__Handle *) 0 ; + CreateTransactionRequest__Handle arg2 ; + CreateTransactionRequest__Handle *argp2 ; - arg1 = (GoSlice *)jarg1; - argp2 = (GoSlice *)jarg2; + arg1 = (CreateTransactionRequest__Handle *)jarg1; + argp2 = (CreateTransactionRequest__Handle *)jarg2; if (!argp2) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null GoSlice", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null CreateTransactionRequest__Handle", 0); return ; } arg2 = *argp2; - GoSlicep_assign(arg1,arg2); + CreateTransactionRequest__HandlePtr_assign(arg1,arg2); } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_GoSlicep_value(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_CreateTransactionRequest__HandlePtr_value(void * jarg1) { void * jresult ; - GoSlice *arg1 = (GoSlice *) 0 ; - GoSlice result; + CreateTransactionRequest__Handle *arg1 = (CreateTransactionRequest__Handle *) 0 ; + CreateTransactionRequest__Handle result; - arg1 = (GoSlice *)jarg1; - result = GoSlicep_value(arg1); + arg1 = (CreateTransactionRequest__Handle *)jarg1; + result = CreateTransactionRequest__HandlePtr_value(arg1); { - GoSlice * resultptr = (GoSlice *) malloc(sizeof(GoSlice)); - memmove(resultptr, &result, sizeof(GoSlice)); + CreateTransactionRequest__Handle * resultptr = (CreateTransactionRequest__Handle *) malloc(sizeof(CreateTransactionRequest__Handle)); + memmove(resultptr, &result, sizeof(CreateTransactionRequest__Handle)); jresult = resultptr; } return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_GoUint8Ptr() { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Strings__HandlePtr() { void * jresult ; - GoUint8_ *result = 0 ; + Strings__Handle *result = 0 ; - result = (GoUint8_ *)new_GoUint8Ptr(); + result = (Strings__Handle *)new_Strings__HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_GoUint8Ptr(unsigned char jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Strings__HandlePtr(void * jarg1) { void * jresult ; - GoUint8_ arg1 ; - GoUint8_ *result = 0 ; + Strings__Handle arg1 ; + Strings__Handle *argp1 ; + Strings__Handle *result = 0 ; - arg1 = (GoUint8_)jarg1; - result = (GoUint8_ *)copy_GoUint8Ptr(arg1); + argp1 = (Strings__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Strings__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (Strings__Handle *)copy_Strings__HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_GoUint8Ptr(void * jarg1) { - GoUint8_ *arg1 = (GoUint8_ *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Strings__HandlePtr(void * jarg1) { + Strings__Handle *arg1 = (Strings__Handle *) 0 ; - arg1 = (GoUint8_ *)jarg1; - delete_GoUint8Ptr(arg1); + arg1 = (Strings__Handle *)jarg1; + delete_Strings__HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_GoUint8Ptr_assign(void * jarg1, unsigned char jarg2) { - GoUint8_ *arg1 = (GoUint8_ *) 0 ; - GoUint8_ arg2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Strings__HandlePtr_assign(void * jarg1, void * jarg2) { + Strings__Handle *arg1 = (Strings__Handle *) 0 ; + Strings__Handle arg2 ; + Strings__Handle *argp2 ; - arg1 = (GoUint8_ *)jarg1; - arg2 = (GoUint8_)jarg2; - GoUint8Ptr_assign(arg1,arg2); + arg1 = (Strings__Handle *)jarg1; + argp2 = (Strings__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Strings__Handle", 0); + return ; + } + arg2 = *argp2; + Strings__HandlePtr_assign(arg1,arg2); } -SWIGEXPORT unsigned char SWIGSTDCALL CSharp_skycoin_GoUint8Ptr_value(void * jarg1) { - unsigned char jresult ; - GoUint8_ *arg1 = (GoUint8_ *) 0 ; - GoUint8_ result; +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_Strings__HandlePtr_value(void * jarg1) { + void * jresult ; + Strings__Handle *arg1 = (Strings__Handle *) 0 ; + Strings__Handle result; - arg1 = (GoUint8_ *)jarg1; - result = GoUint8Ptr_value(arg1); - jresult = result; + arg1 = (Strings__Handle *)jarg1; + result = Strings__HandlePtr_value(arg1); + { + Strings__Handle * resultptr = (Strings__Handle *) malloc(sizeof(Strings__Handle)); + memmove(resultptr, &result, sizeof(Strings__Handle)); + jresult = resultptr; + } return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_GoStringp() { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Wallets__HandlePtr() { void * jresult ; - _GoString_ *result = 0 ; + Wallets__Handle *result = 0 ; - result = (_GoString_ *)new_GoStringp(); + result = (Wallets__Handle *)new_Wallets__HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_GoStringp(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Wallets__HandlePtr(void * jarg1) { void * jresult ; - _GoString_ arg1 ; - _GoString_ *argp1 ; - _GoString_ *result = 0 ; + Wallets__Handle arg1 ; + Wallets__Handle *argp1 ; + Wallets__Handle *result = 0 ; - argp1 = (_GoString_ *)jarg1; + argp1 = (Wallets__Handle *)jarg1; if (!argp1) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null _GoString_", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Wallets__Handle", 0); return 0; } arg1 = *argp1; - result = (_GoString_ *)copy_GoStringp(arg1); + result = (Wallets__Handle *)copy_Wallets__HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_GoStringp(void * jarg1) { - _GoString_ *arg1 = (_GoString_ *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Wallets__HandlePtr(void * jarg1) { + Wallets__Handle *arg1 = (Wallets__Handle *) 0 ; - arg1 = (_GoString_ *)jarg1; - delete_GoStringp(arg1); + arg1 = (Wallets__Handle *)jarg1; + delete_Wallets__HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_GoStringp_assign(void * jarg1, void * jarg2) { - _GoString_ *arg1 = (_GoString_ *) 0 ; - _GoString_ arg2 ; - _GoString_ *argp2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Wallets__HandlePtr_assign(void * jarg1, void * jarg2) { + Wallets__Handle *arg1 = (Wallets__Handle *) 0 ; + Wallets__Handle arg2 ; + Wallets__Handle *argp2 ; - arg1 = (_GoString_ *)jarg1; - argp2 = (_GoString_ *)jarg2; + arg1 = (Wallets__Handle *)jarg1; + argp2 = (Wallets__Handle *)jarg2; if (!argp2) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null _GoString_", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Wallets__Handle", 0); return ; } arg2 = *argp2; - GoStringp_assign(arg1,arg2); + Wallets__HandlePtr_assign(arg1,arg2); } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_GoStringp_value(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_Wallets__HandlePtr_value(void * jarg1) { void * jresult ; - _GoString_ *arg1 = (_GoString_ *) 0 ; - _GoString_ result; + Wallets__Handle *arg1 = (Wallets__Handle *) 0 ; + Wallets__Handle result; - arg1 = (_GoString_ *)jarg1; - result = GoStringp_value(arg1); + arg1 = (Wallets__Handle *)jarg1; + result = Wallets__HandlePtr_value(arg1); + { + Wallets__Handle * resultptr = (Wallets__Handle *) malloc(sizeof(Wallets__Handle)); + memmove(resultptr, &result, sizeof(Wallets__Handle)); + jresult = resultptr; + } + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_ReadableOutputSet_HandlePtr() { + void * jresult ; + ReadableOutputSet_Handle *result = 0 ; + + result = (ReadableOutputSet_Handle *)new_ReadableOutputSet_HandlePtr(); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_ReadableOutputSet_HandlePtr(void * jarg1) { + void * jresult ; + ReadableOutputSet_Handle arg1 ; + ReadableOutputSet_Handle *argp1 ; + ReadableOutputSet_Handle *result = 0 ; + + argp1 = (ReadableOutputSet_Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null ReadableOutputSet_Handle", 0); + return 0; + } + arg1 = *argp1; + result = (ReadableOutputSet_Handle *)copy_ReadableOutputSet_HandlePtr(arg1); + jresult = (void *)result; + return jresult; +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_ReadableOutputSet_HandlePtr(void * jarg1) { + ReadableOutputSet_Handle *arg1 = (ReadableOutputSet_Handle *) 0 ; + + arg1 = (ReadableOutputSet_Handle *)jarg1; + delete_ReadableOutputSet_HandlePtr(arg1); +} + + +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_ReadableOutputSet_HandlePtr_assign(void * jarg1, void * jarg2) { + ReadableOutputSet_Handle *arg1 = (ReadableOutputSet_Handle *) 0 ; + ReadableOutputSet_Handle arg2 ; + ReadableOutputSet_Handle *argp2 ; + + arg1 = (ReadableOutputSet_Handle *)jarg1; + argp2 = (ReadableOutputSet_Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null ReadableOutputSet_Handle", 0); + return ; + } + arg2 = *argp2; + ReadableOutputSet_HandlePtr_assign(arg1,arg2); +} + + +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_ReadableOutputSet_HandlePtr_value(void * jarg1) { + void * jresult ; + ReadableOutputSet_Handle *arg1 = (ReadableOutputSet_Handle *) 0 ; + ReadableOutputSet_Handle result; + + arg1 = (ReadableOutputSet_Handle *)jarg1; + result = ReadableOutputSet_HandlePtr_value(arg1); { - _GoString_ * resultptr = (_GoString_ *) malloc(sizeof(_GoString_)); - memmove(resultptr, &result, sizeof(_GoString_)); + ReadableOutputSet_Handle * resultptr = (ReadableOutputSet_Handle *) malloc(sizeof(ReadableOutputSet_Handle)); + memmove(resultptr, &result, sizeof(ReadableOutputSet_Handle)); jresult = resultptr; } return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_intp() { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_CreateTransactionParams__HandlePtr() { void * jresult ; - int *result = 0 ; + CreateTransactionParams__Handle *result = 0 ; - result = (int *)new_intp(); + result = (CreateTransactionParams__Handle *)new_CreateTransactionParams__HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_intp(int jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_CreateTransactionParams__HandlePtr(void * jarg1) { void * jresult ; - int arg1 ; - int *result = 0 ; + CreateTransactionParams__Handle arg1 ; + CreateTransactionParams__Handle *argp1 ; + CreateTransactionParams__Handle *result = 0 ; - arg1 = (int)jarg1; - result = (int *)copy_intp(arg1); + argp1 = (CreateTransactionParams__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null CreateTransactionParams__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (CreateTransactionParams__Handle *)copy_CreateTransactionParams__HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_intp(void * jarg1) { - int *arg1 = (int *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_CreateTransactionParams__HandlePtr(void * jarg1) { + CreateTransactionParams__Handle *arg1 = (CreateTransactionParams__Handle *) 0 ; - arg1 = (int *)jarg1; - delete_intp(arg1); + arg1 = (CreateTransactionParams__Handle *)jarg1; + delete_CreateTransactionParams__HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_intp_assign(void * jarg1, int jarg2) { - int *arg1 = (int *) 0 ; - int arg2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_CreateTransactionParams__HandlePtr_assign(void * jarg1, void * jarg2) { + CreateTransactionParams__Handle *arg1 = (CreateTransactionParams__Handle *) 0 ; + CreateTransactionParams__Handle arg2 ; + CreateTransactionParams__Handle *argp2 ; - arg1 = (int *)jarg1; - arg2 = (int)jarg2; - intp_assign(arg1,arg2); + arg1 = (CreateTransactionParams__Handle *)jarg1; + argp2 = (CreateTransactionParams__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null CreateTransactionParams__Handle", 0); + return ; + } + arg2 = *argp2; + CreateTransactionParams__HandlePtr_assign(arg1,arg2); } -SWIGEXPORT int SWIGSTDCALL CSharp_skycoin_intp_value(void * jarg1) { - int jresult ; - int *arg1 = (int *) 0 ; - int result; +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_CreateTransactionParams__HandlePtr_value(void * jarg1) { + void * jresult ; + CreateTransactionParams__Handle *arg1 = (CreateTransactionParams__Handle *) 0 ; + CreateTransactionParams__Handle result; - arg1 = (int *)jarg1; - result = (int)intp_value(arg1); - jresult = result; + arg1 = (CreateTransactionParams__Handle *)jarg1; + result = CreateTransactionParams__HandlePtr_value(arg1); + { + CreateTransactionParams__Handle * resultptr = (CreateTransactionParams__Handle *) malloc(sizeof(CreateTransactionParams__Handle)); + memmove(resultptr, &result, sizeof(CreateTransactionParams__Handle)); + jresult = resultptr; + } return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_GoUint32Ptr() { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_CreatedTransaction__HandlePtr() { void * jresult ; - unsigned int *result = 0 ; + CreatedTransaction__Handle *result = 0 ; - result = (unsigned int *)new_GoUint32Ptr(); + result = (CreatedTransaction__Handle *)new_CreatedTransaction__HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_GoUint32Ptr(unsigned int jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_CreatedTransaction__HandlePtr(void * jarg1) { void * jresult ; - unsigned int arg1 ; - unsigned int *result = 0 ; + CreatedTransaction__Handle arg1 ; + CreatedTransaction__Handle *argp1 ; + CreatedTransaction__Handle *result = 0 ; - arg1 = (unsigned int)jarg1; - result = (unsigned int *)copy_GoUint32Ptr(arg1); + argp1 = (CreatedTransaction__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null CreatedTransaction__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (CreatedTransaction__Handle *)copy_CreatedTransaction__HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_GoUint32Ptr(void * jarg1) { - unsigned int *arg1 = (unsigned int *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_CreatedTransaction__HandlePtr(void * jarg1) { + CreatedTransaction__Handle *arg1 = (CreatedTransaction__Handle *) 0 ; - arg1 = (unsigned int *)jarg1; - delete_GoUint32Ptr(arg1); + arg1 = (CreatedTransaction__Handle *)jarg1; + delete_CreatedTransaction__HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_GoUint32Ptr_assign(void * jarg1, unsigned int jarg2) { - unsigned int *arg1 = (unsigned int *) 0 ; - unsigned int arg2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_CreatedTransaction__HandlePtr_assign(void * jarg1, void * jarg2) { + CreatedTransaction__Handle *arg1 = (CreatedTransaction__Handle *) 0 ; + CreatedTransaction__Handle arg2 ; + CreatedTransaction__Handle *argp2 ; - arg1 = (unsigned int *)jarg1; - arg2 = (unsigned int)jarg2; - GoUint32Ptr_assign(arg1,arg2); + arg1 = (CreatedTransaction__Handle *)jarg1; + argp2 = (CreatedTransaction__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null CreatedTransaction__Handle", 0); + return ; + } + arg2 = *argp2; + CreatedTransaction__HandlePtr_assign(arg1,arg2); } -SWIGEXPORT unsigned int SWIGSTDCALL CSharp_skycoin_GoUint32Ptr_value(void * jarg1) { - unsigned int jresult ; - unsigned int *arg1 = (unsigned int *) 0 ; - unsigned int result; +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_CreatedTransaction__HandlePtr_value(void * jarg1) { + void * jresult ; + CreatedTransaction__Handle *arg1 = (CreatedTransaction__Handle *) 0 ; + CreatedTransaction__Handle result; - arg1 = (unsigned int *)jarg1; - result = (unsigned int)GoUint32Ptr_value(arg1); - jresult = result; + arg1 = (CreatedTransaction__Handle *)jarg1; + result = CreatedTransaction__HandlePtr_value(arg1); + { + CreatedTransaction__Handle * resultptr = (CreatedTransaction__Handle *) malloc(sizeof(CreatedTransaction__Handle)); + memmove(resultptr, &result, sizeof(CreatedTransaction__Handle)); + jresult = resultptr; + } return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_coin__Transactionp() { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_CreatedTransactionOutput__HandlePtr() { void * jresult ; - coin__Transaction *result = 0 ; + CreatedTransactionOutput__Handle *result = 0 ; - result = (coin__Transaction *)new_coin__Transactionp(); + result = (CreatedTransactionOutput__Handle *)new_CreatedTransactionOutput__HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_coin__Transactionp(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_CreatedTransactionOutput__HandlePtr(void * jarg1) { void * jresult ; - coin__Transaction arg1 ; - coin__Transaction *argp1 ; - coin__Transaction *result = 0 ; + CreatedTransactionOutput__Handle arg1 ; + CreatedTransactionOutput__Handle *argp1 ; + CreatedTransactionOutput__Handle *result = 0 ; - argp1 = (coin__Transaction *)jarg1; + argp1 = (CreatedTransactionOutput__Handle *)jarg1; if (!argp1) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null coin__Transaction", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null CreatedTransactionOutput__Handle", 0); return 0; } arg1 = *argp1; - result = (coin__Transaction *)copy_coin__Transactionp(arg1); + result = (CreatedTransactionOutput__Handle *)copy_CreatedTransactionOutput__HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_coin__Transactionp(void * jarg1) { - coin__Transaction *arg1 = (coin__Transaction *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_CreatedTransactionOutput__HandlePtr(void * jarg1) { + CreatedTransactionOutput__Handle *arg1 = (CreatedTransactionOutput__Handle *) 0 ; - arg1 = (coin__Transaction *)jarg1; - delete_coin__Transactionp(arg1); + arg1 = (CreatedTransactionOutput__Handle *)jarg1; + delete_CreatedTransactionOutput__HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_coin__Transactionp_assign(void * jarg1, void * jarg2) { - coin__Transaction *arg1 = (coin__Transaction *) 0 ; - coin__Transaction arg2 ; - coin__Transaction *argp2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_CreatedTransactionOutput__HandlePtr_assign(void * jarg1, void * jarg2) { + CreatedTransactionOutput__Handle *arg1 = (CreatedTransactionOutput__Handle *) 0 ; + CreatedTransactionOutput__Handle arg2 ; + CreatedTransactionOutput__Handle *argp2 ; - arg1 = (coin__Transaction *)jarg1; - argp2 = (coin__Transaction *)jarg2; + arg1 = (CreatedTransactionOutput__Handle *)jarg1; + argp2 = (CreatedTransactionOutput__Handle *)jarg2; if (!argp2) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null coin__Transaction", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null CreatedTransactionOutput__Handle", 0); return ; } arg2 = *argp2; - coin__Transactionp_assign(arg1,arg2); + CreatedTransactionOutput__HandlePtr_assign(arg1,arg2); } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_coin__Transactionp_value(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_CreatedTransactionOutput__HandlePtr_value(void * jarg1) { void * jresult ; - coin__Transaction *arg1 = (coin__Transaction *) 0 ; - coin__Transaction result; + CreatedTransactionOutput__Handle *arg1 = (CreatedTransactionOutput__Handle *) 0 ; + CreatedTransactionOutput__Handle result; - arg1 = (coin__Transaction *)jarg1; - result = coin__Transactionp_value(arg1); + arg1 = (CreatedTransactionOutput__Handle *)jarg1; + result = CreatedTransactionOutput__HandlePtr_value(arg1); { - coin__Transaction * resultptr = (coin__Transaction *) malloc(sizeof(coin__Transaction)); - memmove(resultptr, &result, sizeof(coin__Transaction)); + CreatedTransactionOutput__Handle * resultptr = (CreatedTransactionOutput__Handle *) malloc(sizeof(CreatedTransactionOutput__Handle)); + memmove(resultptr, &result, sizeof(CreatedTransactionOutput__Handle)); jresult = resultptr; } return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_AddressUxOuts__HandlePtr() { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_CreatedTransactionInput__HandlePtr() { void * jresult ; - AddressUxOuts_Handle *result = 0 ; + CreatedTransactionInput__Handle *result = 0 ; - result = (AddressUxOuts_Handle *)new_AddressUxOuts__HandlePtr(); + result = (CreatedTransactionInput__Handle *)new_CreatedTransactionInput__HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_AddressUxOuts__HandlePtr(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_CreatedTransactionInput__HandlePtr(void * jarg1) { void * jresult ; - AddressUxOuts_Handle arg1 ; - AddressUxOuts_Handle *argp1 ; - AddressUxOuts_Handle *result = 0 ; + CreatedTransactionInput__Handle arg1 ; + CreatedTransactionInput__Handle *argp1 ; + CreatedTransactionInput__Handle *result = 0 ; - argp1 = (AddressUxOuts_Handle *)jarg1; + argp1 = (CreatedTransactionInput__Handle *)jarg1; if (!argp1) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null AddressUxOuts_Handle", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null CreatedTransactionInput__Handle", 0); return 0; } arg1 = *argp1; - result = (AddressUxOuts_Handle *)copy_AddressUxOuts__HandlePtr(arg1); + result = (CreatedTransactionInput__Handle *)copy_CreatedTransactionInput__HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_AddressUxOuts__HandlePtr(void * jarg1) { - AddressUxOuts_Handle *arg1 = (AddressUxOuts_Handle *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_CreatedTransactionInput__HandlePtr(void * jarg1) { + CreatedTransactionInput__Handle *arg1 = (CreatedTransactionInput__Handle *) 0 ; - arg1 = (AddressUxOuts_Handle *)jarg1; - delete_AddressUxOuts__HandlePtr(arg1); + arg1 = (CreatedTransactionInput__Handle *)jarg1; + delete_CreatedTransactionInput__HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_AddressUxOuts__HandlePtr_assign(void * jarg1, void * jarg2) { - AddressUxOuts_Handle *arg1 = (AddressUxOuts_Handle *) 0 ; - AddressUxOuts_Handle arg2 ; - AddressUxOuts_Handle *argp2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_CreatedTransactionInput__HandlePtr_assign(void * jarg1, void * jarg2) { + CreatedTransactionInput__Handle *arg1 = (CreatedTransactionInput__Handle *) 0 ; + CreatedTransactionInput__Handle arg2 ; + CreatedTransactionInput__Handle *argp2 ; - arg1 = (AddressUxOuts_Handle *)jarg1; - argp2 = (AddressUxOuts_Handle *)jarg2; + arg1 = (CreatedTransactionInput__Handle *)jarg1; + argp2 = (CreatedTransactionInput__Handle *)jarg2; if (!argp2) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null AddressUxOuts_Handle", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null CreatedTransactionInput__Handle", 0); return ; } arg2 = *argp2; - AddressUxOuts__HandlePtr_assign(arg1,arg2); + CreatedTransactionInput__HandlePtr_assign(arg1,arg2); } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_AddressUxOuts__HandlePtr_value(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_CreatedTransactionInput__HandlePtr_value(void * jarg1) { void * jresult ; - AddressUxOuts_Handle *arg1 = (AddressUxOuts_Handle *) 0 ; - AddressUxOuts_Handle result; + CreatedTransactionInput__Handle *arg1 = (CreatedTransactionInput__Handle *) 0 ; + CreatedTransactionInput__Handle result; - arg1 = (AddressUxOuts_Handle *)jarg1; - result = AddressUxOuts__HandlePtr_value(arg1); + arg1 = (CreatedTransactionInput__Handle *)jarg1; + result = CreatedTransactionInput__HandlePtr_value(arg1); { - AddressUxOuts_Handle * resultptr = (AddressUxOuts_Handle *) malloc(sizeof(AddressUxOuts_Handle)); - memmove(resultptr, &result, sizeof(AddressUxOuts_Handle)); + CreatedTransactionInput__Handle * resultptr = (CreatedTransactionInput__Handle *) malloc(sizeof(CreatedTransactionInput__Handle)); + memmove(resultptr, &result, sizeof(CreatedTransactionInput__Handle)); jresult = resultptr; } return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_GoUint64p() { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_CreateTransactionResponse__HandlePtr() { void * jresult ; - unsigned long long *result = 0 ; + CreateTransactionResponse__Handle *result = 0 ; - result = (unsigned long long *)new_GoUint64p(); + result = (CreateTransactionResponse__Handle *)new_CreateTransactionResponse__HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_GoUint64p(unsigned long long jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_CreateTransactionResponse__HandlePtr(void * jarg1) { void * jresult ; - unsigned long long arg1 ; - unsigned long long *result = 0 ; + CreateTransactionResponse__Handle arg1 ; + CreateTransactionResponse__Handle *argp1 ; + CreateTransactionResponse__Handle *result = 0 ; - arg1 = (unsigned long long)jarg1; - result = (unsigned long long *)copy_GoUint64p(arg1); + argp1 = (CreateTransactionResponse__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null CreateTransactionResponse__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (CreateTransactionResponse__Handle *)copy_CreateTransactionResponse__HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_GoUint64p(void * jarg1) { - unsigned long long *arg1 = (unsigned long long *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_CreateTransactionResponse__HandlePtr(void * jarg1) { + CreateTransactionResponse__Handle *arg1 = (CreateTransactionResponse__Handle *) 0 ; - arg1 = (unsigned long long *)jarg1; - delete_GoUint64p(arg1); + arg1 = (CreateTransactionResponse__Handle *)jarg1; + delete_CreateTransactionResponse__HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_GoUint64p_assign(void * jarg1, unsigned long long jarg2) { - unsigned long long *arg1 = (unsigned long long *) 0 ; - unsigned long long arg2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_CreateTransactionResponse__HandlePtr_assign(void * jarg1, void * jarg2) { + CreateTransactionResponse__Handle *arg1 = (CreateTransactionResponse__Handle *) 0 ; + CreateTransactionResponse__Handle arg2 ; + CreateTransactionResponse__Handle *argp2 ; - arg1 = (unsigned long long *)jarg1; - arg2 = (unsigned long long)jarg2; - GoUint64p_assign(arg1,arg2); + arg1 = (CreateTransactionResponse__Handle *)jarg1; + argp2 = (CreateTransactionResponse__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null CreateTransactionResponse__Handle", 0); + return ; + } + arg2 = *argp2; + CreateTransactionResponse__HandlePtr_assign(arg1,arg2); } -SWIGEXPORT unsigned long long SWIGSTDCALL CSharp_skycoin_GoUint64p_value(void * jarg1) { - unsigned long long jresult ; - unsigned long long *arg1 = (unsigned long long *) 0 ; - unsigned long long result; +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_CreateTransactionResponse__HandlePtr_value(void * jarg1) { + void * jresult ; + CreateTransactionResponse__Handle *arg1 = (CreateTransactionResponse__Handle *) 0 ; + CreateTransactionResponse__Handle result; - arg1 = (unsigned long long *)jarg1; - result = (unsigned long long)GoUint64p_value(arg1); - jresult = result; + arg1 = (CreateTransactionResponse__Handle *)jarg1; + result = CreateTransactionResponse__HandlePtr_value(arg1); + { + CreateTransactionResponse__Handle * resultptr = (CreateTransactionResponse__Handle *) malloc(sizeof(CreateTransactionResponse__Handle)); + memmove(resultptr, &result, sizeof(CreateTransactionResponse__Handle)); + jresult = resultptr; + } return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Gointp() { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_SignedBlock__HandlePtr() { void * jresult ; - long long *result = 0 ; + SignedBlock__Handle *result = 0 ; - result = (long long *)new_Gointp(); + result = (SignedBlock__Handle *)new_SignedBlock__HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Gointp(long long jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_SignedBlock__HandlePtr(void * jarg1) { void * jresult ; - long long arg1 ; - long long *result = 0 ; + SignedBlock__Handle arg1 ; + SignedBlock__Handle *argp1 ; + SignedBlock__Handle *result = 0 ; - arg1 = (long long)jarg1; - result = (long long *)copy_Gointp(arg1); + argp1 = (SignedBlock__Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null SignedBlock__Handle", 0); + return 0; + } + arg1 = *argp1; + result = (SignedBlock__Handle *)copy_SignedBlock__HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Gointp(void * jarg1) { - long long *arg1 = (long long *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_SignedBlock__HandlePtr(void * jarg1) { + SignedBlock__Handle *arg1 = (SignedBlock__Handle *) 0 ; - arg1 = (long long *)jarg1; - delete_Gointp(arg1); + arg1 = (SignedBlock__Handle *)jarg1; + delete_SignedBlock__HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Gointp_assign(void * jarg1, long long jarg2) { - long long *arg1 = (long long *) 0 ; - long long arg2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_SignedBlock__HandlePtr_assign(void * jarg1, void * jarg2) { + SignedBlock__Handle *arg1 = (SignedBlock__Handle *) 0 ; + SignedBlock__Handle arg2 ; + SignedBlock__Handle *argp2 ; - arg1 = (long long *)jarg1; - arg2 = (long long)jarg2; - Gointp_assign(arg1,arg2); + arg1 = (SignedBlock__Handle *)jarg1; + argp2 = (SignedBlock__Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null SignedBlock__Handle", 0); + return ; + } + arg2 = *argp2; + SignedBlock__HandlePtr_assign(arg1,arg2); } -SWIGEXPORT long long SWIGSTDCALL CSharp_skycoin_Gointp_value(void * jarg1) { - long long jresult ; - long long *arg1 = (long long *) 0 ; - long long result; +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_SignedBlock__HandlePtr_value(void * jarg1) { + void * jresult ; + SignedBlock__Handle *arg1 = (SignedBlock__Handle *) 0 ; + SignedBlock__Handle result; - arg1 = (long long *)jarg1; - result = (long long)Gointp_value(arg1); - jresult = result; + arg1 = (SignedBlock__Handle *)jarg1; + result = SignedBlock__HandlePtr_value(arg1); + { + SignedBlock__Handle * resultptr = (SignedBlock__Handle *) malloc(sizeof(SignedBlock__Handle)); + memmove(resultptr, &result, sizeof(SignedBlock__Handle)); + jresult = resultptr; + } return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_GoUint16p() { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_SortableTransactionResult_HandlePtr() { void * jresult ; - unsigned short *result = 0 ; + SortableTransactionResult_Handle *result = 0 ; - result = (unsigned short *)new_GoUint16p(); + result = (SortableTransactionResult_Handle *)new_SortableTransactionResult_HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_GoUint16p(unsigned short jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_SortableTransactionResult_HandlePtr(void * jarg1) { void * jresult ; - unsigned short arg1 ; - unsigned short *result = 0 ; + SortableTransactionResult_Handle arg1 ; + SortableTransactionResult_Handle *argp1 ; + SortableTransactionResult_Handle *result = 0 ; - arg1 = (unsigned short)jarg1; - result = (unsigned short *)copy_GoUint16p(arg1); + argp1 = (SortableTransactionResult_Handle *)jarg1; + if (!argp1) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null SortableTransactionResult_Handle", 0); + return 0; + } + arg1 = *argp1; + result = (SortableTransactionResult_Handle *)copy_SortableTransactionResult_HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_GoUint16p(void * jarg1) { - unsigned short *arg1 = (unsigned short *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_SortableTransactionResult_HandlePtr(void * jarg1) { + SortableTransactionResult_Handle *arg1 = (SortableTransactionResult_Handle *) 0 ; - arg1 = (unsigned short *)jarg1; - delete_GoUint16p(arg1); + arg1 = (SortableTransactionResult_Handle *)jarg1; + delete_SortableTransactionResult_HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_GoUint16p_assign(void * jarg1, unsigned short jarg2) { - unsigned short *arg1 = (unsigned short *) 0 ; - unsigned short arg2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_SortableTransactionResult_HandlePtr_assign(void * jarg1, void * jarg2) { + SortableTransactionResult_Handle *arg1 = (SortableTransactionResult_Handle *) 0 ; + SortableTransactionResult_Handle arg2 ; + SortableTransactionResult_Handle *argp2 ; - arg1 = (unsigned short *)jarg1; - arg2 = (unsigned short)jarg2; - GoUint16p_assign(arg1,arg2); + arg1 = (SortableTransactionResult_Handle *)jarg1; + argp2 = (SortableTransactionResult_Handle *)jarg2; + if (!argp2) { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null SortableTransactionResult_Handle", 0); + return ; + } + arg2 = *argp2; + SortableTransactionResult_HandlePtr_assign(arg1,arg2); } -SWIGEXPORT unsigned short SWIGSTDCALL CSharp_skycoin_GoUint16p_value(void * jarg1) { - unsigned short jresult ; - unsigned short *arg1 = (unsigned short *) 0 ; - unsigned short result; +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_SortableTransactionResult_HandlePtr_value(void * jarg1) { + void * jresult ; + SortableTransactionResult_Handle *arg1 = (SortableTransactionResult_Handle *) 0 ; + SortableTransactionResult_Handle result; - arg1 = (unsigned short *)jarg1; - result = (unsigned short)GoUint16p_value(arg1); - jresult = result; + arg1 = (SortableTransactionResult_Handle *)jarg1; + result = SortableTransactionResult_HandlePtr_value(arg1); + { + SortableTransactionResult_Handle * resultptr = (SortableTransactionResult_Handle *) malloc(sizeof(SortableTransactionResult_Handle)); + memmove(resultptr, &result, sizeof(SortableTransactionResult_Handle)); + jresult = resultptr; + } return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_cipher__Addressp() { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_WalletReadableNotes_HandlePtr() { void * jresult ; - cipher__Address *result = 0 ; + WalletReadableNotes_Handle *result = 0 ; - result = (cipher__Address *)new_cipher__Addressp(); + result = (WalletReadableNotes_Handle *)new_WalletReadableNotes_HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_cipher__Addressp(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_WalletReadableNotes_HandlePtr(void * jarg1) { void * jresult ; - cipher__Address arg1 ; - cipher__Address *argp1 ; - cipher__Address *result = 0 ; + WalletReadableNotes_Handle arg1 ; + WalletReadableNotes_Handle *argp1 ; + WalletReadableNotes_Handle *result = 0 ; - argp1 = (cipher__Address *)jarg1; + argp1 = (WalletReadableNotes_Handle *)jarg1; if (!argp1) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null cipher__Address", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null WalletReadableNotes_Handle", 0); return 0; } arg1 = *argp1; - result = (cipher__Address *)copy_cipher__Addressp(arg1); + result = (WalletReadableNotes_Handle *)copy_WalletReadableNotes_HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_cipher__Addressp(void * jarg1) { - cipher__Address *arg1 = (cipher__Address *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_WalletReadableNotes_HandlePtr(void * jarg1) { + WalletReadableNotes_Handle *arg1 = (WalletReadableNotes_Handle *) 0 ; - arg1 = (cipher__Address *)jarg1; - delete_cipher__Addressp(arg1); + arg1 = (WalletReadableNotes_Handle *)jarg1; + delete_WalletReadableNotes_HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_cipher__Addressp_assign(void * jarg1, void * jarg2) { - cipher__Address *arg1 = (cipher__Address *) 0 ; - cipher__Address arg2 ; - cipher__Address *argp2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_WalletReadableNotes_HandlePtr_assign(void * jarg1, void * jarg2) { + WalletReadableNotes_Handle *arg1 = (WalletReadableNotes_Handle *) 0 ; + WalletReadableNotes_Handle arg2 ; + WalletReadableNotes_Handle *argp2 ; - arg1 = (cipher__Address *)jarg1; - argp2 = (cipher__Address *)jarg2; + arg1 = (WalletReadableNotes_Handle *)jarg1; + argp2 = (WalletReadableNotes_Handle *)jarg2; if (!argp2) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null cipher__Address", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null WalletReadableNotes_Handle", 0); return ; } arg2 = *argp2; - cipher__Addressp_assign(arg1,arg2); + WalletReadableNotes_HandlePtr_assign(arg1,arg2); } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_cipher__Addressp_value(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_WalletReadableNotes_HandlePtr_value(void * jarg1) { void * jresult ; - cipher__Address *arg1 = (cipher__Address *) 0 ; - cipher__Address result; + WalletReadableNotes_Handle *arg1 = (WalletReadableNotes_Handle *) 0 ; + WalletReadableNotes_Handle result; - arg1 = (cipher__Address *)jarg1; - result = cipher__Addressp_value(arg1); + arg1 = (WalletReadableNotes_Handle *)jarg1; + result = WalletReadableNotes_HandlePtr_value(arg1); { - cipher__Address * resultptr = (cipher__Address *) malloc(sizeof(cipher__Address)); - memmove(resultptr, &result, sizeof(cipher__Address)); + WalletReadableNotes_Handle * resultptr = (WalletReadableNotes_Handle *) malloc(sizeof(WalletReadableNotes_Handle)); + memmove(resultptr, &result, sizeof(WalletReadableNotes_Handle)); jresult = resultptr; } return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Transactions__HandlePtr() { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_OutputsResult_HandlePtr() { void * jresult ; - Transactions__Handle *result = 0 ; + OutputsResult_Handle *result = 0 ; - result = (Transactions__Handle *)new_Transactions__HandlePtr(); + result = (OutputsResult_Handle *)new_OutputsResult_HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Transactions__HandlePtr(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_OutputsResult_HandlePtr(void * jarg1) { void * jresult ; - Transactions__Handle arg1 ; - Transactions__Handle *argp1 ; - Transactions__Handle *result = 0 ; + OutputsResult_Handle arg1 ; + OutputsResult_Handle *argp1 ; + OutputsResult_Handle *result = 0 ; - argp1 = (Transactions__Handle *)jarg1; + argp1 = (OutputsResult_Handle *)jarg1; if (!argp1) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Transactions__Handle", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null OutputsResult_Handle", 0); return 0; } arg1 = *argp1; - result = (Transactions__Handle *)copy_Transactions__HandlePtr(arg1); + result = (OutputsResult_Handle *)copy_OutputsResult_HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Transactions__HandlePtr(void * jarg1) { - Transactions__Handle *arg1 = (Transactions__Handle *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_OutputsResult_HandlePtr(void * jarg1) { + OutputsResult_Handle *arg1 = (OutputsResult_Handle *) 0 ; - arg1 = (Transactions__Handle *)jarg1; - delete_Transactions__HandlePtr(arg1); + arg1 = (OutputsResult_Handle *)jarg1; + delete_OutputsResult_HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Transactions__HandlePtr_assign(void * jarg1, void * jarg2) { - Transactions__Handle *arg1 = (Transactions__Handle *) 0 ; - Transactions__Handle arg2 ; - Transactions__Handle *argp2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_OutputsResult_HandlePtr_assign(void * jarg1, void * jarg2) { + OutputsResult_Handle *arg1 = (OutputsResult_Handle *) 0 ; + OutputsResult_Handle arg2 ; + OutputsResult_Handle *argp2 ; - arg1 = (Transactions__Handle *)jarg1; - argp2 = (Transactions__Handle *)jarg2; + arg1 = (OutputsResult_Handle *)jarg1; + argp2 = (OutputsResult_Handle *)jarg2; if (!argp2) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Transactions__Handle", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null OutputsResult_Handle", 0); return ; } arg2 = *argp2; - Transactions__HandlePtr_assign(arg1,arg2); + OutputsResult_HandlePtr_assign(arg1,arg2); } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_Transactions__HandlePtr_value(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_OutputsResult_HandlePtr_value(void * jarg1) { void * jresult ; - Transactions__Handle *arg1 = (Transactions__Handle *) 0 ; - Transactions__Handle result; + OutputsResult_Handle *arg1 = (OutputsResult_Handle *) 0 ; + OutputsResult_Handle result; - arg1 = (Transactions__Handle *)jarg1; - result = Transactions__HandlePtr_value(arg1); + arg1 = (OutputsResult_Handle *)jarg1; + result = OutputsResult_HandlePtr_value(arg1); { - Transactions__Handle * resultptr = (Transactions__Handle *) malloc(sizeof(Transactions__Handle)); - memmove(resultptr, &result, sizeof(Transactions__Handle)); + OutputsResult_Handle * resultptr = (OutputsResult_Handle *) malloc(sizeof(OutputsResult_Handle)); + memmove(resultptr, &result, sizeof(OutputsResult_Handle)); jresult = resultptr; } return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Transaction__Handlep() { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_StatusResult_HandlePtr() { void * jresult ; - Transaction__Handle *result = 0 ; + StatusResult_Handle *result = 0 ; - result = (Transaction__Handle *)new_Transaction__Handlep(); + result = (StatusResult_Handle *)new_StatusResult_HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Transaction__Handlep(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_StatusResult_HandlePtr(void * jarg1) { void * jresult ; - Transaction__Handle arg1 ; - Transaction__Handle *argp1 ; - Transaction__Handle *result = 0 ; + StatusResult_Handle arg1 ; + StatusResult_Handle *argp1 ; + StatusResult_Handle *result = 0 ; - argp1 = (Transaction__Handle *)jarg1; + argp1 = (StatusResult_Handle *)jarg1; if (!argp1) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Transaction__Handle", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null StatusResult_Handle", 0); return 0; } arg1 = *argp1; - result = (Transaction__Handle *)copy_Transaction__Handlep(arg1); + result = (StatusResult_Handle *)copy_StatusResult_HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Transaction__Handlep(void * jarg1) { - Transaction__Handle *arg1 = (Transaction__Handle *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_StatusResult_HandlePtr(void * jarg1) { + StatusResult_Handle *arg1 = (StatusResult_Handle *) 0 ; - arg1 = (Transaction__Handle *)jarg1; - delete_Transaction__Handlep(arg1); + arg1 = (StatusResult_Handle *)jarg1; + delete_StatusResult_HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Transaction__Handlep_assign(void * jarg1, void * jarg2) { - Transaction__Handle *arg1 = (Transaction__Handle *) 0 ; - Transaction__Handle arg2 ; - Transaction__Handle *argp2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_StatusResult_HandlePtr_assign(void * jarg1, void * jarg2) { + StatusResult_Handle *arg1 = (StatusResult_Handle *) 0 ; + StatusResult_Handle arg2 ; + StatusResult_Handle *argp2 ; - arg1 = (Transaction__Handle *)jarg1; - argp2 = (Transaction__Handle *)jarg2; + arg1 = (StatusResult_Handle *)jarg1; + argp2 = (StatusResult_Handle *)jarg2; if (!argp2) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Transaction__Handle", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null StatusResult_Handle", 0); return ; } arg2 = *argp2; - Transaction__Handlep_assign(arg1,arg2); + StatusResult_HandlePtr_assign(arg1,arg2); } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_Transaction__Handlep_value(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_StatusResult_HandlePtr_value(void * jarg1) { void * jresult ; - Transaction__Handle *arg1 = (Transaction__Handle *) 0 ; - Transaction__Handle result; + StatusResult_Handle *arg1 = (StatusResult_Handle *) 0 ; + StatusResult_Handle result; - arg1 = (Transaction__Handle *)jarg1; - result = Transaction__Handlep_value(arg1); + arg1 = (StatusResult_Handle *)jarg1; + result = StatusResult_HandlePtr_value(arg1); { - Transaction__Handle * resultptr = (Transaction__Handle *) malloc(sizeof(Transaction__Handle)); - memmove(resultptr, &result, sizeof(Transaction__Handle)); + StatusResult_Handle * resultptr = (StatusResult_Handle *) malloc(sizeof(StatusResult_Handle)); + memmove(resultptr, &result, sizeof(StatusResult_Handle)); jresult = resultptr; } return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Block__HandlePtr() { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_AddressUxOuts_HandlePtr() { void * jresult ; - Block__Handle *result = 0 ; + AddressUxOuts_Handle *result = 0 ; - result = (Block__Handle *)new_Block__HandlePtr(); + result = (AddressUxOuts_Handle *)new_AddressUxOuts_HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Block__HandlePtr(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_AddressUxOuts_HandlePtr(void * jarg1) { void * jresult ; - Block__Handle arg1 ; - Block__Handle *argp1 ; - Block__Handle *result = 0 ; + AddressUxOuts_Handle arg1 ; + AddressUxOuts_Handle *argp1 ; + AddressUxOuts_Handle *result = 0 ; - argp1 = (Block__Handle *)jarg1; + argp1 = (AddressUxOuts_Handle *)jarg1; if (!argp1) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Block__Handle", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null AddressUxOuts_Handle", 0); return 0; } arg1 = *argp1; - result = (Block__Handle *)copy_Block__HandlePtr(arg1); + result = (AddressUxOuts_Handle *)copy_AddressUxOuts_HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Block__HandlePtr(void * jarg1) { - Block__Handle *arg1 = (Block__Handle *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_AddressUxOuts_HandlePtr(void * jarg1) { + AddressUxOuts_Handle *arg1 = (AddressUxOuts_Handle *) 0 ; - arg1 = (Block__Handle *)jarg1; - delete_Block__HandlePtr(arg1); + arg1 = (AddressUxOuts_Handle *)jarg1; + delete_AddressUxOuts_HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Block__HandlePtr_assign(void * jarg1, void * jarg2) { - Block__Handle *arg1 = (Block__Handle *) 0 ; - Block__Handle arg2 ; - Block__Handle *argp2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_AddressUxOuts_HandlePtr_assign(void * jarg1, void * jarg2) { + AddressUxOuts_Handle *arg1 = (AddressUxOuts_Handle *) 0 ; + AddressUxOuts_Handle arg2 ; + AddressUxOuts_Handle *argp2 ; - arg1 = (Block__Handle *)jarg1; - argp2 = (Block__Handle *)jarg2; + arg1 = (AddressUxOuts_Handle *)jarg1; + argp2 = (AddressUxOuts_Handle *)jarg2; if (!argp2) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Block__Handle", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null AddressUxOuts_Handle", 0); return ; } arg2 = *argp2; - Block__HandlePtr_assign(arg1,arg2); + AddressUxOuts_HandlePtr_assign(arg1,arg2); } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_Block__HandlePtr_value(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_AddressUxOuts_HandlePtr_value(void * jarg1) { void * jresult ; - Block__Handle *arg1 = (Block__Handle *) 0 ; - Block__Handle result; + AddressUxOuts_Handle *arg1 = (AddressUxOuts_Handle *) 0 ; + AddressUxOuts_Handle result; - arg1 = (Block__Handle *)jarg1; - result = Block__HandlePtr_value(arg1); + arg1 = (AddressUxOuts_Handle *)jarg1; + result = AddressUxOuts_HandlePtr_value(arg1); { - Block__Handle * resultptr = (Block__Handle *) malloc(sizeof(Block__Handle)); - memmove(resultptr, &result, sizeof(Block__Handle)); + AddressUxOuts_Handle * resultptr = (AddressUxOuts_Handle *) malloc(sizeof(AddressUxOuts_Handle)); + memmove(resultptr, &result, sizeof(AddressUxOuts_Handle)); jresult = resultptr; } return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_BlockBody__HandlePtr() { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_BuildInfo_HandlePtr() { void * jresult ; - BlockBody__Handle *result = 0 ; + BuildInfo_Handle *result = 0 ; - result = (BlockBody__Handle *)new_BlockBody__HandlePtr(); + result = (BuildInfo_Handle *)new_BuildInfo_HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_BlockBody__HandlePtr(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_BuildInfo_HandlePtr(void * jarg1) { void * jresult ; - BlockBody__Handle arg1 ; - BlockBody__Handle *argp1 ; - BlockBody__Handle *result = 0 ; + BuildInfo_Handle arg1 ; + BuildInfo_Handle *argp1 ; + BuildInfo_Handle *result = 0 ; - argp1 = (BlockBody__Handle *)jarg1; + argp1 = (BuildInfo_Handle *)jarg1; if (!argp1) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null BlockBody__Handle", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null BuildInfo_Handle", 0); return 0; } arg1 = *argp1; - result = (BlockBody__Handle *)copy_BlockBody__HandlePtr(arg1); + result = (BuildInfo_Handle *)copy_BuildInfo_HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_BlockBody__HandlePtr(void * jarg1) { - BlockBody__Handle *arg1 = (BlockBody__Handle *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_BuildInfo_HandlePtr(void * jarg1) { + BuildInfo_Handle *arg1 = (BuildInfo_Handle *) 0 ; - arg1 = (BlockBody__Handle *)jarg1; - delete_BlockBody__HandlePtr(arg1); + arg1 = (BuildInfo_Handle *)jarg1; + delete_BuildInfo_HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_BlockBody__HandlePtr_assign(void * jarg1, void * jarg2) { - BlockBody__Handle *arg1 = (BlockBody__Handle *) 0 ; - BlockBody__Handle arg2 ; - BlockBody__Handle *argp2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_BuildInfo_HandlePtr_assign(void * jarg1, void * jarg2) { + BuildInfo_Handle *arg1 = (BuildInfo_Handle *) 0 ; + BuildInfo_Handle arg2 ; + BuildInfo_Handle *argp2 ; - arg1 = (BlockBody__Handle *)jarg1; - argp2 = (BlockBody__Handle *)jarg2; + arg1 = (BuildInfo_Handle *)jarg1; + argp2 = (BuildInfo_Handle *)jarg2; if (!argp2) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null BlockBody__Handle", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null BuildInfo_Handle", 0); return ; } arg2 = *argp2; - BlockBody__HandlePtr_assign(arg1,arg2); + BuildInfo_HandlePtr_assign(arg1,arg2); } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_BlockBody__HandlePtr_value(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_BuildInfo_HandlePtr_value(void * jarg1) { void * jresult ; - BlockBody__Handle *arg1 = (BlockBody__Handle *) 0 ; - BlockBody__Handle result; + BuildInfo_Handle *arg1 = (BuildInfo_Handle *) 0 ; + BuildInfo_Handle result; - arg1 = (BlockBody__Handle *)jarg1; - result = BlockBody__HandlePtr_value(arg1); + arg1 = (BuildInfo_Handle *)jarg1; + result = BuildInfo_HandlePtr_value(arg1); { - BlockBody__Handle * resultptr = (BlockBody__Handle *) malloc(sizeof(BlockBody__Handle)); - memmove(resultptr, &result, sizeof(BlockBody__Handle)); + BuildInfo_Handle * resultptr = (BuildInfo_Handle *) malloc(sizeof(BuildInfo_Handle)); + memmove(resultptr, &result, sizeof(BuildInfo_Handle)); jresult = resultptr; } return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_BlockHeader__HandlePtr() { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_ReadableUnspentOutputsSummary_HandlePtr() { void * jresult ; - BlockHeader__Handle *result = 0 ; + ReadableUnspentOutputsSummary_Handle *result = 0 ; - result = (BlockHeader__Handle *)new_BlockHeader__HandlePtr(); + result = (ReadableUnspentOutputsSummary_Handle *)new_ReadableUnspentOutputsSummary_HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_BlockHeader__HandlePtr(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_ReadableUnspentOutputsSummary_HandlePtr(void * jarg1) { void * jresult ; - BlockHeader__Handle arg1 ; - BlockHeader__Handle *argp1 ; - BlockHeader__Handle *result = 0 ; + ReadableUnspentOutputsSummary_Handle arg1 ; + ReadableUnspentOutputsSummary_Handle *argp1 ; + ReadableUnspentOutputsSummary_Handle *result = 0 ; - argp1 = (BlockHeader__Handle *)jarg1; + argp1 = (ReadableUnspentOutputsSummary_Handle *)jarg1; if (!argp1) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null BlockHeader__Handle", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null ReadableUnspentOutputsSummary_Handle", 0); return 0; } arg1 = *argp1; - result = (BlockHeader__Handle *)copy_BlockHeader__HandlePtr(arg1); + result = (ReadableUnspentOutputsSummary_Handle *)copy_ReadableUnspentOutputsSummary_HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_BlockHeader__HandlePtr(void * jarg1) { - BlockHeader__Handle *arg1 = (BlockHeader__Handle *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_ReadableUnspentOutputsSummary_HandlePtr(void * jarg1) { + ReadableUnspentOutputsSummary_Handle *arg1 = (ReadableUnspentOutputsSummary_Handle *) 0 ; - arg1 = (BlockHeader__Handle *)jarg1; - delete_BlockHeader__HandlePtr(arg1); + arg1 = (ReadableUnspentOutputsSummary_Handle *)jarg1; + delete_ReadableUnspentOutputsSummary_HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_BlockHeader__HandlePtr_assign(void * jarg1, void * jarg2) { - BlockHeader__Handle *arg1 = (BlockHeader__Handle *) 0 ; - BlockHeader__Handle arg2 ; - BlockHeader__Handle *argp2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_ReadableUnspentOutputsSummary_HandlePtr_assign(void * jarg1, void * jarg2) { + ReadableUnspentOutputsSummary_Handle *arg1 = (ReadableUnspentOutputsSummary_Handle *) 0 ; + ReadableUnspentOutputsSummary_Handle arg2 ; + ReadableUnspentOutputsSummary_Handle *argp2 ; - arg1 = (BlockHeader__Handle *)jarg1; - argp2 = (BlockHeader__Handle *)jarg2; + arg1 = (ReadableUnspentOutputsSummary_Handle *)jarg1; + argp2 = (ReadableUnspentOutputsSummary_Handle *)jarg2; if (!argp2) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null BlockHeader__Handle", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null ReadableUnspentOutputsSummary_Handle", 0); return ; } arg2 = *argp2; - BlockHeader__HandlePtr_assign(arg1,arg2); + ReadableUnspentOutputsSummary_HandlePtr_assign(arg1,arg2); } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_BlockHeader__HandlePtr_value(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_ReadableUnspentOutputsSummary_HandlePtr_value(void * jarg1) { void * jresult ; - BlockHeader__Handle *arg1 = (BlockHeader__Handle *) 0 ; - BlockHeader__Handle result; + ReadableUnspentOutputsSummary_Handle *arg1 = (ReadableUnspentOutputsSummary_Handle *) 0 ; + ReadableUnspentOutputsSummary_Handle result; - arg1 = (BlockHeader__Handle *)jarg1; - result = BlockHeader__HandlePtr_value(arg1); + arg1 = (ReadableUnspentOutputsSummary_Handle *)jarg1; + result = ReadableUnspentOutputsSummary_HandlePtr_value(arg1); { - BlockHeader__Handle * resultptr = (BlockHeader__Handle *) malloc(sizeof(BlockHeader__Handle)); - memmove(resultptr, &result, sizeof(BlockHeader__Handle)); + ReadableUnspentOutputsSummary_Handle * resultptr = (ReadableUnspentOutputsSummary_Handle *) malloc(sizeof(ReadableUnspentOutputsSummary_Handle)); + memmove(resultptr, &result, sizeof(ReadableUnspentOutputsSummary_Handle)); jresult = resultptr; } return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Signature_HandlePtr() { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Hash_HandlePtr() { void * jresult ; - Signature_Handle *result = 0 ; + Hash_Handle *result = 0 ; - result = (Signature_Handle *)new_Signature_HandlePtr(); + result = (Hash_Handle *)new_Hash_HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Signature_HandlePtr(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Hash_HandlePtr(void * jarg1) { void * jresult ; - Signature_Handle arg1 ; - Signature_Handle *argp1 ; - Signature_Handle *result = 0 ; + Hash_Handle arg1 ; + Hash_Handle *argp1 ; + Hash_Handle *result = 0 ; - argp1 = (Signature_Handle *)jarg1; + argp1 = (Hash_Handle *)jarg1; if (!argp1) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Signature_Handle", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Hash_Handle", 0); return 0; } arg1 = *argp1; - result = (Signature_Handle *)copy_Signature_HandlePtr(arg1); + result = (Hash_Handle *)copy_Hash_HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Signature_HandlePtr(void * jarg1) { - Signature_Handle *arg1 = (Signature_Handle *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Hash_HandlePtr(void * jarg1) { + Hash_Handle *arg1 = (Hash_Handle *) 0 ; - arg1 = (Signature_Handle *)jarg1; - delete_Signature_HandlePtr(arg1); + arg1 = (Hash_Handle *)jarg1; + delete_Hash_HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Signature_HandlePtr_assign(void * jarg1, void * jarg2) { - Signature_Handle *arg1 = (Signature_Handle *) 0 ; - Signature_Handle arg2 ; - Signature_Handle *argp2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Hash_HandlePtr_assign(void * jarg1, void * jarg2) { + Hash_Handle *arg1 = (Hash_Handle *) 0 ; + Hash_Handle arg2 ; + Hash_Handle *argp2 ; - arg1 = (Signature_Handle *)jarg1; - argp2 = (Signature_Handle *)jarg2; + arg1 = (Hash_Handle *)jarg1; + argp2 = (Hash_Handle *)jarg2; if (!argp2) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Signature_Handle", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Hash_Handle", 0); return ; } arg2 = *argp2; - Signature_HandlePtr_assign(arg1,arg2); + Hash_HandlePtr_assign(arg1,arg2); } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_Signature_HandlePtr_value(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_Hash_HandlePtr_value(void * jarg1) { void * jresult ; - Signature_Handle *arg1 = (Signature_Handle *) 0 ; - Signature_Handle result; + Hash_Handle *arg1 = (Hash_Handle *) 0 ; + Hash_Handle result; - arg1 = (Signature_Handle *)jarg1; - result = Signature_HandlePtr_value(arg1); + arg1 = (Hash_Handle *)jarg1; + result = Hash_HandlePtr_value(arg1); { - Signature_Handle * resultptr = (Signature_Handle *) malloc(sizeof(Signature_Handle)); - memmove(resultptr, &result, sizeof(Signature_Handle)); + Hash_Handle * resultptr = (Hash_Handle *) malloc(sizeof(Hash_Handle)); + memmove(resultptr, &result, sizeof(Hash_Handle)); jresult = resultptr; } return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_Number_HandlePtr() { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_new_UnspentOutputsSummary_HandlePtr() { void * jresult ; - Number_Handle *result = 0 ; + UnspentOutputsSummary_Handle *result = 0 ; - result = (Number_Handle *)new_Number_HandlePtr(); + result = (UnspentOutputsSummary_Handle *)new_UnspentOutputsSummary_HandlePtr(); jresult = (void *)result; return jresult; } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_Number_HandlePtr(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_copy_UnspentOutputsSummary_HandlePtr(void * jarg1) { void * jresult ; - Number_Handle arg1 ; - Number_Handle *argp1 ; - Number_Handle *result = 0 ; + UnspentOutputsSummary_Handle arg1 ; + UnspentOutputsSummary_Handle *argp1 ; + UnspentOutputsSummary_Handle *result = 0 ; - argp1 = (Number_Handle *)jarg1; + argp1 = (UnspentOutputsSummary_Handle *)jarg1; if (!argp1) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Number_Handle", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null UnspentOutputsSummary_Handle", 0); return 0; } arg1 = *argp1; - result = (Number_Handle *)copy_Number_HandlePtr(arg1); + result = (UnspentOutputsSummary_Handle *)copy_UnspentOutputsSummary_HandlePtr(arg1); jresult = (void *)result; return jresult; } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_Number_HandlePtr(void * jarg1) { - Number_Handle *arg1 = (Number_Handle *) 0 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_delete_UnspentOutputsSummary_HandlePtr(void * jarg1) { + UnspentOutputsSummary_Handle *arg1 = (UnspentOutputsSummary_Handle *) 0 ; - arg1 = (Number_Handle *)jarg1; - delete_Number_HandlePtr(arg1); + arg1 = (UnspentOutputsSummary_Handle *)jarg1; + delete_UnspentOutputsSummary_HandlePtr(arg1); } -SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_Number_HandlePtr_assign(void * jarg1, void * jarg2) { - Number_Handle *arg1 = (Number_Handle *) 0 ; - Number_Handle arg2 ; - Number_Handle *argp2 ; +SWIGEXPORT void SWIGSTDCALL CSharp_skycoin_UnspentOutputsSummary_HandlePtr_assign(void * jarg1, void * jarg2) { + UnspentOutputsSummary_Handle *arg1 = (UnspentOutputsSummary_Handle *) 0 ; + UnspentOutputsSummary_Handle arg2 ; + UnspentOutputsSummary_Handle *argp2 ; - arg1 = (Number_Handle *)jarg1; - argp2 = (Number_Handle *)jarg2; + arg1 = (UnspentOutputsSummary_Handle *)jarg1; + argp2 = (UnspentOutputsSummary_Handle *)jarg2; if (!argp2) { - SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Number_Handle", 0); + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null UnspentOutputsSummary_Handle", 0); return ; } arg2 = *argp2; - Number_HandlePtr_assign(arg1,arg2); + UnspentOutputsSummary_HandlePtr_assign(arg1,arg2); } -SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_Number_HandlePtr_value(void * jarg1) { +SWIGEXPORT void * SWIGSTDCALL CSharp_skycoin_UnspentOutputsSummary_HandlePtr_value(void * jarg1) { void * jresult ; - Number_Handle *arg1 = (Number_Handle *) 0 ; - Number_Handle result; + UnspentOutputsSummary_Handle *arg1 = (UnspentOutputsSummary_Handle *) 0 ; + UnspentOutputsSummary_Handle result; - arg1 = (Number_Handle *)jarg1; - result = Number_HandlePtr_value(arg1); + arg1 = (UnspentOutputsSummary_Handle *)jarg1; + result = UnspentOutputsSummary_HandlePtr_value(arg1); { - Number_Handle * resultptr = (Number_Handle *) malloc(sizeof(Number_Handle)); - memmove(resultptr, &result, sizeof(Number_Handle)); + UnspentOutputsSummary_Handle * resultptr = (UnspentOutputsSummary_Handle *) malloc(sizeof(UnspentOutputsSummary_Handle)); + memmove(resultptr, &result, sizeof(UnspentOutputsSummary_Handle)); jresult = resultptr; } return jresult;