From 43a8d866a4703aac8c545562eb8e2d3a610c4f68 Mon Sep 17 00:00:00 2001 From: Jonathan Buchanan Date: Thu, 28 Jan 2021 22:45:57 -0500 Subject: add node to swift/objc bridge --- Taler/NodeWrapper.swift | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 Taler/NodeWrapper.swift (limited to 'Taler/NodeWrapper.swift') diff --git a/Taler/NodeWrapper.swift b/Taler/NodeWrapper.swift new file mode 100644 index 0000000..60ca92b --- /dev/null +++ b/Taler/NodeWrapper.swift @@ -0,0 +1,49 @@ +// +// NodeWrapper.swift +// Taler +// +// Created by Jonathan Buchanan on 1/14/21. +// Copyright © 2021 Taler. All rights reserved. +// + +import Foundation + +class Iono { + var __instance: OpaquePointer + var messageHandler: ((String) -> ())? + + init() { + __instance = __new_instance() + } + + deinit { + __free_instance(__instance) + } + + func notifyNative() { + + } + + func evalJS(source: String) -> String { + var result_cstr: UnsafeMutablePointer = __eval_js(source.cString(using: .utf8), __instance) + var result = String(cString: result_cstr) + free(result_cstr) + return result + } + + func evalNodeCode(source: String) { + __make_callback(source.cString(using: .utf8), __instance) + } + + func sendMessage(message: String) { + + } + + func waitUntilStopped() { + + } + + func putModuleCode(moduleName: String, code: String) { + __put_module_code(moduleName.cString(using: .utf8), code.cString(using: .utf8), __instance) + } +} -- cgit v1.2.3