@magnusopera/fscript 0.80.0 → 0.81.0
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/dist/FScript.Language/BuiltinFunctions.js +234 -122
- package/dist/FScript.Language/Eval.js +534 -271
- package/dist/FScript.Language/HostInterop.js +808 -0
- package/dist/FScript.Language/Interactive.js +22 -17
- package/dist/FScript.Language/Library.js +6 -2
- package/dist/FScript.Language/Parser.js +216 -132
- package/dist/FScript.Language/Pretty.js +130 -38
- package/dist/FScript.Language/TypeInfer.js +1117 -580
- package/dist/FScript.Language/Types.js +130 -89
- package/dist/FScript.Language/Value.js +29 -4
- package/dist/Library.js +2 -0
- package/dist/fable_modules/project_cracked.json +1 -1
- package/package.json +1 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
|
|
2
|
-
import { Union } from "../fable_modules/fable-library-js.5.13.0/Types.js";
|
|
3
|
-
import { union_type, int32_type, option_type, class_type, string_type, list_type } from "../fable_modules/fable-library-js.5.13.0/Reflection.js";
|
|
2
|
+
import { Record, Union } from "../fable_modules/fable-library-js.5.13.0/Types.js";
|
|
3
|
+
import { record_type, union_type, bool_type, int32_type, option_type, class_type, string_type, list_type } from "../fable_modules/fable-library-js.5.13.0/Reflection.js";
|
|
4
4
|
import { comparePrimitives, Exception } from "../fable_modules/fable-library-js.5.13.0/Util.js";
|
|
5
|
-
import { toList, isEmpty, ofList, difference, singleton, union, empty } from "../fable_modules/fable-library-js.5.13.0/Set.js";
|
|
5
|
+
import { toList, isEmpty, ofList, difference, singleton, add, union, empty } from "../fable_modules/fable-library-js.5.13.0/Set.js";
|
|
6
6
|
import { empty as empty_1, fold, map } from "../fable_modules/fable-library-js.5.13.0/List.js";
|
|
7
7
|
import { fold as fold_1, map as map_1 } from "../fable_modules/fable-library-js.5.13.0/Seq.js";
|
|
8
8
|
import { toList as toList_1, values } from "../fable_modules/fable-library-js.5.13.0/Map.js";
|
|
@@ -15,7 +15,7 @@ export class Type extends Union {
|
|
|
15
15
|
this.fields = fields;
|
|
16
16
|
}
|
|
17
17
|
cases() {
|
|
18
|
-
return ["TUnit", "TInt", "TFloat", "TBool", "TString", "TList", "TTask", "TTuple", "TRecord", "TMap", "TOption", "TFun", "TNamed", "TUnion", "TTypeToken", "TVar", "TNumeric"];
|
|
18
|
+
return ["TUnit", "TInt", "TFloat", "TBool", "TString", "TList", "TTask", "TTuple", "TRecord", "TMap", "TOption", "TFun", "TNamed", "TUnion", "TTypeToken", "TVar", "TNumeric", "THostManaged", "TRecordShape"];
|
|
19
19
|
}
|
|
20
20
|
static TUnit = new Type(0, []);
|
|
21
21
|
static TInt = new Type(1, []);
|
|
@@ -26,7 +26,20 @@ export class Type extends Union {
|
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
export function Type_$reflection() {
|
|
29
|
-
return union_type("FScript.Language.Type", [], Type, () => [[], [], [], [], [], [["Item", Type_$reflection()]], [["Item", Type_$reflection()]], [["Item", list_type(Type_$reflection())]], [["Item", class_type("Microsoft.FSharp.Collections.FSharpMap`2", [string_type, Type_$reflection()])]], [["Item1", Type_$reflection()], ["Item2", Type_$reflection()]], [["Item", Type_$reflection()]], [["Item1", Type_$reflection()], ["Item2", Type_$reflection()]], [["Item", string_type]], [["Item1", string_type], ["Item2", class_type("Microsoft.FSharp.Collections.FSharpMap`2", [string_type, option_type(Type_$reflection())])]], [], [["Item", int32_type]], [["Item", int32_type]]]);
|
|
29
|
+
return union_type("FScript.Language.Type", [], Type, () => [[], [], [], [], [], [["Item", Type_$reflection()]], [["Item", Type_$reflection()]], [["Item", list_type(Type_$reflection())]], [["Item", class_type("Microsoft.FSharp.Collections.FSharpMap`2", [string_type, Type_$reflection()])]], [["Item1", Type_$reflection()], ["Item2", Type_$reflection()]], [["Item", Type_$reflection()]], [["Item1", Type_$reflection()], ["Item2", Type_$reflection()]], [["Item", string_type]], [["Item1", string_type], ["Item2", class_type("Microsoft.FSharp.Collections.FSharpMap`2", [string_type, option_type(Type_$reflection())])]], [], [["Item", int32_type]], [["Item", int32_type]], [["name", string_type], ["fields", class_type("Microsoft.FSharp.Collections.FSharpMap`2", [string_type, Type_$reflection()])]], [["id", int32_type], ["fields", class_type("Microsoft.FSharp.Collections.FSharpMap`2", [string_type, Type_$reflection()])], ["requiresConstruction", bool_type]]]);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export class HostTypeDescriptor extends Record {
|
|
33
|
+
constructor(Name, Fields, HostManaged) {
|
|
34
|
+
super();
|
|
35
|
+
this.Name = Name;
|
|
36
|
+
this.Fields = Fields;
|
|
37
|
+
this.HostManaged = HostManaged;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export function HostTypeDescriptor_$reflection() {
|
|
42
|
+
return record_type("FScript.Language.HostTypeDescriptor", [], HostTypeDescriptor, () => [["Name", string_type], ["Fields", class_type("Microsoft.FSharp.Collections.FSharpMap`2", [string_type, Type_$reflection()])], ["HostManaged", bool_type]]);
|
|
30
43
|
}
|
|
31
44
|
|
|
32
45
|
export class Scheme extends Union {
|
|
@@ -66,6 +79,7 @@ export function Types_ftvType(t_mut) {
|
|
|
66
79
|
Types_ftvType:
|
|
67
80
|
while (true) {
|
|
68
81
|
const t = t_mut;
|
|
82
|
+
let source_1;
|
|
69
83
|
let matchResult, v;
|
|
70
84
|
switch (t.tag) {
|
|
71
85
|
case 5: {
|
|
@@ -80,35 +94,43 @@ export function Types_ftvType(t_mut) {
|
|
|
80
94
|
matchResult = 3;
|
|
81
95
|
break;
|
|
82
96
|
}
|
|
83
|
-
case
|
|
97
|
+
case 17: {
|
|
84
98
|
matchResult = 4;
|
|
85
99
|
break;
|
|
86
100
|
}
|
|
87
|
-
case
|
|
101
|
+
case 18: {
|
|
88
102
|
matchResult = 5;
|
|
89
103
|
break;
|
|
90
104
|
}
|
|
91
|
-
case
|
|
105
|
+
case 8: {
|
|
92
106
|
matchResult = 6;
|
|
93
107
|
break;
|
|
94
108
|
}
|
|
95
|
-
case
|
|
109
|
+
case 9: {
|
|
96
110
|
matchResult = 7;
|
|
97
111
|
break;
|
|
98
112
|
}
|
|
113
|
+
case 10: {
|
|
114
|
+
matchResult = 8;
|
|
115
|
+
break;
|
|
116
|
+
}
|
|
117
|
+
case 11: {
|
|
118
|
+
matchResult = 9;
|
|
119
|
+
break;
|
|
120
|
+
}
|
|
99
121
|
case 12:
|
|
100
122
|
case 13:
|
|
101
123
|
case 14: {
|
|
102
|
-
matchResult =
|
|
124
|
+
matchResult = 10;
|
|
103
125
|
break;
|
|
104
126
|
}
|
|
105
127
|
case 15: {
|
|
106
|
-
matchResult =
|
|
128
|
+
matchResult = 11;
|
|
107
129
|
v = t.fields[0];
|
|
108
130
|
break;
|
|
109
131
|
}
|
|
110
132
|
case 16: {
|
|
111
|
-
matchResult =
|
|
133
|
+
matchResult = 11;
|
|
112
134
|
v = t.fields[0];
|
|
113
135
|
break;
|
|
114
136
|
}
|
|
@@ -134,27 +156,35 @@ export function Types_ftvType(t_mut) {
|
|
|
134
156
|
Compare: (x_1, y_1) => (comparePrimitives(x_1, y_1) | 0),
|
|
135
157
|
}), list_1);
|
|
136
158
|
}
|
|
137
|
-
case 4:
|
|
138
|
-
|
|
139
|
-
return fold_1(union, empty({
|
|
159
|
+
case 4:
|
|
160
|
+
return empty({
|
|
140
161
|
Compare: (x_2, y_2) => (comparePrimitives(x_2, y_2) | 0),
|
|
141
|
-
})
|
|
142
|
-
}
|
|
162
|
+
});
|
|
143
163
|
case 5:
|
|
144
|
-
return
|
|
164
|
+
return add(t.fields[0], (source_1 = map_1(Types_ftvType, values(t.fields[1])), fold_1(union, empty({
|
|
165
|
+
Compare: (x_3, y_3) => (comparePrimitives(x_3, y_3) | 0),
|
|
166
|
+
}), source_1)));
|
|
145
167
|
case 6: {
|
|
168
|
+
const source_3 = map_1(Types_ftvType, values(t.fields[0]));
|
|
169
|
+
return fold_1(union, empty({
|
|
170
|
+
Compare: (x_4, y_4) => (comparePrimitives(x_4, y_4) | 0),
|
|
171
|
+
}), source_3);
|
|
172
|
+
}
|
|
173
|
+
case 7:
|
|
174
|
+
return union(Types_ftvType(t.fields[0]), Types_ftvType(t.fields[1]));
|
|
175
|
+
case 8: {
|
|
146
176
|
t_mut = t.fields[0];
|
|
147
177
|
continue Types_ftvType;
|
|
148
178
|
}
|
|
149
|
-
case
|
|
179
|
+
case 9:
|
|
150
180
|
return union(Types_ftvType(t.fields[0]), Types_ftvType(t.fields[1]));
|
|
151
|
-
case
|
|
181
|
+
case 10:
|
|
152
182
|
return empty({
|
|
153
|
-
Compare: (
|
|
183
|
+
Compare: (x_5, y_5) => (comparePrimitives(x_5, y_5) | 0),
|
|
154
184
|
});
|
|
155
185
|
default:
|
|
156
186
|
return singleton(v, {
|
|
157
|
-
Compare: (
|
|
187
|
+
Compare: (x_6, y_6) => (comparePrimitives(x_6, y_6) | 0),
|
|
158
188
|
});
|
|
159
189
|
}
|
|
160
190
|
break;
|
|
@@ -185,78 +215,89 @@ export function Types_generalize(env, t) {
|
|
|
185
215
|
}
|
|
186
216
|
|
|
187
217
|
export function Types_typeToString(t) {
|
|
188
|
-
const go = (
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
return toText(printf("%s task"))(arg_1);
|
|
205
|
-
}
|
|
206
|
-
case 7: {
|
|
207
|
-
const arg_2 = join(" * ", map(go, t_1.fields[0]));
|
|
208
|
-
return toText(printf("(%s)"))(arg_2);
|
|
209
|
-
}
|
|
210
|
-
case 8: {
|
|
211
|
-
const arg_5 = join("; ", map((tupledArg) => {
|
|
212
|
-
const arg_4 = go(tupledArg[1]);
|
|
213
|
-
return toText(printf("%s: %s"))(tupledArg[0])(arg_4);
|
|
214
|
-
}, toList_1(t_1.fields[0])));
|
|
215
|
-
return toText(printf("{ %s }"))(arg_5);
|
|
216
|
-
}
|
|
217
|
-
case 9: {
|
|
218
|
-
const tv = t_1.fields[1];
|
|
219
|
-
const tk = t_1.fields[0];
|
|
220
|
-
if (tk.tag === 4) {
|
|
221
|
-
const arg_6 = postfixArg(tv);
|
|
222
|
-
return toText(printf("%s map"))(arg_6);
|
|
218
|
+
const go = (t_1_mut) => {
|
|
219
|
+
go:
|
|
220
|
+
while (true) {
|
|
221
|
+
const t_1 = t_1_mut;
|
|
222
|
+
switch (t_1.tag) {
|
|
223
|
+
case 1:
|
|
224
|
+
return "int";
|
|
225
|
+
case 2:
|
|
226
|
+
return "float";
|
|
227
|
+
case 3:
|
|
228
|
+
return "bool";
|
|
229
|
+
case 4:
|
|
230
|
+
return "string";
|
|
231
|
+
case 5: {
|
|
232
|
+
const arg = postfixArg(t_1.fields[0]);
|
|
233
|
+
return toText(printf("%s list"))(arg);
|
|
223
234
|
}
|
|
224
|
-
|
|
225
|
-
const
|
|
226
|
-
|
|
227
|
-
return toText(printf("%s map[%s]"))(arg_7)(arg_8);
|
|
235
|
+
case 6: {
|
|
236
|
+
const arg_1 = postfixArg(t_1.fields[0]);
|
|
237
|
+
return toText(printf("%s task"))(arg_1);
|
|
228
238
|
}
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
239
|
+
case 7: {
|
|
240
|
+
const arg_2 = join(" * ", map(go, t_1.fields[0]));
|
|
241
|
+
return toText(printf("(%s)"))(arg_2);
|
|
242
|
+
}
|
|
243
|
+
case 17:
|
|
244
|
+
return t_1.fields[0];
|
|
245
|
+
case 18: {
|
|
246
|
+
t_1_mut = (new Type(/* TRecord */ 8, [t_1.fields[1]]));
|
|
247
|
+
continue go;
|
|
248
|
+
}
|
|
249
|
+
case 8: {
|
|
250
|
+
const arg_5 = join("; ", map((tupledArg) => {
|
|
251
|
+
const arg_4 = go(tupledArg[1]);
|
|
252
|
+
return toText(printf("%s: %s"))(tupledArg[0])(arg_4);
|
|
253
|
+
}, toList_1(t_1.fields[0])));
|
|
254
|
+
return toText(printf("{ %s }"))(arg_5);
|
|
255
|
+
}
|
|
256
|
+
case 9: {
|
|
257
|
+
const tv = t_1.fields[1];
|
|
258
|
+
const tk = t_1.fields[0];
|
|
259
|
+
if (tk.tag === 4) {
|
|
260
|
+
const arg_6 = postfixArg(tv);
|
|
261
|
+
return toText(printf("%s map"))(arg_6);
|
|
262
|
+
}
|
|
263
|
+
else {
|
|
264
|
+
const arg_7 = postfixArg(tv);
|
|
265
|
+
const arg_8 = go(tk);
|
|
266
|
+
return toText(printf("%s map[%s]"))(arg_7)(arg_8);
|
|
267
|
+
}
|
|
253
268
|
}
|
|
254
|
-
|
|
255
|
-
|
|
269
|
+
case 10: {
|
|
270
|
+
const arg_9 = postfixArg(t_1.fields[0]);
|
|
271
|
+
return toText(printf("%s option"))(arg_9);
|
|
256
272
|
}
|
|
273
|
+
case 11: {
|
|
274
|
+
const arg_10 = go(t_1.fields[0]);
|
|
275
|
+
const arg_11 = go(t_1.fields[1]);
|
|
276
|
+
return toText(printf("(%s -> %s)"))(arg_10)(arg_11);
|
|
277
|
+
}
|
|
278
|
+
case 12:
|
|
279
|
+
return t_1.fields[0];
|
|
280
|
+
case 13:
|
|
281
|
+
return t_1.fields[0];
|
|
282
|
+
case 14:
|
|
283
|
+
return "type";
|
|
284
|
+
case 16:
|
|
285
|
+
return "numeric";
|
|
286
|
+
case 15: {
|
|
287
|
+
const v = t_1.fields[0] | 0;
|
|
288
|
+
const letter = String.fromCharCode((~~"a".charCodeAt(0) + (v % 26)) & 0xFFFF);
|
|
289
|
+
const suffix = ~~(v / 26) | 0;
|
|
290
|
+
if (suffix === 0) {
|
|
291
|
+
return toText(printf("\'%c"))(letter);
|
|
292
|
+
}
|
|
293
|
+
else {
|
|
294
|
+
return toText(printf("\'%c%d"))(letter)(suffix);
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
default:
|
|
298
|
+
return "unit";
|
|
257
299
|
}
|
|
258
|
-
|
|
259
|
-
return "unit";
|
|
300
|
+
break;
|
|
260
301
|
}
|
|
261
302
|
};
|
|
262
303
|
const postfixArg = (t_3) => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
import { Record, FSharpRef, Union } from "../fable_modules/fable-library-js.5.13.0/Types.js";
|
|
3
|
-
import { int32_type, unit_type, lambda_type, record_type, option_type, class_type, list_type, float64_type, union_type, bool_type, int64_type, string_type } from "../fable_modules/fable-library-js.5.13.0/Reflection.js";
|
|
4
|
-
import { Scheme_$reflection, Type_$reflection } from "./Types.js";
|
|
3
|
+
import { int32_type, unit_type, lambda_type, obj_type, record_type, option_type, class_type, list_type, float64_type, union_type, bool_type, int64_type, string_type } from "../fable_modules/fable-library-js.5.13.0/Reflection.js";
|
|
4
|
+
import { Scheme_$reflection, HostTypeDescriptor_$reflection, Type_$reflection } from "./Types.js";
|
|
5
5
|
import { Expr_$reflection } from "./Ast.js";
|
|
6
6
|
import { EvalError$_$reflection } from "./Error.js";
|
|
7
7
|
|
|
@@ -27,13 +27,26 @@ export class Value extends Union {
|
|
|
27
27
|
this.fields = fields;
|
|
28
28
|
}
|
|
29
29
|
cases() {
|
|
30
|
-
return ["VUnit", "VInt", "VFloat", "VBool", "VString", "VList", "VTuple", "VRecord", "VMap", "VOption", "VUnionCase", "VUnionCtor", "VTypeToken", "VTask", "VClosure", "VExternal"];
|
|
30
|
+
return ["VUnit", "VInt", "VFloat", "VBool", "VString", "VList", "VTuple", "VRecord", "VMap", "VOption", "VUnionCase", "VUnionCtor", "VTypeToken", "VTask", "VClosure", "VExternal", "VHostManaged"];
|
|
31
31
|
}
|
|
32
32
|
static VUnit = new Value(0, []);
|
|
33
33
|
}
|
|
34
34
|
|
|
35
35
|
export function Value_$reflection() {
|
|
36
|
-
return union_type("FScript.Language.Value", [], Value, () => [[], [["Item", int64_type]], [["Item", float64_type]], [["Item", bool_type]], [["Item", string_type]], [["Item", list_type(Value_$reflection())]], [["Item", list_type(Value_$reflection())]], [["Item", class_type("Microsoft.FSharp.Collections.FSharpMap`2", [string_type, Value_$reflection()])]], [["Item", class_type("Microsoft.FSharp.Collections.FSharpMap`2", [MapKey_$reflection(), Value_$reflection()])]], [["Item", option_type(Value_$reflection())]], [["Item1", string_type], ["Item2", string_type], ["Item3", option_type(Value_$reflection())]], [["Item1", string_type], ["Item2", string_type]], [["Item", Type_$reflection()]], [["Item", TaskHandle_$reflection()]], [["Item1", string_type], ["Item2", Expr_$reflection()], ["Item3", record_type("Microsoft.FSharp.Core.FSharpRef`1", [class_type("Microsoft.FSharp.Collections.FSharpMap`2", [string_type, Value_$reflection()])], FSharpRef, () => [["contents", class_type("Microsoft.FSharp.Collections.FSharpMap`2", [string_type, Value_$reflection()])]])]], [["Item1", ExternalFunction_$reflection()], ["Item2", list_type(Value_$reflection())]]]);
|
|
36
|
+
return union_type("FScript.Language.Value", [], Value, () => [[], [["Item", int64_type]], [["Item", float64_type]], [["Item", bool_type]], [["Item", string_type]], [["Item", list_type(Value_$reflection())]], [["Item", list_type(Value_$reflection())]], [["Item", class_type("Microsoft.FSharp.Collections.FSharpMap`2", [string_type, Value_$reflection()])]], [["Item", class_type("Microsoft.FSharp.Collections.FSharpMap`2", [MapKey_$reflection(), Value_$reflection()])]], [["Item", option_type(Value_$reflection())]], [["Item1", string_type], ["Item2", string_type], ["Item3", option_type(Value_$reflection())]], [["Item1", string_type], ["Item2", string_type]], [["Item", Type_$reflection()]], [["Item", TaskHandle_$reflection()]], [["Item1", string_type], ["Item2", Expr_$reflection()], ["Item3", record_type("Microsoft.FSharp.Core.FSharpRef`1", [class_type("Microsoft.FSharp.Collections.FSharpMap`2", [string_type, Value_$reflection()])], FSharpRef, () => [["contents", class_type("Microsoft.FSharp.Collections.FSharpMap`2", [string_type, Value_$reflection()])]])]], [["Item1", ExternalFunction_$reflection()], ["Item2", list_type(Value_$reflection())]], [["Item", HostManagedValue_$reflection()]]]);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export class HostManagedValue extends Record {
|
|
40
|
+
constructor(Descriptor, Fields, Payload) {
|
|
41
|
+
super();
|
|
42
|
+
this.Descriptor = Descriptor;
|
|
43
|
+
this.Fields = Fields;
|
|
44
|
+
this.Payload = Payload;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export function HostManagedValue_$reflection() {
|
|
49
|
+
return record_type("FScript.Language.HostManagedValue", [], HostManagedValue, () => [["Descriptor", HostTypeDescriptor_$reflection()], ["Fields", class_type("Microsoft.FSharp.Collections.FSharpMap`2", [string_type, Value_$reflection()])], ["Payload", obj_type]]);
|
|
37
50
|
}
|
|
38
51
|
|
|
39
52
|
export class TaskOutcome extends Union {
|
|
@@ -90,3 +103,15 @@ export function ExternalFunction_$reflection() {
|
|
|
90
103
|
return record_type("FScript.Language.ExternalFunction", [], ExternalFunction, () => [["Name", string_type], ["Scheme", Scheme_$reflection()], ["Impl", lambda_type(ExternalCallContext_$reflection(), lambda_type(list_type(Value_$reflection()), Value_$reflection()))], ["Arity", int32_type]]);
|
|
91
104
|
}
|
|
92
105
|
|
|
106
|
+
export class ExtensionRegistration extends Record {
|
|
107
|
+
constructor(Types, Functions) {
|
|
108
|
+
super();
|
|
109
|
+
this.Types = Types;
|
|
110
|
+
this.Functions = Functions;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
export function ExtensionRegistration_$reflection() {
|
|
115
|
+
return record_type("FScript.Language.ExtensionRegistration", [], ExtensionRegistration, () => [["Types", list_type(HostTypeDescriptor_$reflection())], ["Functions", list_type(ExternalFunction_$reflection())]]);
|
|
116
|
+
}
|
|
117
|
+
|
package/dist/Library.js
CHANGED
|
@@ -273,6 +273,8 @@ function valueToTagged(value) {
|
|
|
273
273
|
kind: "tuple",
|
|
274
274
|
values: toArray(map(valueToTagged, value.fields[0])),
|
|
275
275
|
};
|
|
276
|
+
case 16:
|
|
277
|
+
throw new Exception("Host-managed values cannot cross the JavaScript facade");
|
|
276
278
|
case 7:
|
|
277
279
|
return {
|
|
278
280
|
kind: "record",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"Version":"5.13.0","FableOptions":{"TypedArrays":true,"ClampByteArrays":false,"Language":["JavaScript"],"Define":["FABLE_COMPILER","FABLE_COMPILER_5","FABLE_COMPILER_JAVASCRIPT"],"DebugMode":false,"OptimizeFSharpAst":false,"Verbosity":["Normal"],"FileExtension":".js","TriggeredByDependency":false,"NoReflection":false},"ProjectPath":"/home/runner/work/FScript/FScript/src/FScript.JavaScript/FScript.JavaScript.fsproj","SourcePaths":["/home/runner/work/FScript/FScript/src/FScript.Language/Span.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Error.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Token.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Ast.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Types.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Value.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Lexer.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Parser.fs","/home/runner/work/FScript/FScript/src/FScript.Language/IncludeResolver.fs","/home/runner/work/FScript/FScript/src/FScript.Language/BuiltinTypes.fs","/home/runner/work/FScript/FScript/src/FScript.Language/BuiltinSignatures.fs","/home/runner/work/FScript/FScript/src/FScript.Language/BuiltinFunctions.fs","/home/runner/work/FScript/FScript/src/FScript.Language/TypeInfer.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Eval.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Interactive.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Pretty.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Library.fs","/home/runner/work/FScript/FScript/src/FScript.JavaScript/Library.fs"],"FSharpOptions":["--define:FABLE_COMPILER","--define:FABLE_COMPILER_5","--define:FABLE_COMPILER_JAVASCRIPT","--define:TRACE","--define:RELEASE","--define:NETSTANDARD","--define:NETSTANDARD2_1","--define:NETSTANDARD1_0_OR_GREATER","--define:NETSTANDARD1_1_OR_GREATER","--define:NETSTANDARD1_2_OR_GREATER","--define:NETSTANDARD1_3_OR_GREATER","--define:NETSTANDARD1_4_OR_GREATER","--define:NETSTANDARD1_5_OR_GREATER","--define:NETSTANDARD1_6_OR_GREATER","--define:NETSTANDARD2_0_OR_GREATER","--define:NETSTANDARD2_1_OR_GREATER","--define:NULLABLE","--langversion:preview","--nowarn:FS0988","--noframework","--nologo","--simpleresolution","--nocopyfsharpcore","--nowin32manifest","--warn:3","--fullpaths","--flaterrors","--optimize-","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.ValueTuple.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Threading.Thread.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Threading.Tasks.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Threading.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Text.RegularExpressions.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Text.Encoding.Extensions.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Text.Encoding.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Runtime.Numerics.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Runtime.InteropServices.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Runtime.Extensions.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Runtime.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Reflection.Primitives.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Reflection.Extensions.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Reflection.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Numerics.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Net.Requests.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.IO.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Globalization.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Diagnostics.Tracing.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Diagnostics.Tools.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Diagnostics.Debug.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Core.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Console.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.ComponentModel.TypeConverter.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.ComponentModel.Primitives.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.ComponentModel.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Collections.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Collections.Concurrent.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/netstandard.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/mscorlib.dll","-r:/home/runner/.nuget/packages/fable.core/5.3.0/lib/netstandard2.0/Fable.Core.dll","-r:/home/runner/.nuget/packages/fable/5.13.0/tools/net10.0/any/FSharp.Core.dll"],"References":["/home/runner/work/FScript/FScript/src/FScript.Language/FScript.Language.fsproj"],"OutDir":["Some","/home/runner/work/FScript/FScript/src/FScript.JavaScript/dist"],"FableLibDir":"/home/runner/work/FScript/FScript/src/FScript.JavaScript/dist/fable_modules/fable-library-js.5.13.0","FableModulesDir":"/home/runner/work/FScript/FScript/src/FScript.JavaScript/dist/fable_modules","OutputType":["Library"],"TargetFramework":["Some","netstandard2.1"],"Exclude":[],"SourceMaps":false,"SourceMapsRoot":null,"TreatWarningsAsErrors":true}
|
|
1
|
+
{"Version":"5.13.0","FableOptions":{"TypedArrays":true,"ClampByteArrays":false,"Language":["JavaScript"],"Define":["FABLE_COMPILER","FABLE_COMPILER_5","FABLE_COMPILER_JAVASCRIPT"],"DebugMode":false,"OptimizeFSharpAst":false,"Verbosity":["Normal"],"FileExtension":".js","TriggeredByDependency":false,"NoReflection":false},"ProjectPath":"/home/runner/work/FScript/FScript/src/FScript.JavaScript/FScript.JavaScript.fsproj","SourcePaths":["/home/runner/work/FScript/FScript/src/FScript.Language/Span.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Error.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Token.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Ast.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Types.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Value.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Lexer.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Parser.fs","/home/runner/work/FScript/FScript/src/FScript.Language/IncludeResolver.fs","/home/runner/work/FScript/FScript/src/FScript.Language/BuiltinTypes.fs","/home/runner/work/FScript/FScript/src/FScript.Language/HostInterop.fs","/home/runner/work/FScript/FScript/src/FScript.Language/BuiltinSignatures.fs","/home/runner/work/FScript/FScript/src/FScript.Language/BuiltinFunctions.fs","/home/runner/work/FScript/FScript/src/FScript.Language/TypeInfer.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Eval.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Interactive.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Pretty.fs","/home/runner/work/FScript/FScript/src/FScript.Language/Library.fs","/home/runner/work/FScript/FScript/src/FScript.JavaScript/Library.fs"],"FSharpOptions":["--define:FABLE_COMPILER","--define:FABLE_COMPILER_5","--define:FABLE_COMPILER_JAVASCRIPT","--define:TRACE","--define:RELEASE","--define:NETSTANDARD","--define:NETSTANDARD2_1","--define:NETSTANDARD1_0_OR_GREATER","--define:NETSTANDARD1_1_OR_GREATER","--define:NETSTANDARD1_2_OR_GREATER","--define:NETSTANDARD1_3_OR_GREATER","--define:NETSTANDARD1_4_OR_GREATER","--define:NETSTANDARD1_5_OR_GREATER","--define:NETSTANDARD1_6_OR_GREATER","--define:NETSTANDARD2_0_OR_GREATER","--define:NETSTANDARD2_1_OR_GREATER","--define:NULLABLE","--langversion:preview","--nowarn:FS0988","--noframework","--nologo","--simpleresolution","--nocopyfsharpcore","--nowin32manifest","--warn:3","--fullpaths","--flaterrors","--optimize-","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.ValueTuple.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Threading.Thread.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Threading.Tasks.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Threading.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Text.RegularExpressions.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Text.Encoding.Extensions.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Text.Encoding.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Runtime.Numerics.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Runtime.InteropServices.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Runtime.Extensions.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Runtime.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Reflection.Primitives.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Reflection.Extensions.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Reflection.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Numerics.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Net.Requests.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.IO.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Globalization.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Diagnostics.Tracing.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Diagnostics.Tools.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Diagnostics.Debug.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Core.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Console.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.ComponentModel.TypeConverter.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.ComponentModel.Primitives.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.ComponentModel.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Collections.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/System.Collections.Concurrent.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/netstandard.dll","-r:/usr/share/dotnet/packs/NETStandard.Library.Ref/2.1.0/ref/netstandard2.1/mscorlib.dll","-r:/home/runner/.nuget/packages/fable.core/5.3.0/lib/netstandard2.0/Fable.Core.dll","-r:/home/runner/.nuget/packages/fable/5.13.0/tools/net10.0/any/FSharp.Core.dll"],"References":["/home/runner/work/FScript/FScript/src/FScript.Language/FScript.Language.fsproj"],"OutDir":["Some","/home/runner/work/FScript/FScript/src/FScript.JavaScript/dist"],"FableLibDir":"/home/runner/work/FScript/FScript/src/FScript.JavaScript/dist/fable_modules/fable-library-js.5.13.0","FableModulesDir":"/home/runner/work/FScript/FScript/src/FScript.JavaScript/dist/fable_modules","OutputType":["Library"],"TargetFramework":["Some","netstandard2.1"],"Exclude":[],"SourceMaps":false,"SourceMapsRoot":null,"TreatWarningsAsErrors":true}
|