Re-fix whitespace errors
[ldk-java] / typescript_strings.py
index b96340c04e1a5c223e7cd89ac0a3ed14ace741ce..5e008a736ce5da66d1119602c8bc6264840db1d4 100644 (file)
@@ -286,11 +286,9 @@ import * as bindings from '../bindings' // TODO: figure out location
         else:
             return None
 
-
     def wasm_import_header(self, target):
         if target == Target.NODEJS:
             return """
-            
 import * as fs from 'fs';
 const source = fs.readFileSync('./ldk.wasm');
 
@@ -320,33 +318,50 @@ const nextMultipleOfFour = (value: number) => {
 }
 
 const encodeArray = (inputArray) => {
-    // TODO: (matt) is this correct, or should it go back to length * 4?
-    // const cArrayPointer = wasm.wasm_malloc(inputArray.length * 4);
-    const cArrayPointer = wasm.wasm_malloc(nextMultipleOfFour(inputArray.length));
-
-    const arrayMemoryView = new Uint32Array(memory.buffer, cArrayPointer, inputArray.length);
-    arrayMemoryView.set(inputArray);
-    return cArrayPointer;
+       const cArrayPointer = wasm.wasm_malloc((inputArray.length + 1) * 4);
+       const arrayMemoryView = new Uint32Array(memory.buffer, cArrayPointer + 4, inputArray.length);
+       arrayMemoryView.set(inputArray, 1);
+    arrayMemoryView[0] = inputArray.length;
+       return cArrayPointer;
 }
 
-const decodeArray = (arrayPointer, free = true) => {
-    const arraySizeViewer = new Uint32Array(
-        memory.buffer, // value
-        arrayPointer, // offset
-        1 // one int
-    );
-    const arraySize = arraySizeViewer[0];
-    const actualArrayViewer = new Uint32Array(
-        memory.buffer, // value
-        arrayPointer, // offset
-        arraySize + 1
-    );
-    const actualArray = actualArrayViewer.slice(1, arraySize + 1);
-    if (free) {
-        // wasm.free_array(arrayPointer);
-        wasm.wasm_free(arrayPointer); // TODO: check if passing *void still captures remaining values
-    }
-    return actualArray;
+const getArrayLength = (arrayPointer) => {
+       const arraySizeViewer = new Uint32Array(
+               memory.buffer, // value
+               arrayPointer, // offset
+               1 // one int
+       );
+       return arraySizeViewer[0];
+}
+const decodeUint8Array = (arrayPointer, free = true) => {
+       const arraySize = getArrayLength(arrayPointer);
+       const actualArrayViewer = new Uint8Array(
+               memory.buffer, // value
+               arrayPointer + 4, // offset (ignoring length bytes)
+               arraySize // uint8 count
+       );
+       // Clone the contents, TODO: In the future we should wrap the Viewer in a class that
+       // will free the underlying memory when it becomes unreachable instead of copying here.
+       const actualArray = actualArrayViewer.slice(0, arraySize);
+       if (free) {
+               wasm.free(arrayPointer);
+       }
+       return actualArray;
+}
+const decodeUint32Array = (arrayPointer, free = true) => {
+       const arraySize = getArrayLength(arrayPointer);
+       const actualArrayViewer = new Uint32Array(
+               memory.buffer, // value
+               arrayPointer + 4, // offset (ignoring length bytes)
+               arraySize // uint32 count
+       );
+       // Clone the contents, TODO: In the future we should wrap the Viewer in a class that
+       // will free the underlying memory when it becomes unreachable instead of copying here.
+       const actualArray = actualArrayViewer.slice(0, arraySize);
+       if (free) {
+               wasm.free(arrayPointer);
+       }
+       return actualArray;
 }
 
 const encodeString = (string) => {
@@ -381,9 +396,7 @@ const decodeString = (stringPointer, free = true) => {
 
     return result;
 };
-
-
-            """
+"""
         return ''
 
     def init_str(self):