goscript 0.0.10 → 0.0.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/builtin/builtin.go +11 -0
- package/builtin/builtin.ts +170 -65
- package/cmd/goscript/cmd_compile.go +28 -8
- package/compiler/compile.go +42 -34
- package/compiler/compile_decls.go +12 -0
- package/compiler/compile_expr.go +135 -8
- package/compiler/compile_field.go +22 -1
- package/compiler/compile_spec.go +141 -4
- package/compiler/compile_stmt.go +124 -43
- package/compiler/compiler.go +1 -0
- package/compiler/config.go +2 -0
- package/compiler/file_compiler.go +1 -1
- package/compiler/index.test.ts +1 -1
- package/compiler/output_path.go +1 -1
- package/compiler/types/tokens.go +1 -0
- package/compiler/writer.go +1 -1
- package/dist/builtin/builtin.d.ts +63 -1
- package/dist/builtin/builtin.js +81 -0
- package/dist/builtin/builtin.js.map +1 -1
- package/dist/compliance/tests/async_basic/async_basic.gs.js +1 -1
- package/dist/compliance/tests/async_basic/async_basic.gs.js.map +1 -1
- package/dist/compliance/tests/async_defer_statement/async_defer_statement.gs.d.ts +1 -0
- package/dist/compliance/tests/async_defer_statement/async_defer_statement.gs.js +82 -0
- package/dist/compliance/tests/async_defer_statement/async_defer_statement.gs.js.map +1 -0
- package/dist/compliance/tests/channel_basic/channel_basic.gs.js +1 -1
- package/dist/compliance/tests/channel_basic/channel_basic.gs.js.map +1 -1
- package/dist/compliance/tests/composite_literal_assignment/composite_literal_assignment.gs.js +1 -1
- package/dist/compliance/tests/composite_literal_assignment/composite_literal_assignment.gs.js.map +1 -1
- package/dist/compliance/tests/copy_independence/copy_independence.gs.js +1 -1
- package/dist/compliance/tests/copy_independence/copy_independence.gs.js.map +1 -1
- package/dist/compliance/tests/defer_statement/defer_statement.gs.d.ts +1 -0
- package/dist/compliance/tests/defer_statement/defer_statement.gs.js +75 -0
- package/dist/compliance/tests/defer_statement/defer_statement.gs.js.map +1 -0
- package/dist/compliance/tests/embedded_interface_assertion/embedded_interface_assertion.gs.js +3 -3
- package/dist/compliance/tests/embedded_interface_assertion/embedded_interface_assertion.gs.js.map +1 -1
- package/dist/compliance/tests/flag_bitwise_op/flag_bitwise_op.gs.d.ts +1 -0
- package/dist/compliance/tests/flag_bitwise_op/flag_bitwise_op.gs.js +29 -0
- package/dist/compliance/tests/flag_bitwise_op/flag_bitwise_op.gs.js.map +1 -0
- package/dist/compliance/tests/for_loop_infinite/for_loop_infinite.gs.d.ts +1 -0
- package/dist/compliance/tests/for_loop_infinite/for_loop_infinite.gs.js +14 -0
- package/dist/compliance/tests/for_loop_infinite/for_loop_infinite.gs.js.map +1 -0
- package/dist/compliance/tests/for_range/for_range.gs.js +1 -1
- package/dist/compliance/tests/for_range/for_range.gs.js.map +1 -1
- package/dist/compliance/tests/function_call_result_assignment/function_call_result_assignment.gs.d.ts +1 -1
- package/dist/compliance/tests/function_call_result_assignment/function_call_result_assignment.gs.js +1 -1
- package/dist/compliance/tests/function_call_result_assignment/function_call_result_assignment.gs.js.map +1 -1
- package/dist/compliance/tests/interface_method_comments/interface_method_comments.gs.d.ts +1 -0
- package/dist/compliance/tests/interface_method_comments/interface_method_comments.gs.js +12 -0
- package/dist/compliance/tests/interface_method_comments/interface_method_comments.gs.js.map +1 -0
- package/dist/compliance/tests/interface_multi_param_return/interface_multi_param_return.gs.js +2 -2
- package/dist/compliance/tests/interface_multi_param_return/interface_multi_param_return.gs.js.map +1 -1
- package/dist/compliance/tests/interface_to_interface_type_assertion/interface_to_interface_type_assertion.gs.js +3 -3
- package/dist/compliance/tests/interface_to_interface_type_assertion/interface_to_interface_type_assertion.gs.js.map +1 -1
- package/dist/compliance/tests/interface_type_assertion/interface_type_assertion.gs.js +13 -3
- package/dist/compliance/tests/interface_type_assertion/interface_type_assertion.gs.js.map +1 -1
- package/dist/compliance/tests/interface_type_assertion_signature_mismatch/interface_type_assertion_signature_mismatch.gs.d.ts +1 -0
- package/dist/compliance/tests/interface_type_assertion_signature_mismatch/interface_type_assertion_signature_mismatch.gs.js +51 -0
- package/dist/compliance/tests/interface_type_assertion_signature_mismatch/interface_type_assertion_signature_mismatch.gs.js.map +1 -0
- package/dist/compliance/tests/map_support/map_support.gs.js +1 -1
- package/dist/compliance/tests/map_support/map_support.gs.js.map +1 -1
- package/dist/compliance/tests/method_call_on_pointer_receiver/method_call_on_pointer_receiver.gs.js +1 -1
- package/dist/compliance/tests/method_call_on_pointer_receiver/method_call_on_pointer_receiver.gs.js.map +1 -1
- package/dist/compliance/tests/method_call_on_pointer_via_value/method_call_on_pointer_via_value.gs.js +1 -1
- package/dist/compliance/tests/method_call_on_pointer_via_value/method_call_on_pointer_via_value.gs.js.map +1 -1
- package/dist/compliance/tests/method_call_on_value_receiver/method_call_on_value_receiver.gs.js +1 -1
- package/dist/compliance/tests/method_call_on_value_receiver/method_call_on_value_receiver.gs.js.map +1 -1
- package/dist/compliance/tests/method_call_on_value_via_pointer/method_call_on_value_via_pointer.gs.js +1 -1
- package/dist/compliance/tests/method_call_on_value_via_pointer/method_call_on_value_via_pointer.gs.js.map +1 -1
- package/dist/compliance/tests/pointer_assignment_no_copy/pointer_assignment_no_copy.gs.js +1 -1
- package/dist/compliance/tests/pointer_assignment_no_copy/pointer_assignment_no_copy.gs.js.map +1 -1
- package/dist/compliance/tests/pointer_composite_literal_assignment/pointer_composite_literal_assignment.gs.js +1 -1
- package/dist/compliance/tests/pointer_composite_literal_assignment/pointer_composite_literal_assignment.gs.js.map +1 -1
- package/dist/compliance/tests/pointer_deref_multiassign/pointer_deref_multiassign.gs.js +1 -1
- package/dist/compliance/tests/pointer_deref_multiassign/pointer_deref_multiassign.gs.js.map +1 -1
- package/dist/compliance/tests/pointer_initialization/pointer_initialization.gs.js +1 -1
- package/dist/compliance/tests/pointer_initialization/pointer_initialization.gs.js.map +1 -1
- package/dist/compliance/tests/select_receive_on_closed_channel_no_default/select_receive_on_closed_channel_no_default.gs.js +1 -1
- package/dist/compliance/tests/select_receive_on_closed_channel_no_default/select_receive_on_closed_channel_no_default.gs.js.map +1 -1
- package/dist/compliance/tests/select_send_on_full_buffered_channel_with_default/select_send_on_full_buffered_channel_with_default.gs.js +2 -1
- package/dist/compliance/tests/select_send_on_full_buffered_channel_with_default/select_send_on_full_buffered_channel_with_default.gs.js.map +1 -1
- package/dist/compliance/tests/select_statement/select_statement.gs.js +2 -4
- package/dist/compliance/tests/select_statement/select_statement.gs.js.map +1 -1
- package/dist/compliance/tests/simple_deref_assignment/simple_deref_assignment.gs.js +1 -1
- package/dist/compliance/tests/simple_deref_assignment/simple_deref_assignment.gs.js.map +1 -1
- package/dist/compliance/tests/slices/slices.gs.js +281 -8
- package/dist/compliance/tests/slices/slices.gs.js.map +1 -1
- package/dist/compliance/tests/string_conversion/string_conversion.gs.d.ts +1 -0
- package/dist/compliance/tests/string_conversion/string_conversion.gs.js +41 -0
- package/dist/compliance/tests/string_conversion/string_conversion.gs.js.map +1 -0
- package/dist/compliance/tests/struct_embedding/struct_embedding.gs.d.ts +1 -0
- package/dist/compliance/tests/struct_embedding/struct_embedding.gs.js +48 -0
- package/dist/compliance/tests/struct_embedding/struct_embedding.gs.js.map +1 -0
- package/dist/compliance/tests/struct_field_access/struct_field_access.gs.js +1 -1
- package/dist/compliance/tests/struct_field_access/struct_field_access.gs.js.map +1 -1
- package/dist/compliance/tests/struct_pointer_interface_fields/struct_pointer_interface_fields.gs.d.ts +1 -0
- package/dist/compliance/tests/struct_pointer_interface_fields/struct_pointer_interface_fields.gs.js +26 -0
- package/dist/compliance/tests/struct_pointer_interface_fields/struct_pointer_interface_fields.gs.js.map +1 -0
- package/dist/compliance/tests/struct_value_init_clone/struct_value_init_clone.gs.js +1 -1
- package/dist/compliance/tests/struct_value_init_clone/struct_value_init_clone.gs.js.map +1 -1
- package/dist/compliance/tests/value_type_copy_behavior/value_type_copy_behavior.gs.js +1 -1
- package/dist/compliance/tests/value_type_copy_behavior/value_type_copy_behavior.gs.js.map +1 -1
- package/package.json +4 -3
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
// Generated file based on async_defer_statement.go
|
|
2
|
+
// Updated when compliance tests are re-run, DO NOT EDIT!
|
|
3
|
+
var __addDisposableResource = (this && this.__addDisposableResource) || function (env, value, async) {
|
|
4
|
+
if (value !== null && value !== void 0) {
|
|
5
|
+
if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
|
|
6
|
+
var dispose, inner;
|
|
7
|
+
if (async) {
|
|
8
|
+
if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
|
|
9
|
+
dispose = value[Symbol.asyncDispose];
|
|
10
|
+
}
|
|
11
|
+
if (dispose === void 0) {
|
|
12
|
+
if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
|
|
13
|
+
dispose = value[Symbol.dispose];
|
|
14
|
+
if (async) inner = dispose;
|
|
15
|
+
}
|
|
16
|
+
if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
|
|
17
|
+
if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };
|
|
18
|
+
env.stack.push({ value: value, dispose: dispose, async: async });
|
|
19
|
+
}
|
|
20
|
+
else if (async) {
|
|
21
|
+
env.stack.push({ async: true });
|
|
22
|
+
}
|
|
23
|
+
return value;
|
|
24
|
+
};
|
|
25
|
+
var __disposeResources = (this && this.__disposeResources) || (function (SuppressedError) {
|
|
26
|
+
return function (env) {
|
|
27
|
+
function fail(e) {
|
|
28
|
+
env.error = env.hasError ? new SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
|
|
29
|
+
env.hasError = true;
|
|
30
|
+
}
|
|
31
|
+
var r, s = 0;
|
|
32
|
+
function next() {
|
|
33
|
+
while (r = env.stack.pop()) {
|
|
34
|
+
try {
|
|
35
|
+
if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
|
|
36
|
+
if (r.dispose) {
|
|
37
|
+
var result = r.dispose.call(r.value);
|
|
38
|
+
if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
|
|
39
|
+
}
|
|
40
|
+
else s |= 1;
|
|
41
|
+
}
|
|
42
|
+
catch (e) {
|
|
43
|
+
fail(e);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
|
|
47
|
+
if (env.hasError) throw env.error;
|
|
48
|
+
}
|
|
49
|
+
return next();
|
|
50
|
+
};
|
|
51
|
+
})(typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
52
|
+
var e = new Error(message);
|
|
53
|
+
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
54
|
+
});
|
|
55
|
+
import * as goscript from "@goscript/builtin";
|
|
56
|
+
export async function main() {
|
|
57
|
+
const env_1 = { stack: [], error: void 0, hasError: false };
|
|
58
|
+
try {
|
|
59
|
+
const __defer = __addDisposableResource(env_1, new goscript.AsyncDisposableStack(), true);
|
|
60
|
+
let ch = goscript.makeChannel(1, false);
|
|
61
|
+
// Wait for signal from main
|
|
62
|
+
__defer.defer(async () => {
|
|
63
|
+
console.log("deferred start");
|
|
64
|
+
await ch.receive();
|
|
65
|
+
console.log("deferred end");
|
|
66
|
+
});
|
|
67
|
+
console.log("main start");
|
|
68
|
+
console.log("main signaling defer");
|
|
69
|
+
await ch.send(true);
|
|
70
|
+
console.log("main end");
|
|
71
|
+
}
|
|
72
|
+
catch (e_1) {
|
|
73
|
+
env_1.error = e_1;
|
|
74
|
+
env_1.hasError = true;
|
|
75
|
+
}
|
|
76
|
+
finally {
|
|
77
|
+
const result_1 = __disposeResources(env_1);
|
|
78
|
+
if (result_1)
|
|
79
|
+
await result_1;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=async_defer_statement.gs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"async_defer_statement.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/async_defer_statement/async_defer_statement.gs.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,yDAAyD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEzD,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,IAAI;;;QACzB,MAAY,OAAO,kCAAG,IAAI,QAAQ,CAAC,oBAAoB,EAAE,OAAA,CAAC;QAC1D,IAAI,EAAE,GAAG,QAAQ,CAAC,WAAW,CAAU,CAAC,EAAE,KAAK,CAAC,CAAA;QAEhD,4BAA4B;QAC5B,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE;YACxB,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;YAC7B,MAAM,EAAE,CAAC,OAAO,EAAE,CAAA;YAClB,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;QAC5B,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;QACzB,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAA;QACnC,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;;;;;;;;;;;CACvB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Generated file based on channel_basic.go
|
|
2
2
|
// Updated when compliance tests are re-run, DO NOT EDIT!
|
|
3
|
-
import * as goscript from "@
|
|
3
|
+
import * as goscript from "@goscript/builtin";
|
|
4
4
|
export async function main() {
|
|
5
5
|
let messages = goscript.makeChannel(0, "");
|
|
6
6
|
queueMicrotask(async () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel_basic.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/channel_basic/channel_basic.gs.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,
|
|
1
|
+
{"version":3,"file":"channel_basic.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/channel_basic/channel_basic.gs.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,IAAI,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAS,CAAC,EAAE,EAAE,CAAC,CAAA;IAElD,cAAc,CAAC,KAAK,IAAI,EAAE;QACzB,CAAC;YACA,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC5B,CAAC;IACF,CAAC,CAAC,CAAA;IAEF,IAAI,GAAG,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAA;IAClC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AACjB,CAAC"}
|
package/dist/compliance/tests/composite_literal_assignment/composite_literal_assignment.gs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composite_literal_assignment.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/composite_literal_assignment/composite_literal_assignment.gs.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,
|
|
1
|
+
{"version":3,"file":"composite_literal_assignment.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/composite_literal_assignment/composite_literal_assignment.gs.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAE9C,MAAM,QAAQ;IACN,KAAK,GAAW,CAAC,CAAC;IAClB,QAAQ,GAAW,EAAE,CAAC;IAC7B,eAAe;IACP,MAAM,GAAY,KAAK,CAAC;IAEhC,YAAY,IAAwB,IAAI,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAW,CAAC,CAAC,CAAC,CAAC;IAC9E,KAAK,KAAe,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAa,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAEvG,kDAAkD;IAClD,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC,YAAY,CACvC,UAAU,EACV,QAAQ,CAAC,QAAQ,CAAC,MAAM,EACxB,IAAI,QAAQ,EAAE,EACd,IAAI,GAAG,CAAC,EAAE,CAAC,EACX,QAAQ,CACT,CAAC;;AAGH,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,oDAAoD;IACpD,wDAAwD;IACxD,IAAI,aAAa,GAAG,IAAI,QAAQ,CAAC,EAAC,QAAQ,EAAE,mBAAmB,EAAC,CAAC,CAAA;IACjE,iDAAiD;IACjD,IAAI,iBAAiB,GAAG,aAAa,CAAC,KAAK,EAAE,CAAA;IAC7C,iBAAiB,CAAC,QAAQ,GAAG,iCAAiC,CAAA;IAC9D,gCAAgC;IAChC,OAAO,CAAC,GAAG,CAAC,gEAAgE,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAA;IACtG,8CAA8C;IAC9C,OAAO,CAAC,GAAG,CAAC,mFAAmF,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;AAC9H,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copy_independence.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/copy_independence/copy_independence.gs.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,
|
|
1
|
+
{"version":3,"file":"copy_independence.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/copy_independence/copy_independence.gs.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAE9C,MAAM,QAAQ;IACN,KAAK,GAAW,CAAC,CAAC;IAClB,QAAQ,GAAW,EAAE,CAAC;IAE7B,YAAY,IAAwB,IAAI,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAW,CAAC,CAAC,CAAC,CAAC;IAC9E,KAAK,KAAe,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAa,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAEvG,kDAAkD;IAClD,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC,YAAY,CACvC,UAAU,EACV,QAAQ,CAAC,QAAQ,CAAC,MAAM,EACxB,IAAI,QAAQ,EAAE,EACd,IAAI,GAAG,CAAC,EAAE,CAAC,EACX,QAAQ,CACT,CAAC;;AAGH,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,uDAAuD;IACvD,IAAI,aAAa,GAAG,IAAI,QAAQ,CAAC,EAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAC,CAAC,CAAA;IACrE,IAAI,sBAAsB,GAAG,aAAa,CAAC,KAAK,EAAE,CAAA;IAClD,sBAAsB,CAAC,QAAQ,GAAG,qCAAqC,CAAA;IACvE,IAAI,UAAU,GAAG,sBAAsB,CAAC,KAAK,EAAE,CAAA;IAC/C,UAAU,CAAC,QAAQ,GAAG,cAAc,CAAA;IACpC,IAAI,UAAU,GAAG,sBAAsB,CAAC,KAAK,EAAE,CAAA;IAC/C,UAAU,CAAC,QAAQ,GAAG,cAAc,CAAA;IACpC,IAAI,WAAW,GAAG,aAAa,CAAA;IAE/B,sCAAsC;IACtC,0BAA0B;IAC1B,OAAO,CAAC,GAAG,CAAC,iFAAiF,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAA;IACrH,kDAAkD;IAClD,OAAO,CAAC,GAAG,CAAC,mHAAmH,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAA;IAClK,2BAA2B;IAC3B,OAAO,CAAC,GAAG,CAAC,8CAA8C,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAA;IACjF,2BAA2B;IAC3B,OAAO,CAAC,GAAG,CAAC,8CAA8C,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAA;AAClF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function main(): Promise<void>;
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
// Generated file based on defer_statement.go
|
|
2
|
+
// Updated when compliance tests are re-run, DO NOT EDIT!
|
|
3
|
+
var __addDisposableResource = (this && this.__addDisposableResource) || function (env, value, async) {
|
|
4
|
+
if (value !== null && value !== void 0) {
|
|
5
|
+
if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
|
|
6
|
+
var dispose, inner;
|
|
7
|
+
if (async) {
|
|
8
|
+
if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
|
|
9
|
+
dispose = value[Symbol.asyncDispose];
|
|
10
|
+
}
|
|
11
|
+
if (dispose === void 0) {
|
|
12
|
+
if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
|
|
13
|
+
dispose = value[Symbol.dispose];
|
|
14
|
+
if (async) inner = dispose;
|
|
15
|
+
}
|
|
16
|
+
if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
|
|
17
|
+
if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };
|
|
18
|
+
env.stack.push({ value: value, dispose: dispose, async: async });
|
|
19
|
+
}
|
|
20
|
+
else if (async) {
|
|
21
|
+
env.stack.push({ async: true });
|
|
22
|
+
}
|
|
23
|
+
return value;
|
|
24
|
+
};
|
|
25
|
+
var __disposeResources = (this && this.__disposeResources) || (function (SuppressedError) {
|
|
26
|
+
return function (env) {
|
|
27
|
+
function fail(e) {
|
|
28
|
+
env.error = env.hasError ? new SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
|
|
29
|
+
env.hasError = true;
|
|
30
|
+
}
|
|
31
|
+
var r, s = 0;
|
|
32
|
+
function next() {
|
|
33
|
+
while (r = env.stack.pop()) {
|
|
34
|
+
try {
|
|
35
|
+
if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
|
|
36
|
+
if (r.dispose) {
|
|
37
|
+
var result = r.dispose.call(r.value);
|
|
38
|
+
if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
|
|
39
|
+
}
|
|
40
|
+
else s |= 1;
|
|
41
|
+
}
|
|
42
|
+
catch (e) {
|
|
43
|
+
fail(e);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
|
|
47
|
+
if (env.hasError) throw env.error;
|
|
48
|
+
}
|
|
49
|
+
return next();
|
|
50
|
+
};
|
|
51
|
+
})(typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
52
|
+
var e = new Error(message);
|
|
53
|
+
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
54
|
+
});
|
|
55
|
+
import * as goscript from "@goscript/builtin";
|
|
56
|
+
export async function main() {
|
|
57
|
+
const env_1 = { stack: [], error: void 0, hasError: false };
|
|
58
|
+
try {
|
|
59
|
+
const __defer = __addDisposableResource(env_1, new goscript.AsyncDisposableStack(), true);
|
|
60
|
+
__defer.defer(() => {
|
|
61
|
+
console.log("deferred");
|
|
62
|
+
});
|
|
63
|
+
console.log("main");
|
|
64
|
+
}
|
|
65
|
+
catch (e_1) {
|
|
66
|
+
env_1.error = e_1;
|
|
67
|
+
env_1.hasError = true;
|
|
68
|
+
}
|
|
69
|
+
finally {
|
|
70
|
+
const result_1 = __disposeResources(env_1);
|
|
71
|
+
if (result_1)
|
|
72
|
+
await result_1;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=defer_statement.gs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"defer_statement.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/defer_statement/defer_statement.gs.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,yDAAyD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEzD,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,IAAI;;;QACzB,MAAY,OAAO,kCAAG,IAAI,QAAQ,CAAC,oBAAoB,EAAE,OAAA,CAAC;QAC1D,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE;YAClB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QAAA,CAAC,CAAC,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;;;;;;;;;;;CACnB"}
|
package/dist/compliance/tests/embedded_interface_assertion/embedded_interface_assertion.gs.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Generated file based on embedded_interface_assertion.go
|
|
2
2
|
// Updated when compliance tests are re-run, DO NOT EDIT!
|
|
3
|
-
import * as goscript from "@
|
|
3
|
+
import * as goscript from "@goscript/builtin";
|
|
4
4
|
// Register this interface with the runtime type system
|
|
5
5
|
const Reader__typeInfo = goscript.registerType('Reader', goscript.TypeKind.Interface, null, new Set(['Read']), undefined);
|
|
6
6
|
// Register this interface with the runtime type system
|
|
@@ -23,10 +23,10 @@ class MyStruct {
|
|
|
23
23
|
static __typeInfo = goscript.registerType('MyStruct', goscript.TypeKind.Struct, new MyStruct(), new Set(['Read', 'Close']), MyStruct);
|
|
24
24
|
}
|
|
25
25
|
export async function main() {
|
|
26
|
-
let rwc;
|
|
26
|
+
let rwc = null;
|
|
27
27
|
let s = new MyStruct({});
|
|
28
28
|
rwc = s.clone();
|
|
29
|
-
let {
|
|
29
|
+
let { ok: ok } = goscript.typeAssert(rwc, 'ReadCloser');
|
|
30
30
|
if (ok) {
|
|
31
31
|
console.log("Embedded interface assertion successful");
|
|
32
32
|
}
|
package/dist/compliance/tests/embedded_interface_assertion/embedded_interface_assertion.gs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embedded_interface_assertion.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/embedded_interface_assertion/embedded_interface_assertion.gs.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,
|
|
1
|
+
{"version":3,"file":"embedded_interface_assertion.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/embedded_interface_assertion/embedded_interface_assertion.gs.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAM9C,uDAAuD;AACvD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,YAAY,CAC5C,QAAQ,EACR,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAC3B,IAAI,EACJ,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,EACjB,SAAS,CACV,CAAC;AAMF,uDAAuD;AACvD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,YAAY,CAC5C,QAAQ,EACR,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAC3B,IAAI,EACJ,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,EAClB,SAAS,CACV,CAAC;AAKF,uDAAuD;AACvD,MAAM,oBAAoB,GAAG,QAAQ,CAAC,YAAY,CAChD,YAAY,EACZ,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAC3B,IAAI,EACJ,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EAC1B,SAAS,CACV,CAAC;AAEF,MAAM,QAAQ;IAEN,IAAI,CAAC,CAAW;QACtB,MAAM,CAAC,GAAG,IAAI,CAAA;QACd,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IACjB,CAAC;IAEM,KAAK;QACX,MAAM,CAAC,GAAG,IAAI,CAAA;QACd,OAAO,IAAI,CAAA;IACZ,CAAC;IAED,YAAY,IAAwB,IAAI,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAW,CAAC,CAAC,CAAC,CAAC;IAC9E,KAAK,KAAe,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAa,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAEvG,kDAAkD;IAClD,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC,YAAY,CACvC,UAAU,EACV,QAAQ,CAAC,QAAQ,CAAC,MAAM,EACxB,IAAI,QAAQ,EAAE,EACd,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAC1B,QAAQ,CACT,CAAC;;AAGH,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,IAAI,GAAG,GAAsB,IAAI,CAAC;IAClC,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC,EAAE,CAAC,CAAA;IACxB,GAAG,GAAG,CAAC,CAAC,KAAK,EAAE,CAAA;IAEf,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAa,GAAG,EAAE,YAAY,CAAC,CAAA;IACnE,IAAI,EAAE,EAAE,CAAC;QACR,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAA;IACvD,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAA;IACnD,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function main(): Promise<void>;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
// Generated file based on flag_bitwise_op.go
|
|
2
|
+
// Updated when compliance tests are re-run, DO NOT EDIT!
|
|
3
|
+
export async function main() {
|
|
4
|
+
let O_WRONLY = 0x1;
|
|
5
|
+
let O_CREATE = 0x40;
|
|
6
|
+
let O_APPEND = 0x400;
|
|
7
|
+
let O_TRUNC = 0x200;
|
|
8
|
+
let flag = ((O_WRONLY | O_CREATE) | O_APPEND);
|
|
9
|
+
if ((flag & O_APPEND) != 0) {
|
|
10
|
+
console.log("O_APPEND is set: Expected: O_APPEND is set, Actual: O_APPEND is set");
|
|
11
|
+
}
|
|
12
|
+
else {
|
|
13
|
+
console.log("O_APPEND is not set: Expected: (no output)");
|
|
14
|
+
}
|
|
15
|
+
if ((flag & O_TRUNC) != 0) {
|
|
16
|
+
console.log("O_TRUNC is set: Expected: (no output)");
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
console.log("O_TRUNC is not set: Expected: O_TRUNC is not set, Actual: O_TRUNC is not set");
|
|
20
|
+
}
|
|
21
|
+
flag = (O_WRONLY | O_CREATE);
|
|
22
|
+
if ((flag & O_APPEND) != 0) {
|
|
23
|
+
console.log("O_APPEND is set: Expected: (no output)");
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
console.log("O_APPEND is not set: Expected: O_APPEND is not set, Actual: O_APPEND is not set");
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=flag_bitwise_op.gs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flag_bitwise_op.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/flag_bitwise_op/flag_bitwise_op.gs.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,yDAAyD;AAIzD,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,IAAI,QAAQ,GAAW,GAAG,CAAC;IAC3B,IAAI,QAAQ,GAAW,IAAI,CAAC;IAC5B,IAAI,QAAQ,GAAW,KAAK,CAAC;IAC7B,IAAI,OAAO,GAAW,KAAK,CAAC;IAC5B,IAAI,IAAI,GAAG,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,QAAQ,CAAC,CAAA;IAC7C,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,qEAAqE,CAAC,CAAA;IACnF,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAA;IAC1D,CAAC;IACD,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAA;IACrD,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,8EAA8E,CAAC,CAAA;IAC5F,CAAC;IAED,IAAI,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAA;IAC5B,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAA;IACtD,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,iFAAiF,CAAC,CAAA;IAC/F,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function main(): Promise<void>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// Generated file based on for_loop_infinite.go
|
|
2
|
+
// Updated when compliance tests are re-run, DO NOT EDIT!
|
|
3
|
+
export async function main() {
|
|
4
|
+
let i = 0;
|
|
5
|
+
for (;;) {
|
|
6
|
+
console.log("Looping forever...");
|
|
7
|
+
i++;
|
|
8
|
+
if (i >= 3) {
|
|
9
|
+
break;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
console.log("Loop finished");
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=for_loop_infinite.gs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"for_loop_infinite.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/for_loop_infinite/for_loop_infinite.gs.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,yDAAyD;AAIzD,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,SAAW,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAA;QACjC,CAAC,EAAE,CAAA;QACH,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACZ,MAAK;QACN,CAAC;IACF,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;AAC7B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"for_range.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/for_range/for_range.gs.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,
|
|
1
|
+
{"version":3,"file":"for_range.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/for_range/for_range.gs.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,IAAI,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IACpB,IAAI,GAAG,GAAG,CAAC,CAAA;IACX,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;YACA,GAAG,IAAI,GAAG,CAAA;QACX,CAAC;IACF,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAExB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;YACA,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAA;QACxC,CAAC;IACF,CAAC;IAED,6BAA6B;IAC7B,IAAI,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;IACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;QAChB,CAAC;YACA,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA;QACtC,CAAC;IACF,CAAC;IAED,6BAA6B;IAC7B,IAAI,GAAG,GAAG,IAAI,CAAA;IAEd,iCAAiC;IACjC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;IAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;YACA,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAA,CAAC,iCAAiC;QACxE,CAAC;IACF,CAAC;AACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"function_call_result_assignment.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/function_call_result_assignment/function_call_result_assignment.gs.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,
|
|
1
|
+
{"version":3,"file":"function_call_result_assignment.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/function_call_result_assignment/function_call_result_assignment.gs.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAE9C,MAAM,QAAQ;IACN,KAAK,GAAW,CAAC,CAAC;IAClB,QAAQ,GAAW,EAAE,CAAC;IAC7B,eAAe;IACP,MAAM,GAAY,KAAK,CAAC;IAEhC,YAAY,IAAwB,IAAI,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAW,CAAC,CAAC,CAAC,CAAC;IAC9E,KAAK,KAAe,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAa,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAEvG,kDAAkD;IAClD,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC,YAAY,CACvC,UAAU,EACV,QAAQ,CAAC,QAAQ,CAAC,MAAM,EACxB,IAAI,QAAQ,EAAE,EACd,IAAI,GAAG,CAAC,EAAE,CAAC,EACX,QAAQ,CACT,CAAC;;AAGH,+CAA+C;AAC/C,MAAM,UAAU,WAAW,CAAC,CAAS;IACpC,OAAO,IAAI,QAAQ,CAAC,EAAC,QAAQ,EAAE,CAAC,EAAC,CAAC,CAAA;AACnC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,uDAAuD;IACvD,2EAA2E;IAC3E,IAAI,cAAc,GAAG,WAAW,CAAC,iBAAiB,CAAC,CAAC,KAAK,EAAE,CAAA;IAC3D,IAAI,kBAAkB,GAAG,cAAc,CAAC,KAAK,EAAE,CAAA;IAC/C,kBAAkB,CAAC,QAAQ,GAAG,+BAA+B,CAAA;IAC7D,8BAA8B;IAC9B,OAAO,CAAC,GAAG,CAAC,oEAAoE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IAC3G,4CAA4C;IAC5C,OAAO,CAAC,GAAG,CAAC,uFAAuF,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAA;AACnI,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function main(): Promise<void>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// Generated file based on interface_method_comments.go
|
|
2
|
+
// Updated when compliance tests are re-run, DO NOT EDIT!
|
|
3
|
+
import * as goscript from "@goscript/builtin";
|
|
4
|
+
// Register this interface with the runtime type system
|
|
5
|
+
const MyInterface__typeInfo = goscript.registerType('MyInterface', goscript.TypeKind.Interface, null, new Set(['MyMethod']), undefined);
|
|
6
|
+
export async function main() {
|
|
7
|
+
// This test verifies that comments on interface methods are preserved.
|
|
8
|
+
console.log("Test started");
|
|
9
|
+
// No actual execution needed, just compilation check.
|
|
10
|
+
console.log("Test finished");
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=interface_method_comments.gs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interface_method_comments.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/interface_method_comments/interface_method_comments.gs.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAO9C,uDAAuD;AACvD,MAAM,qBAAqB,GAAG,QAAQ,CAAC,YAAY,CACjD,aAAa,EACb,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAC3B,IAAI,EACJ,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,EACrB,SAAS,CACV,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,uEAAuE;IACvE,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;IAC3B,sDAAsD;IACtD,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;AAC7B,CAAC"}
|
package/dist/compliance/tests/interface_multi_param_return/interface_multi_param_return.gs.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Generated file based on interface_multi_param_return.go
|
|
2
2
|
// Updated when compliance tests are re-run, DO NOT EDIT!
|
|
3
|
-
import * as goscript from "@
|
|
3
|
+
import * as goscript from "@goscript/builtin";
|
|
4
4
|
// Register this interface with the runtime type system
|
|
5
5
|
const MultiParamReturner__typeInfo = goscript.registerType('MultiParamReturner', goscript.TypeKind.Interface, null, new Set(['Process']), undefined);
|
|
6
6
|
class MyProcessor {
|
|
@@ -20,7 +20,7 @@ class MyProcessor {
|
|
|
20
20
|
static __typeInfo = goscript.registerType('MyProcessor', goscript.TypeKind.Struct, new MyProcessor(), new Set(['Process']), MyProcessor);
|
|
21
21
|
}
|
|
22
22
|
export async function main() {
|
|
23
|
-
let processor;
|
|
23
|
+
let processor = null;
|
|
24
24
|
processor = new MyProcessor({});
|
|
25
25
|
let data = [1, 2, 3];
|
|
26
26
|
let [success,] = processor.Process(data, 5, "unused");
|
package/dist/compliance/tests/interface_multi_param_return/interface_multi_param_return.gs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interface_multi_param_return.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/interface_multi_param_return/interface_multi_param_return.gs.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,
|
|
1
|
+
{"version":3,"file":"interface_multi_param_return.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/interface_multi_param_return/interface_multi_param_return.gs.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAM9C,uDAAuD;AACvD,MAAM,4BAA4B,GAAG,QAAQ,CAAC,YAAY,CACxD,oBAAoB,EACpB,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAC3B,IAAI,EACJ,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EACpB,SAAS,CACV,CAAC;AAEF,MAAM,WAAW;IAET,OAAO,CAAC,IAAc,EAAE,KAAa,EAAE,CAAS;QACtD,MAAM,CAAC,GAAG,IAAI,CAAA;QACd,IAAI,KAAK,GAAG,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACzC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;YACpC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QACpB,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;QAChC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IACrB,CAAC;IAED,YAAY,IAA2B,IAAI,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAW,CAAC,CAAC,CAAC,CAAC;IACjF,KAAK,KAAkB,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAgB,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAEhH,kDAAkD;IAClD,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC,YAAY,CACvC,aAAa,EACb,QAAQ,CAAC,QAAQ,CAAC,MAAM,EACxB,IAAI,WAAW,EAAE,EACjB,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EACpB,WAAW,CACZ,CAAC;;AAGH,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,IAAI,SAAS,GAA8B,IAAI,CAAC;IAChD,SAAS,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC,CAAA;IAE/B,IAAI,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IACpB,IAAI,CAAC,OAAO,EAAG,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAA;IAEtD,IAAI,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;IACtC,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;IACtC,CAAC;AACF,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Generated file based on interface_to_interface_type_assertion.go
|
|
2
2
|
// Updated when compliance tests are re-run, DO NOT EDIT!
|
|
3
|
-
import * as goscript from "@
|
|
3
|
+
import * as goscript from "@goscript/builtin";
|
|
4
4
|
// Register this interface with the runtime type system
|
|
5
5
|
const MyInterface__typeInfo = goscript.registerType('MyInterface', goscript.TypeKind.Interface, null, new Set(['Method1']), undefined);
|
|
6
6
|
class MyStruct {
|
|
@@ -18,10 +18,10 @@ class MyStruct {
|
|
|
18
18
|
// Register this interface with the runtime type system
|
|
19
19
|
const MyOtherInterface__typeInfo = goscript.registerType('MyOtherInterface', goscript.TypeKind.Interface, null, new Set(['Method1']), undefined);
|
|
20
20
|
export async function main() {
|
|
21
|
-
let i;
|
|
21
|
+
let i = null;
|
|
22
22
|
let s = new MyStruct({ Value: 10 });
|
|
23
23
|
i = s.clone();
|
|
24
|
-
let {
|
|
24
|
+
let { ok: ok } = goscript.typeAssert(i, 'MyOtherInterface');
|
|
25
25
|
if (ok) {
|
|
26
26
|
console.log("Type assertion successful");
|
|
27
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interface_to_interface_type_assertion.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/interface_to_interface_type_assertion/interface_to_interface_type_assertion.gs.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,
|
|
1
|
+
{"version":3,"file":"interface_to_interface_type_assertion.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/interface_to_interface_type_assertion/interface_to_interface_type_assertion.gs.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAM9C,uDAAuD;AACvD,MAAM,qBAAqB,GAAG,QAAQ,CAAC,YAAY,CACjD,aAAa,EACb,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAC3B,IAAI,EACJ,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EACpB,SAAS,CACV,CAAC;AAEF,MAAM,QAAQ;IACN,KAAK,GAAW,CAAC,CAAC;IAElB,OAAO;QACb,MAAM,CAAC,GAAG,IAAI,CAAA;QACd,OAAO,CAAC,CAAC,KAAK,CAAA;IACf,CAAC;IAED,YAAY,IAAwB,IAAI,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAW,CAAC,CAAC,CAAC,CAAC;IAC9E,KAAK,KAAe,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAa,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAEvG,kDAAkD;IAClD,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC,YAAY,CACvC,UAAU,EACV,QAAQ,CAAC,QAAQ,CAAC,MAAM,EACxB,IAAI,QAAQ,EAAE,EACd,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EACpB,QAAQ,CACT,CAAC;;AAOH,uDAAuD;AACvD,MAAM,0BAA0B,GAAG,QAAQ,CAAC,YAAY,CACtD,kBAAkB,EAClB,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAC3B,IAAI,EACJ,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EACpB,SAAS,CACV,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,IAAI,CAAC,GAAuB,IAAI,CAAC;IACjC,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC,EAAC,KAAK,EAAE,EAAE,EAAC,CAAC,CAAA;IACjC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAA;IAEb,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAmB,CAAC,EAAE,kBAAkB,CAAC,CAAA;IAC7E,IAAI,EAAE,EAAE,CAAC;QACR,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;IACzC,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;IACrC,CAAC;AACF,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Generated file based on interface_type_assertion.go
|
|
2
2
|
// Updated when compliance tests are re-run, DO NOT EDIT!
|
|
3
|
-
import * as goscript from "@
|
|
3
|
+
import * as goscript from "@goscript/builtin";
|
|
4
4
|
// Register this interface with the runtime type system
|
|
5
5
|
const MyInterface__typeInfo = goscript.registerType('MyInterface', goscript.TypeKind.Interface, null, new Set(['Method1']), undefined);
|
|
6
6
|
class MyStruct {
|
|
@@ -16,15 +16,25 @@ class MyStruct {
|
|
|
16
16
|
static __typeInfo = goscript.registerType('MyStruct', goscript.TypeKind.Struct, new MyStruct(), new Set(['Method1']), MyStruct);
|
|
17
17
|
}
|
|
18
18
|
export async function main() {
|
|
19
|
-
let i;
|
|
19
|
+
let i = null;
|
|
20
20
|
let s = new MyStruct({ Value: 10 });
|
|
21
21
|
i = s.clone();
|
|
22
|
-
let {
|
|
22
|
+
let { ok: ok } = goscript.typeAssert(i, 'MyStruct');
|
|
23
23
|
if (ok) {
|
|
24
24
|
console.log("Type assertion successful");
|
|
25
25
|
}
|
|
26
26
|
else {
|
|
27
27
|
console.log("Type assertion failed");
|
|
28
28
|
}
|
|
29
|
+
// try a second time since this generates something different when using = and not :=
|
|
30
|
+
({ ok: ok } = goscript.typeAssert(i, 'unknown'));
|
|
31
|
+
// expected
|
|
32
|
+
if (ok) {
|
|
33
|
+
console.log("Type assertion successful");
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
// expected
|
|
37
|
+
console.log("Type assertion failed");
|
|
38
|
+
}
|
|
29
39
|
}
|
|
30
40
|
//# sourceMappingURL=interface_type_assertion.gs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interface_type_assertion.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/interface_type_assertion/interface_type_assertion.gs.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,
|
|
1
|
+
{"version":3,"file":"interface_type_assertion.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/interface_type_assertion/interface_type_assertion.gs.ts"],"names":[],"mappings":"AAAA,sDAAsD;AACtD,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAM9C,uDAAuD;AACvD,MAAM,qBAAqB,GAAG,QAAQ,CAAC,YAAY,CACjD,aAAa,EACb,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAC3B,IAAI,EACJ,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EACpB,SAAS,CACV,CAAC;AAEF,MAAM,QAAQ;IACN,KAAK,GAAW,CAAC,CAAC;IAElB,OAAO;QACb,MAAM,CAAC,GAAG,IAAI,CAAA;QACd,OAAO,CAAC,CAAC,KAAK,CAAA;IACf,CAAC;IAED,YAAY,IAAwB,IAAI,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAW,CAAC,CAAC,CAAC,CAAC;IAC9E,KAAK,KAAe,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAa,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAEvG,kDAAkD;IAClD,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC,YAAY,CACvC,UAAU,EACV,QAAQ,CAAC,QAAQ,CAAC,MAAM,EACxB,IAAI,QAAQ,EAAE,EACd,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,EACpB,QAAQ,CACT,CAAC;;AAGH,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,IAAI,CAAC,GAAuB,IAAI,CAAC;IACjC,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC,EAAC,KAAK,EAAE,EAAE,EAAC,CAAC,CAAA;IACjC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAA;IAEb,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAW,CAAC,EAAE,UAAU,CAAC,CAAA;IAC7D,IAAI,EAAE,EAAE,CAAC;QACR,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;IACzC,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;IACrC,CAAC;IAED,qFAAqF;IACrF,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAkB,CAAC,EAAE,SAAS,CAAC,CAAC,CAAA;IAEjE,WAAW;IACX,IAAI,EAAE,EAAE,CAAC;QACR,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;IACzC,CAAC;SAAM,CAAC;QACP,WAAW;QACX,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;IACrC,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function main(): Promise<void>;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
// Generated file based on interface_type_assertion_signature_mismatch.go
|
|
2
|
+
// Updated when compliance tests are re-run, DO NOT EDIT!
|
|
3
|
+
import * as goscript from "@goscript/builtin";
|
|
4
|
+
// Register this interface with the runtime type system
|
|
5
|
+
const InterfaceA__typeInfo = goscript.registerType('InterfaceA', goscript.TypeKind.Interface, null, new Set(['DoSomething']), undefined);
|
|
6
|
+
// Register this interface with the runtime type system
|
|
7
|
+
const InterfaceB__typeInfo = goscript.registerType('InterfaceB', goscript.TypeKind.Interface, null, new Set(['DoSomething']), undefined);
|
|
8
|
+
class MyStruct {
|
|
9
|
+
Name = "";
|
|
10
|
+
DoSomething(val) {
|
|
11
|
+
const m = this;
|
|
12
|
+
console.log("MyStruct.DoSomething called");
|
|
13
|
+
return "done";
|
|
14
|
+
}
|
|
15
|
+
constructor(init) { if (init)
|
|
16
|
+
Object.assign(this, init); }
|
|
17
|
+
clone() { return Object.assign(Object.create(MyStruct.prototype), this); }
|
|
18
|
+
// Register this type with the runtime type system
|
|
19
|
+
static __typeInfo = goscript.registerType('MyStruct', goscript.TypeKind.Struct, new MyStruct(), new Set(['DoSomething']), MyStruct);
|
|
20
|
+
}
|
|
21
|
+
export async function main() {
|
|
22
|
+
let a;
|
|
23
|
+
let s = new MyStruct({ Name: "TestStruct" });
|
|
24
|
+
a = s.clone();
|
|
25
|
+
// This assertion should fail at runtime because InterfaceB.DoSomething has a different signature
|
|
26
|
+
let { ok: ok } = goscript.typeAssert(a, 'InterfaceB');
|
|
27
|
+
if (ok) {
|
|
28
|
+
console.log("Type assertion to InterfaceB successful");
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
console.log("Type assertion to InterfaceB failed");
|
|
32
|
+
}
|
|
33
|
+
// This assertion should succeed
|
|
34
|
+
({ ok: ok } = goscript.typeAssert(a, 'InterfaceA'));
|
|
35
|
+
if (ok) {
|
|
36
|
+
console.log("Type assertion to InterfaceA successful");
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
console.log("Type assertion to InterfaceA failed");
|
|
40
|
+
}
|
|
41
|
+
// Call the method on the asserted interface to ensure the generated code works
|
|
42
|
+
// This is not strictly necessary for the type assertion test but good practice
|
|
43
|
+
// if the assertion to InterfaceA succeeds.
|
|
44
|
+
{
|
|
45
|
+
let { value: assertedA, ok: ok } = goscript.typeAssert(a, 'InterfaceA');
|
|
46
|
+
if (ok) {
|
|
47
|
+
assertedA.DoSomething(123);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=interface_type_assertion_signature_mismatch.gs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interface_type_assertion_signature_mismatch.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/interface_type_assertion_signature_mismatch/interface_type_assertion_signature_mismatch.gs.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAM9C,uDAAuD;AACvD,MAAM,oBAAoB,GAAG,QAAQ,CAAC,YAAY,CAChD,YAAY,EACZ,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAC3B,IAAI,EACJ,IAAI,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC,EACxB,SAAS,CACV,CAAC;AAMF,uDAAuD;AACvD,MAAM,oBAAoB,GAAG,QAAQ,CAAC,YAAY,CAChD,YAAY,EACZ,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAC3B,IAAI,EACJ,IAAI,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC,EACxB,SAAS,CACV,CAAC;AAEF,MAAM,QAAQ;IACN,IAAI,GAAW,EAAE,CAAC;IAElB,WAAW,CAAC,GAAW;QAC7B,MAAM,CAAC,GAAG,IAAI,CAAA;QACd,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAA;QAC1C,OAAO,MAAM,CAAA;IACd,CAAC;IAED,YAAY,IAAwB,IAAI,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAW,CAAC,CAAC,CAAC,CAAC;IAC9E,KAAK,KAAe,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAa,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAEvG,kDAAkD;IAClD,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC,YAAY,CACvC,UAAU,EACV,QAAQ,CAAC,QAAQ,CAAC,MAAM,EACxB,IAAI,QAAQ,EAAE,EACd,IAAI,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC,EACxB,QAAQ,CACT,CAAC;;AAGH,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,IAAI,CAAa,CAAC;IAClB,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAA;IAC5C,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAA;IAEb,iGAAiG;IACjG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAa,CAAC,EAAE,YAAY,CAAC,CAAA;IACjE,IAAI,EAAE,EAAE,CAAC;QACR,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAA;IACvD,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAA;IACnD,CAAC;IAED,gCAAgC;IAChC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAa,CAAC,EAAE,YAAY,CAAC,CAAC,CAAA;IAC/D,IAAI,EAAE,EAAE,CAAC;QACR,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAA;IACvD,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAA;IACnD,CAAC;IAED,+EAA+E;IAC/E,+EAA+E;IAC/E,2CAA2C;IAC3C,CAAC;QAAA,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAa,CAAC,EAAE,YAAY,CAAC,CAAA;QACnF,IAAI,EAAE,EAAE,CAAC;YACR,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;QAC3B,CAAC;IACF,CAAC;AAAA,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Generated file based on map_support.go
|
|
2
2
|
// Updated when compliance tests are re-run, DO NOT EDIT!
|
|
3
|
-
import * as goscript from "@
|
|
3
|
+
import * as goscript from "@goscript/builtin";
|
|
4
4
|
export async function main() {
|
|
5
5
|
// Create map using make
|
|
6
6
|
let scores = goscript.makeMap();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map_support.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/map_support/map_support.gs.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,
|
|
1
|
+
{"version":3,"file":"map_support.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/map_support/map_support.gs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"method_call_on_pointer_receiver.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/method_call_on_pointer_receiver/method_call_on_pointer_receiver.gs.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,
|
|
1
|
+
{"version":3,"file":"method_call_on_pointer_receiver.gs.js","sourceRoot":"","sources":["../../../../compliance/tests/method_call_on_pointer_receiver/method_call_on_pointer_receiver.gs.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,yDAAyD;AAEzD,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAE9C,MAAM,QAAQ;IACN,KAAK,GAAW,CAAC,CAAC;IAClB,QAAQ,GAAW,EAAE,CAAC;IAE7B,0CAA0C;IACnC,WAAW;QACjB,MAAM,CAAC,GAAG,IAAI,CAAA;QACd,OAAO,CAAC,CAAC,QAAQ,CAAA;IAClB,CAAC;IAED,YAAY,IAAwB,IAAI,IAAI,IAAI;QAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAW,CAAC,CAAC,CAAC,CAAC;IAC9E,KAAK,KAAe,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAa,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAEvG,kDAAkD;IAClD,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC,YAAY,CACvC,UAAU,EACV,QAAQ,CAAC,QAAQ,CAAC,MAAM,EACxB,IAAI,QAAQ,EAAE,EACd,IAAI,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC,EACxB,QAAQ,CACT,CAAC;;AAGH,MAAM,CAAC,KAAK,UAAU,IAAI;IACzB,IAAI,aAAa,GAAG,IAAI,QAAQ,CAAC,EAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAC,CAAC,CAAA;IACrE,0CAA0C;IAC1C,iFAAiF;IACjF,OAAO,CAAC,GAAG,CAAC,yEAAyE,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC,CAAA;AACrH,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Generated file based on method_call_on_pointer_via_value.go
|
|
2
2
|
// Updated when compliance tests are re-run, DO NOT EDIT!
|
|
3
|
-
import * as goscript from "@
|
|
3
|
+
import * as goscript from "@goscript/builtin";
|
|
4
4
|
class MyStruct {
|
|
5
5
|
MyInt = 0;
|
|
6
6
|
// SetValue sets the MyInt field (pointer receiver).
|