occam-furtle 3.0.366 → 3.0.370

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.
Files changed (67) hide show
  1. package/lib/context/file/furtle.js +1 -1
  2. package/lib/context/literal.js +42 -0
  3. package/lib/element/anonymousProcedure.js +51 -0
  4. package/lib/element/label.js +17 -1
  5. package/lib/element/parameters.js +17 -1
  6. package/lib/element/procedure.js +112 -0
  7. package/lib/element/returnBlock.js +7 -7
  8. package/lib/element/returnStatement.js +33 -0
  9. package/lib/element/statement.js +43 -0
  10. package/lib/element/type.js +24 -1
  11. package/lib/example/furtle/bnf.js +11 -5
  12. package/lib/example/furtle/entries.js +2 -2
  13. package/lib/node/anoymousProcedure.js +31 -0
  14. package/lib/node/procedure.js +20 -3
  15. package/lib/node/returnBlock.js +4 -4
  16. package/lib/node/returnStatement.js +23 -0
  17. package/lib/node/statement.js +16 -3
  18. package/lib/nonTerminalNodeMap.js +10 -10
  19. package/lib/preamble.js +4 -5
  20. package/lib/process/instantiate.js +255 -0
  21. package/lib/process/verify.js +6 -6
  22. package/lib/ruleNames.js +7 -7
  23. package/lib/utilities/context.js +15 -1
  24. package/lib/utilities/element.js +82 -100
  25. package/lib/utilities/json.js +52 -1
  26. package/lib/utilities/string.js +1 -8
  27. package/package.json +5 -5
  28. package/src/context/file/furtle.js +0 -1
  29. package/src/context/literal.js +46 -0
  30. package/src/element/{procedure/anonymous.js → anonymousProcedure.js} +3 -3
  31. package/src/element/label.js +26 -1
  32. package/src/element/parameters.js +26 -1
  33. package/src/element/procedure.js +58 -3
  34. package/src/element/returnBlock.js +6 -6
  35. package/src/element/{statement/return.js → returnStatement.js} +1 -1
  36. package/src/element/{step.js → statement.js} +2 -2
  37. package/src/element/type.js +41 -1
  38. package/src/example/furtle/bnf.js +10 -4
  39. package/src/example/furtle/entries.js +2 -2
  40. package/src/node/{procedure/anoymous.js → anoymousProcedure.js} +4 -4
  41. package/src/node/procedure.js +31 -1
  42. package/src/node/returnBlock.js +5 -5
  43. package/src/node/returnStatement.js +16 -0
  44. package/src/node/statement.js +24 -1
  45. package/src/nonTerminalNodeMap.js +11 -11
  46. package/src/preamble.js +3 -4
  47. package/src/process/instantiate.js +194 -0
  48. package/src/process/verify.js +7 -7
  49. package/src/ruleNames.js +2 -2
  50. package/src/utilities/context.js +9 -0
  51. package/src/utilities/element.js +113 -145
  52. package/src/utilities/json.js +57 -0
  53. package/src/utilities/string.js +0 -14
  54. package/lib/element/declaration/procedure.js +0 -36
  55. package/lib/element/procedure/anonymous.js +0 -51
  56. package/lib/element/statement/return.js +0 -33
  57. package/lib/element/step.js +0 -43
  58. package/lib/node/declaration/procedure.js +0 -40
  59. package/lib/node/declaration.js +0 -18
  60. package/lib/node/procedure/anoymous.js +0 -36
  61. package/lib/node/statement/return.js +0 -28
  62. package/lib/node/step.js +0 -31
  63. package/src/element/declaration/procedure.js +0 -38
  64. package/src/node/declaration/procedure.js +0 -37
  65. package/src/node/declaration.js +0 -7
  66. package/src/node/statement/return.js +0 -16
  67. package/src/node/step.js +0 -30
@@ -10,7 +10,6 @@ import { ternaryStringFromTerm,
10
10
  termStringFromProperties,
11
11
  valueStringFromProperties,
12
12
  expressionStringFromProperties,
13
- procedureDeclarationStringFromProcedure,
14
13
  returnBlockStringFromReturnStatementNode,
15
14
  variableAssignmentStringFromTypeAndVariable,
16
15
  someStringFromVariableAndAnonymousProcedure,
@@ -20,22 +19,6 @@ import { ternaryStringFromTerm,
20
19
  variableAssignmentStringFromTypeAndVariableAssignmentsArray,
21
20
  reduceStringFromVariableInitialExpressionAndAnonymousProcedure } from "../utilities/string";
22
21
 
23
- export function stepFromStepNode(stepNode, context) {
24
- const { Step } = elements,
25
- node = stepNode, ///
26
- string = context.nodeAsString(node),
27
- breakPoint = null,
28
- arrayAssignment = arrayAssignmentFromStepNode(stepNode, context),
29
- objectAssigment = objectAssignmentFromStepNode(stepNode, context),
30
- variableAssigments = variableAssignmentsFromStepNode(stepNode, context);
31
-
32
- context = null;
33
-
34
- const step = new Step(context, string, node, breakPoint, arrayAssignment, objectAssigment, variableAssigments);
35
-
36
- return step;
37
- }
38
-
39
22
  export function someFromSomeNode(someNode, context) {
40
23
  const { Some } = elements,
41
24
  node = someNode, ///
@@ -115,22 +98,6 @@ export function valueFromValueNode(valueNode, context) {
115
98
  return value;
116
99
  }
117
100
 
118
- export function termsFromTermsNode(termsNode, context) {
119
- const { Terms } = elements,
120
- node = termsNode, ///
121
- string = context.nodeAsString(node),
122
- termNodes = termsNode.getTermNodes(),
123
- termsArray = termsArrayFromTermNodes(termNodes, context),
124
- array = termsArray, ///
125
- breakPoint = null;
126
-
127
- context = null;
128
-
129
- const terms = new Terms(context, string, node, breakPoint, array);
130
-
131
- return terms;
132
- }
133
-
134
101
  export function errorFromErrorNode(errorNode, context) {
135
102
  const { Error } = elements,
136
103
  node = errorNode, ///
@@ -285,6 +252,37 @@ export function lengthOfFromLengthOfNode(lengthOfNode, context) {
285
252
  return lengthOf;
286
253
  }
287
254
 
255
+ export function statementFromStatementNode(statementNode, context) {
256
+ const { Statement } = elements,
257
+ node = statementNode, ///
258
+ string = context.nodeAsString(node),
259
+ breakPoint = null,
260
+ arrayAssignment = arrayAssignmentFromStatementNode(statementNode, context),
261
+ objectAssigment = objectAssignmentFromStatementNode(statementNode, context),
262
+ variableAssigments = variableAssignmentsFromStatementNode(statementNode, context);
263
+
264
+ context = null;
265
+
266
+ const statement = new Statement(context, string, node, breakPoint, arrayAssignment, objectAssigment, variableAssigments);
267
+
268
+ return statement;
269
+ }
270
+
271
+ export function procedureFromProcedureNode(procedureNode, context) {
272
+ const { Procedure } = elements,
273
+ node = procedureNode, ///
274
+ type = typeFromProcedureNode(procedureNode, context),
275
+ label = labelFromProcedureNode(procedureNode, context),
276
+ parameters = parametersFromProcedureNode(procedureNode, context),
277
+ returnBlock = returnBlockFromProcedureNode(procedureNode, context),
278
+ procedureString = procedureStringFromTypeLabelParametersAndReturnBlock(type, label, parameters, returnBlock),
279
+ string = procedureString, ///
280
+ breakPoint = null,
281
+ procedure = new Procedure(context, string, node, breakPoint, type, label, parameters, returnBlock);
282
+
283
+ return procedure;
284
+ }
285
+
288
286
  export function referenceFromReferenceNode(referenceNode, context) {
289
287
  const { Reference } = elements,
290
288
  node = referenceNode, ///
@@ -445,7 +443,7 @@ export function tryIntegerFromTryIntegerNode(tryIntegerNode, context) {
445
443
  export function returnBlockFromReturnBlockNode(returnBlockNode, context) {
446
444
  const { ReturnBlock } = elements,
447
445
  node = returnBlockNode, ///
448
- steps = stepsFromReturnBlockNode(returnBlockNode, context),
446
+ statements = statementsFromReturnBlockNode(returnBlockNode, context),
449
447
  nonsensical = nonsensicalFromReturnBlockNode(returnBlockNode, context),
450
448
  returnStatement = returnStatementFromReturnBlockNode(returnBlockNode, context),
451
449
  returnBlockString = returnBlockStringFromReturnStatementNode(returnStatement),
@@ -454,7 +452,7 @@ export function returnBlockFromReturnBlockNode(returnBlockNode, context) {
454
452
 
455
453
  context = null;
456
454
 
457
- const returnBlock = new ReturnBlock(context, string, node, breakPoint, steps, nonsensical, returnStatement);
455
+ const returnBlock = new ReturnBlock(context, string, node, breakPoint, statements, nonsensical, returnStatement);
458
456
 
459
457
  return returnBlock;
460
458
  }
@@ -564,21 +562,6 @@ export function namedBindingsFromObjectAssignmentNode(objectAssignmentNode, cont
564
562
  return namedBindings;
565
563
  }
566
564
 
567
- export function procedureFromProcedureDeclarationNode(procedureDeclarationNode, context) {
568
- const { Procedure } = elements,
569
- node = procedureDeclarationNode, ///
570
- type = typeFromProcedureDeclarationNode(procedureDeclarationNode, context),
571
- label = labelFromProcedureDeclarationNode(procedureDeclarationNode, context),
572
- parameters = parametersFromProcedureDeclarationNode(procedureDeclarationNode, context),
573
- returnBlock = returnBlockFromProcedureDeclarationNode(procedureDeclarationNode, context),
574
- procedureString = procedureStringFromTypeLabelParametersAndReturnBlock(type, label, parameters, returnBlock),
575
- string = procedureString, ///
576
- breakPoint = null,
577
- procedure = new Procedure(context, string, node, breakPoint, type, label, parameters, returnBlock);
578
-
579
- return procedure;
580
- }
581
-
582
565
  export function arrayAssignmentFromArrayAssignmentNode(arrayAssignmentNode, context) {
583
566
  const { ArrayAssignment } = elements,
584
567
  node = arrayAssignmentNode, ///
@@ -657,21 +640,6 @@ export function variableAssignmentsFromVariableAssignmentsNode(variableAssignmen
657
640
  return variableAssignments;
658
641
  }
659
642
 
660
- export function procedureDeclarationFromProcedureDeclarationNode(procedureDeclarationNode, context) {
661
- const { ProcedureDeclaration } = elements,
662
- node = procedureDeclarationNode, ///
663
- procedure = procedureFromProcedureDeclarationNode(procedureDeclarationNode, context),
664
- procedureDeclarationString = procedureDeclarationStringFromProcedure(procedure),
665
- string = procedureDeclarationString, ///
666
- breakPoint = null;
667
-
668
- context = null;
669
-
670
- const procedureDeclaration = new ProcedureDeclaration(context, string, node, breakPoint, procedure);
671
-
672
- return procedureDeclaration;
673
- }
674
-
675
643
  export function variableAssignmentFromTypeAndVariableAssignmentNode(type, variableAssignmentNode, context) {
676
644
  const { VariableAssignment } = elements,
677
645
  node = variableAssignmentNode, ///
@@ -685,19 +653,6 @@ export function variableAssignmentFromTypeAndVariableAssignmentNode(type, variab
685
653
  return assignment;
686
654
  }
687
655
 
688
- export function variableFromTypeAndVariableNode(type, variableNode, context) {
689
- const { Variable } = elements,
690
- node = variableNode, ///
691
- name = nameFromVariableNode(variableNode),
692
- value = valueFromTypeAndVariableNode(type, variableNode, context),
693
- variableString = variableStringFromName(name),
694
- string = variableString, ///
695
- breakPoint = null,
696
- variable = new Variable(context, string, node, breakPoint, type, name, value);
697
-
698
- return variable;
699
- }
700
-
701
656
  export function nameFromTypeNode(typeNode, context) {
702
657
  const name = typeNode.getName();
703
658
 
@@ -773,6 +728,13 @@ export function typeFromVariableNode(variableNode, context) {
773
728
  return type;
774
729
  }
775
730
 
731
+ export function typeFromProcedureNode(procedureNode, context) {
732
+ const typeNode = procedureNode.getTypeNode(),
733
+ type = typeFromTypeNode(typeNode, context);
734
+
735
+ return type;
736
+ }
737
+
776
738
  export function primitiveFromTermNode(termNode, context) {
777
739
  let primitive = null;
778
740
 
@@ -870,6 +832,13 @@ export function valueFromPrimitiveNode(primitiveNode, context) {
870
832
  return value;
871
833
  }
872
834
 
835
+ export function labelFromProcedureNode(procedureNode, context) {
836
+ const labelNode = procedureNode.getLabelNode(),
837
+ label = labelFromLabelNode(labelNode, context);
838
+
839
+ return label;
840
+ }
841
+
873
842
  export function termFromExpressionNode(expressionNode, context) {
874
843
  let term = null;
875
844
 
@@ -990,17 +959,6 @@ export function reduceFromExpressionNode(expressionNode, context) {
990
959
  return reduce;
991
960
  }
992
961
 
993
- export function stepsFromReturnBlockNode(returnBlockNode, context) {
994
- const stepNodes = returnBlockNode.getStepNodes(),
995
- steps = stepNodes.map((stepNode) => {
996
- const step = stepFromStepNode(stepNode, context);
997
-
998
- return step;
999
- });
1000
-
1001
- return steps;
1002
- }
1003
-
1004
962
  export function typeFromNamedBindingNode(namedBindingNode, context) {
1005
963
  const typeNode = namedBindingNode.getTypeNode(),
1006
964
  type = typeFromTypeNode(typeNode, context);
@@ -1116,18 +1074,6 @@ export function lengthOfFromExpressionNode(expressionNode, context) {
1116
1074
  return lengthOf;
1117
1075
  }
1118
1076
 
1119
- export function arrayAssignmentFromStepNode(stepNode, context) {
1120
- let arrayAssignment = null;
1121
-
1122
- const arrayAssignmentNode = stepNode.getArrayAssignmentNode();
1123
-
1124
- if (arrayAssignmentNode !== null) {
1125
- arrayAssignment = arrayAssignmentFromArrayAssignmentNode(arrayAssignmentNode, context);
1126
- }
1127
-
1128
- return arrayAssignment;
1129
- }
1130
-
1131
1077
  export function ifExpressionFromTernaryNode(ternaryNode, context) {
1132
1078
  const ifExpressionNode = ternaryNode.getIfExpressionNode(),
1133
1079
  ifExpression = expressionFromExpressionNode(ifExpressionNode, context);
@@ -1135,6 +1081,13 @@ export function ifExpressionFromTernaryNode(ternaryNode, context) {
1135
1081
  return ifExpression;
1136
1082
  }
1137
1083
 
1084
+ export function parametersFromProcedureNode(procedureNode, context) {
1085
+ const parametersNode = procedureNode.getParametersNode(),
1086
+ parameters = parametersFromParametersNode(parametersNode, context);
1087
+
1088
+ return parameters;
1089
+ }
1090
+
1138
1091
  export function toIntegerFromExpressionNode(expressionNode, context) {
1139
1092
  let toInteger = null;
1140
1093
 
@@ -1173,6 +1126,13 @@ export function valuesFromProcedureCallNode(procedureCallNode, context) {
1173
1126
  return values;
1174
1127
  }
1175
1128
 
1129
+ export function returnBlockFromProcedureNode(procedureNode, context) {
1130
+ const returnBlockNode = procedureNode.getReturnBlockNode(),
1131
+ returnBlock = returnBlockFromReturnBlockNode(returnBlockNode, context);
1132
+
1133
+ return returnBlock;
1134
+ }
1135
+
1176
1136
  export function valueFromTypeAndVariableNode(type, variableNode, context) {
1177
1137
  const value = null;
1178
1138
 
@@ -1186,18 +1146,6 @@ export function valueFromReturnStatementNode(returnStatementNode, context) {
1186
1146
  return value;
1187
1147
  }
1188
1148
 
1189
- export function objectAssignmentFromStepNode(stepNode, context) {
1190
- let objectAssignment = null;
1191
-
1192
- const objectAssignmentNode = stepNode.getObjectAssignmentNode();
1193
-
1194
- if (objectAssignmentNode !== null) {
1195
- objectAssignment = objectAssignmentFromObjectAssignmentNode(objectAssignmentNode, context);
1196
- }
1197
-
1198
- return objectAssignment;
1199
- }
1200
-
1201
1149
  export function nodesQueryFromExpressionNode(expressionNode, context) {
1202
1150
  let nodesQuery = null;
1203
1151
 
@@ -1248,6 +1196,17 @@ export function returnBlockFromExpressionNode(expressionNode, context) {
1248
1196
  return returnBlock;
1249
1197
  }
1250
1198
 
1199
+ export function statementsFromReturnBlockNode(returnBlockNode, context) {
1200
+ const statementNodes = returnBlockNode.getStatementNodes(),
1201
+ statements = statementNodes.map((statementNode) => {
1202
+ const statement = statementFromStatementNode(statementNode, context);
1203
+
1204
+ return statement;
1205
+ });
1206
+
1207
+ return statements;
1208
+ }
1209
+
1251
1210
  export function negatedFromComparisonTermNode(comparisonTermNode, context) {
1252
1211
  const negated = comparisonTermNode.isNegated();
1253
1212
 
@@ -1294,16 +1253,17 @@ export function typeFromAnonymousProcedureNode(anonymousProcedureNode, context)
1294
1253
  return type;
1295
1254
  }
1296
1255
 
1297
- export function variableAssignmentsFromStepNode(stepNode, context) {
1298
- let variableAssignments = null;
1299
-
1300
- const variableAssignmentsNode = stepNode.getVariableAssignmentsNode();
1301
-
1302
- if (variableAssignmentsNode !== null) {
1303
- variableAssignments = variableAssignmentsFromVariableAssignmentsNode(variableAssignmentsNode, context);
1304
- }
1256
+ export function variableFromTypeAndVariableNode(type, variableNode, context) {
1257
+ const { Variable } = elements,
1258
+ node = variableNode, ///
1259
+ name = nameFromVariableNode(variableNode),
1260
+ value = valueFromTypeAndVariableNode(type, variableNode, context),
1261
+ variableString = variableStringFromName(name),
1262
+ string = variableString, ///
1263
+ breakPoint = null,
1264
+ variable = new Variable(context, string, node, breakPoint, type, name, value);
1305
1265
 
1306
- return variableAssignments;
1266
+ return variable;
1307
1267
  }
1308
1268
 
1309
1269
  export function anonymousProcedureFromEveryNode(everyNode, context) {
@@ -1360,6 +1320,18 @@ export function anonymousProcedureFromReduceNode(reduceNode, context) {
1360
1320
  return anonymousProcedure;
1361
1321
  }
1362
1322
 
1323
+ export function arrayAssignmentFromStatementNode(statementNode, context) {
1324
+ let arrayAssignment = null;
1325
+
1326
+ const arrayAssignmentNode = statementNode.getArrayAssignmentNode();
1327
+
1328
+ if (arrayAssignmentNode !== null) {
1329
+ arrayAssignment = arrayAssignmentFromArrayAssignmentNode(arrayAssignmentNode, context);
1330
+ }
1331
+
1332
+ return arrayAssignment;
1333
+ }
1334
+
1363
1335
  export function variableFromObjectAssignmentNode(objectAssignmentNode, context) {
1364
1336
  const variableNode = objectAssignmentNode.getVariableNode(),
1365
1337
  variable = variableFromVariableNode(variableNode, context);
@@ -1367,18 +1339,16 @@ export function variableFromObjectAssignmentNode(objectAssignmentNode, context)
1367
1339
  return variable;
1368
1340
  }
1369
1341
 
1370
- export function typeFromProcedureDeclarationNode(procedureDeclarationNode, context) {
1371
- const typeNode = procedureDeclarationNode.getTypeNode(),
1372
- type = typeFromTypeNode(typeNode, context);
1342
+ export function objectAssignmentFromStatementNode(statementNode, context) {
1343
+ let objectAssignment = null;
1373
1344
 
1374
- return type;
1375
- }
1345
+ const objectAssignmentNode = statementNode.getObjectAssignmentNode();
1376
1346
 
1377
- export function labelFromProcedureDeclarationNode(procedureDeclarationNode, context) {
1378
- const labelNode = procedureDeclarationNode.getLabelNode(),
1379
- label = labelFromLabelNode(labelNode, context);
1347
+ if (objectAssignmentNode !== null) {
1348
+ objectAssignment = objectAssignmentFromObjectAssignmentNode(objectAssignmentNode, context);
1349
+ }
1380
1350
 
1381
- return label;
1351
+ return objectAssignment;
1382
1352
  }
1383
1353
 
1384
1354
  export function returnStatementFromReturnBlockNode(returnBlockNode, context) {
@@ -1388,6 +1358,18 @@ export function returnStatementFromReturnBlockNode(returnBlockNode, context) {
1388
1358
  return returnStatement;
1389
1359
  }
1390
1360
 
1361
+ export function variableAssignmentsFromStatementNode(statementNode, context) {
1362
+ let variableAssignments = null;
1363
+
1364
+ const variableAssignmentsNode = statementNode.getVariableAssignmentsNode();
1365
+
1366
+ if (variableAssignmentsNode !== null) {
1367
+ variableAssignments = variableAssignmentsFromVariableAssignmentsNode(variableAssignmentsNode, context);
1368
+ }
1369
+
1370
+ return variableAssignments;
1371
+ }
1372
+
1391
1373
  export function expressionFromVariableAssignmentNode(variableAssigmentNode, context) {
1392
1374
  const expressionNode = variableAssigmentNode.getExpressionNode(),
1393
1375
  expression = expressionFromExpressionNode(expressionNode, context);
@@ -1409,20 +1391,6 @@ export function returnBlockFromAnonymousProcedureNode(anonymousProcedureNode, co
1409
1391
  return returnBlock;
1410
1392
  }
1411
1393
 
1412
- export function parametersFromProcedureDeclarationNode(procedureDeclarationNode, context) {
1413
- const parametersNode = procedureDeclarationNode.getParametersNode(),
1414
- parameters = parametersFromParametersNode(parametersNode, context);
1415
-
1416
- return parameters;
1417
- }
1418
-
1419
- export function returnBlockFromProcedureDeclarationNode(procedureDeclarationNode, context) {
1420
- const returnBlockNode = procedureDeclarationNode.getReturnBlockNode(),
1421
- returnBlock = returnBlockFromReturnBlockNode(returnBlockNode, context);
1422
-
1423
- return returnBlock;
1424
- }
1425
-
1426
1394
  export function variableFromTypeAndVariableAssignmentNode(type, variableAssignmentNode, context) {
1427
1395
  const variableNode = variableAssignmentNode.getVariableNode(),
1428
1396
  variable = variableFromTypeAndVariableNode(type, variableNode, context);
@@ -2,6 +2,63 @@
2
2
 
3
3
  import elements from "../elements";
4
4
 
5
+ export function typeToTypeJSON(type) {
6
+ const typeJSON = type.toJSON();
7
+
8
+ return typeJSON;
9
+ }
10
+
11
+ export function labelToLabelJSON(label) {
12
+ const labelJSON = label.toJSON();
13
+
14
+ return labelJSON;
15
+ }
16
+
17
+ export function parametersToParametersJSON(parameters) {
18
+ const parameterJSON = parameters.toJSON();
19
+
20
+ return parameterJSON;
21
+ }
22
+
23
+ export function typeFromJSON(json, context) {
24
+ let { type } = json;
25
+
26
+ const { Type } = elements,
27
+ typeJSON = type; ///
28
+
29
+ json = typeJSON; ///
30
+
31
+ type = Type.fromJSON(json, context);
32
+
33
+ return type;
34
+ }
35
+
36
+ export function labelFromJSON(json, context) {
37
+ let { label } = json;
38
+
39
+ const { Label } = elements,
40
+ labelJSON = label; ///
41
+
42
+ json = labelJSON; ///
43
+
44
+ label = Label.fromJSON(json, context);
45
+
46
+ return label;
47
+ }
48
+
49
+ export function parametersFromJSON(json, context) {
50
+ let { parameters } = json;
51
+
52
+ const { Parameters } = elements,
53
+ parametersJSON = parameters; ///
54
+
55
+ json = parametersJSON; ///
56
+
57
+ parameters = Parameters.fromJSON(json, context);
58
+
59
+ return parameters;
60
+ }
61
+
5
62
  export function proceduresFromJSON(json, context) {
6
63
  let { procedures } = json;
7
64
 
@@ -129,20 +129,6 @@ export function primtiveStringFromNominalValues(nominalValues) {
129
129
  return primtiveString;
130
130
  }
131
131
 
132
- export function procedureDeclarationStringFromProcedure(procedure) {
133
- const type = procedure.getType(),
134
- label = procedure.getLabel(),
135
- parameters = procedure.getParameters(),
136
- returnStatement = procedure.getReturnStatement(),
137
- typeString = type.getString(),
138
- labelString = label.getString(),
139
- parametersString = parameters.getString(),
140
- returnStatementString = returnStatement.getString(),
141
- procedureDelcarationString = `${typeString} ${labelString }(${parametersString}) { ... ${returnStatementString} }`;
142
-
143
- return procedureDelcarationString;
144
- }
145
-
146
132
  export function returnBlockStringFromReturnStatementNode(returnStatement) {
147
133
  const returnStatementString = returnStatement.getString(),
148
134
  returnBlockString = `{ ... ${returnStatementString} }`;
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "default", {
6
- enumerable: true,
7
- get: function() {
8
- return _default;
9
- }
10
- });
11
- const _occamlanguages = require("occam-languages");
12
- const _elements = require("../../elements");
13
- const _default = (0, _elements.define)(class ProcedureDeclaration extends _occamlanguages.Element {
14
- constructor(context, string, node, breakPoint, procedure){
15
- super(context, string, node, breakPoint);
16
- this.string = string;
17
- this.procedure = procedure;
18
- }
19
- getProcedure() {
20
- return this.procedure;
21
- }
22
- verify(context) {
23
- const verifies = true;
24
- const procedureDeclarationString = this.getString();
25
- context.trace(`Verifying the '${procedureDeclarationString}' function declaration...`);
26
- const procedure = this.getProcedure();
27
- context.addProcedure(procedure);
28
- if (verifies) {
29
- context.debug(`...verified the '${procedureDeclarationString}' function declaration.`);
30
- }
31
- return verifies;
32
- }
33
- static name = "ProcedureDeclaration";
34
- });
35
-
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50L2RlY2xhcmF0aW9uL3Byb2NlZHVyZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgRWxlbWVudCB9IGZyb20gXCJvY2NhbS1sYW5ndWFnZXNcIjtcblxuaW1wb3J0IHsgZGVmaW5lIH0gZnJvbSBcIi4uLy4uL2VsZW1lbnRzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBQcm9jZWR1cmVEZWNsYXJhdGlvbiBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIHByb2NlZHVyZSkge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLnN0cmluZyA9IHN0cmluZztcbiAgICB0aGlzLnByb2NlZHVyZSA9IHByb2NlZHVyZTtcbiAgfVxuXG4gIGdldFByb2NlZHVyZSgpIHtcbiAgICByZXR1cm4gdGhpcy5wcm9jZWR1cmU7XG4gIH1cblxuICB2ZXJpZnkoY29udGV4dCkge1xuICAgIGNvbnN0IHZlcmlmaWVzID0gdHJ1ZTtcblxuICAgIGNvbnN0IHByb2NlZHVyZURlY2xhcmF0aW9uU3RyaW5nID0gdGhpcy5nZXRTdHJpbmcoKTtcblxuICAgIGNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7cHJvY2VkdXJlRGVjbGFyYXRpb25TdHJpbmd9JyBmdW5jdGlvbiBkZWNsYXJhdGlvbi4uLmApXG5cbiAgICBjb25zdCBwcm9jZWR1cmUgPSB0aGlzLmdldFByb2NlZHVyZSgpO1xuXG4gICAgY29udGV4dC5hZGRQcm9jZWR1cmUocHJvY2VkdXJlKTtcblxuICAgIGlmICh2ZXJpZmllcykge1xuICAgICAgY29udGV4dC5kZWJ1ZyhgLi4udmVyaWZpZWQgdGhlICcke3Byb2NlZHVyZURlY2xhcmF0aW9uU3RyaW5nfScgZnVuY3Rpb24gZGVjbGFyYXRpb24uYClcbiAgICB9XG5cbiAgICByZXR1cm4gdmVyaWZpZXM7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiUHJvY2VkdXJlRGVjbGFyYXRpb25cIjtcbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIlByb2NlZHVyZURlY2xhcmF0aW9uIiwiRWxlbWVudCIsImNvbnRleHQiLCJzdHJpbmciLCJub2RlIiwiYnJlYWtQb2ludCIsInByb2NlZHVyZSIsImdldFByb2NlZHVyZSIsInZlcmlmeSIsInZlcmlmaWVzIiwicHJvY2VkdXJlRGVjbGFyYXRpb25TdHJpbmciLCJnZXRTdHJpbmciLCJ0cmFjZSIsImFkZFByb2NlZHVyZSIsImRlYnVnIiwibmFtZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBTUE7OztlQUFBOzs7Z0NBSndCOzBCQUVEO01BRXZCLFdBQWVBLElBQUFBLGdCQUFNLEVBQUMsTUFBTUMsNkJBQTZCQyx1QkFBTztJQUM5RCxZQUFZQyxPQUFPLEVBQUVDLE1BQU0sRUFBRUMsSUFBSSxFQUFFQyxVQUFVLEVBQUVDLFNBQVMsQ0FBRTtRQUN4RCxLQUFLLENBQUNKLFNBQVNDLFFBQVFDLE1BQU1DO1FBRTdCLElBQUksQ0FBQ0YsTUFBTSxHQUFHQTtRQUNkLElBQUksQ0FBQ0csU0FBUyxHQUFHQTtJQUNuQjtJQUVBQyxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUNELFNBQVM7SUFDdkI7SUFFQUUsT0FBT04sT0FBTyxFQUFFO1FBQ2QsTUFBTU8sV0FBVztRQUVqQixNQUFNQyw2QkFBNkIsSUFBSSxDQUFDQyxTQUFTO1FBRWpEVCxRQUFRVSxLQUFLLENBQUMsQ0FBQyxlQUFlLEVBQUVGLDJCQUEyQix5QkFBeUIsQ0FBQztRQUVyRixNQUFNSixZQUFZLElBQUksQ0FBQ0MsWUFBWTtRQUVuQ0wsUUFBUVcsWUFBWSxDQUFDUDtRQUVyQixJQUFJRyxVQUFVO1lBQ1pQLFFBQVFZLEtBQUssQ0FBQyxDQUFDLGlCQUFpQixFQUFFSiwyQkFBMkIsdUJBQXVCLENBQUM7UUFDdkY7UUFFQSxPQUFPRDtJQUNUO0lBRUEsT0FBT00sT0FBTyx1QkFBdUI7QUFDdkMifQ==
@@ -1,51 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "default", {
6
- enumerable: true,
7
- get: function() {
8
- return _default;
9
- }
10
- });
11
- const _occamlanguages = require("occam-languages");
12
- const _exception = /*#__PURE__*/ _interop_require_default(require("../../exception"));
13
- const _elements = require("../../elements");
14
- const _parameters = require("../../utilities/parameters");
15
- function _interop_require_default(obj) {
16
- return obj && obj.__esModule ? obj : {
17
- default: obj
18
- };
19
- }
20
- const _default = (0, _elements.define)(class AnonymousProcedure extends _occamlanguages.Element {
21
- constructor(context, string, node, breakPoint, type, parameters, returnBlock){
22
- super(context, string, node, breakPoint);
23
- this.type = type;
24
- this.parameters = parameters;
25
- this.returnBlock = returnBlock;
26
- }
27
- getType() {
28
- return this.type;
29
- }
30
- getParameters() {
31
- return this.parameters;
32
- }
33
- getReturnBlock() {
34
- return this.returnBlock;
35
- }
36
- async call(values, context) {
37
- const anonymousProcedureString = this.getString(); ///
38
- context.trace(`Calling the '${anonymousProcedureString}' anonymous procedure...`);
39
- this.parameters.compareValues(values, context);
40
- const variables = (0, _parameters.variablesFromValuesAndParameters)(values, this.parameters, context), value = await this.returnBlock.evaluate(variables, context), valueType = value.getType(), typeEqualToValueType = this.type.isEqualTo(valueType);
41
- if (!typeEqualToValueType) {
42
- const valueString = value.getString(), typeString = this.type.getString(), message = `The '${valueString}' value's '${valueType}' type is not equal to the '${anonymousProcedureString}' anonymous procedure's '${typeString}' type.`, exception = _exception.default.fromMessage(message);
43
- throw exception;
44
- }
45
- context.debug(`...called the '${anonymousProcedureString}' anonymous procedure.`);
46
- return value;
47
- }
48
- static name = "AnonymousProcedure";
49
- });
50
-
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50L3Byb2NlZHVyZS9hbm9ueW1vdXMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uLy4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IHZhcmlhYmxlc0Zyb21WYWx1ZXNBbmRQYXJhbWV0ZXJzIH0gZnJvbSBcIi4uLy4uL3V0aWxpdGllcy9wYXJhbWV0ZXJzXCI7XG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZShjbGFzcyBBbm9ueW1vdXNQcm9jZWR1cmUgZXh0ZW5kcyBFbGVtZW50IHtcbiAgY29uc3RydWN0b3IoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50LCB0eXBlLCBwYXJhbWV0ZXJzLCByZXR1cm5CbG9jaykge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCk7XG5cbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMucGFyYW1ldGVycyA9IHBhcmFtZXRlcnM7XG4gICAgdGhpcy5yZXR1cm5CbG9jayA9IHJldHVybkJsb2NrO1xuICB9XG5cbiAgZ2V0VHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy50eXBlO1xuICB9XG5cbiAgZ2V0UGFyYW1ldGVycygpIHtcbiAgICByZXR1cm4gdGhpcy5wYXJhbWV0ZXJzO1xuICB9XG5cbiAgZ2V0UmV0dXJuQmxvY2soKSB7XG4gICAgcmV0dXJuIHRoaXMucmV0dXJuQmxvY2s7XG4gIH1cblxuICBhc3luYyBjYWxsKHZhbHVlcywgY29udGV4dCkge1xuICAgIGNvbnN0IGFub255bW91c1Byb2NlZHVyZVN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7IC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgQ2FsbGluZyB0aGUgJyR7YW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nfScgYW5vbnltb3VzIHByb2NlZHVyZS4uLmApO1xuXG4gICAgdGhpcy5wYXJhbWV0ZXJzLmNvbXBhcmVWYWx1ZXModmFsdWVzLCBjb250ZXh0KTtcblxuICAgIGNvbnN0IHZhcmlhYmxlcyA9IHZhcmlhYmxlc0Zyb21WYWx1ZXNBbmRQYXJhbWV0ZXJzKHZhbHVlcywgdGhpcy5wYXJhbWV0ZXJzLCBjb250ZXh0KSxcbiAgICAgICAgICB2YWx1ZSA9IGF3YWl0IHRoaXMucmV0dXJuQmxvY2suZXZhbHVhdGUodmFyaWFibGVzLCBjb250ZXh0KSxcbiAgICAgICAgICB2YWx1ZVR5cGUgPSB2YWx1ZS5nZXRUeXBlKCksXG4gICAgICAgICAgdHlwZUVxdWFsVG9WYWx1ZVR5cGUgPSB0aGlzLnR5cGUuaXNFcXVhbFRvKHZhbHVlVHlwZSk7XG5cbiAgICBpZiAoIXR5cGVFcXVhbFRvVmFsdWVUeXBlKSB7XG4gICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgICAgdHlwZVN0cmluZyA9IHRoaXMudHlwZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgIG1lc3NhZ2UgPSBgVGhlICcke3ZhbHVlU3RyaW5nfScgdmFsdWUncyAnJHt2YWx1ZVR5cGV9JyB0eXBlIGlzIG5vdCBlcXVhbCB0byB0aGUgJyR7YW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nfScgYW5vbnltb3VzIHByb2NlZHVyZSdzICcke3R5cGVTdHJpbmd9JyB0eXBlLmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5jYWxsZWQgdGhlICcke2Fub255bW91c1Byb2NlZHVyZVN0cmluZ30nIGFub255bW91cyBwcm9jZWR1cmUuYCk7XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiQW5vbnltb3VzUHJvY2VkdXJlXCI7XG59KTtcbiJdLCJuYW1lcyI6WyJkZWZpbmUiLCJBbm9ueW1vdXNQcm9jZWR1cmUiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwidHlwZSIsInBhcmFtZXRlcnMiLCJyZXR1cm5CbG9jayIsImdldFR5cGUiLCJnZXRQYXJhbWV0ZXJzIiwiZ2V0UmV0dXJuQmxvY2siLCJjYWxsIiwidmFsdWVzIiwiYW5vbnltb3VzUHJvY2VkdXJlU3RyaW5nIiwiZ2V0U3RyaW5nIiwidHJhY2UiLCJjb21wYXJlVmFsdWVzIiwidmFyaWFibGVzIiwidmFyaWFibGVzRnJvbVZhbHVlc0FuZFBhcmFtZXRlcnMiLCJ2YWx1ZSIsImV2YWx1YXRlIiwidmFsdWVUeXBlIiwidHlwZUVxdWFsVG9WYWx1ZVR5cGUiLCJpc0VxdWFsVG8iLCJ2YWx1ZVN0cmluZyIsInR5cGVTdHJpbmciLCJtZXNzYWdlIiwiZXhjZXB0aW9uIiwiRXhjZXB0aW9uIiwiZnJvbU1lc3NhZ2UiLCJkZWJ1ZyIsIm5hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQVNBOzs7ZUFBQTs7O2dDQVB3QjtrRUFFRjswQkFFQzs0QkFDMEI7Ozs7OztNQUVqRCxXQUFlQSxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLDJCQUEyQkMsdUJBQU87SUFDNUQsWUFBWUMsT0FBTyxFQUFFQyxNQUFNLEVBQUVDLElBQUksRUFBRUMsVUFBVSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsV0FBVyxDQUFFO1FBQzVFLEtBQUssQ0FBQ04sU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxJQUFJLEdBQUdBO1FBQ1osSUFBSSxDQUFDQyxVQUFVLEdBQUdBO1FBQ2xCLElBQUksQ0FBQ0MsV0FBVyxHQUFHQTtJQUNyQjtJQUVBQyxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUNILElBQUk7SUFDbEI7SUFFQUksZ0JBQWdCO1FBQ2QsT0FBTyxJQUFJLENBQUNILFVBQVU7SUFDeEI7SUFFQUksaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUNILFdBQVc7SUFDekI7SUFFQSxNQUFNSSxLQUFLQyxNQUFNLEVBQUVYLE9BQU8sRUFBRTtRQUMxQixNQUFNWSwyQkFBMkIsSUFBSSxDQUFDQyxTQUFTLElBQUksR0FBRztRQUV0RGIsUUFBUWMsS0FBSyxDQUFDLENBQUMsYUFBYSxFQUFFRix5QkFBeUIsd0JBQXdCLENBQUM7UUFFaEYsSUFBSSxDQUFDUCxVQUFVLENBQUNVLGFBQWEsQ0FBQ0osUUFBUVg7UUFFdEMsTUFBTWdCLFlBQVlDLElBQUFBLDRDQUFnQyxFQUFDTixRQUFRLElBQUksQ0FBQ04sVUFBVSxFQUFFTCxVQUN0RWtCLFFBQVEsTUFBTSxJQUFJLENBQUNaLFdBQVcsQ0FBQ2EsUUFBUSxDQUFDSCxXQUFXaEIsVUFDbkRvQixZQUFZRixNQUFNWCxPQUFPLElBQ3pCYyx1QkFBdUIsSUFBSSxDQUFDakIsSUFBSSxDQUFDa0IsU0FBUyxDQUFDRjtRQUVqRCxJQUFJLENBQUNDLHNCQUFzQjtZQUN6QixNQUFNRSxjQUFjTCxNQUFNTCxTQUFTLElBQzdCVyxhQUFhLElBQUksQ0FBQ3BCLElBQUksQ0FBQ1MsU0FBUyxJQUNoQ1ksVUFBVSxDQUFDLEtBQUssRUFBRUYsWUFBWSxXQUFXLEVBQUVILFVBQVUsNEJBQTRCLEVBQUVSLHlCQUF5Qix5QkFBeUIsRUFBRVksV0FBVyxPQUFPLENBQUMsRUFDMUpFLFlBQVlDLGtCQUFTLENBQUNDLFdBQVcsQ0FBQ0g7WUFFeEMsTUFBTUM7UUFDUjtRQUVBMUIsUUFBUTZCLEtBQUssQ0FBQyxDQUFDLGVBQWUsRUFBRWpCLHlCQUF5QixzQkFBc0IsQ0FBQztRQUVoRixPQUFPTTtJQUNUO0lBRUEsT0FBT1ksT0FBTyxxQkFBcUI7QUFDckMifQ==
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "default", {
6
- enumerable: true,
7
- get: function() {
8
- return _default;
9
- }
10
- });
11
- const _occamlanguages = require("occam-languages");
12
- const _elements = require("../../elements");
13
- const _default = (0, _elements.define)(class ReturnStatement extends _occamlanguages.Element {
14
- constructor(context, string, node, breakPoint, value){
15
- super(context, string, node, breakPoint);
16
- this.value = value;
17
- }
18
- getExpression() {
19
- return this.value;
20
- }
21
- evaluate(context) {
22
- let value;
23
- const returnStatementString = this.getString(); ///
24
- context.trace(`Evaluating the '${returnStatementString}' return statement...`);
25
- value = this.value.evaluate(context);
26
- const valueString = value.getString();
27
- context.debug(`...evaluated the '${returnStatementString}' return statement as '${valueString}'.`);
28
- return value;
29
- }
30
- static name = "ReturnStatement";
31
- });
32
-
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50L3N0YXRlbWVudC9yZXR1cm4uanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi8uLi9lbGVtZW50c1wiO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgUmV0dXJuU3RhdGVtZW50IGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdmFsdWUpIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQpO1xuXG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICB9XG5cbiAgZ2V0RXhwcmVzc2lvbigpIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZTtcbiAgfVxuXG4gIGV2YWx1YXRlKGNvbnRleHQpIHtcbiAgICBsZXQgdmFsdWU7XG5cbiAgICBjb25zdCByZXR1cm5TdGF0ZW1lbnRTdHJpbmcgPSB0aGlzLmdldFN0cmluZygpOyAgLy8vXG5cbiAgICBjb250ZXh0LnRyYWNlKGBFdmFsdWF0aW5nIHRoZSAnJHtyZXR1cm5TdGF0ZW1lbnRTdHJpbmd9JyByZXR1cm4gc3RhdGVtZW50Li4uYCk7XG5cbiAgICB2YWx1ZSA9IHRoaXMudmFsdWUuZXZhbHVhdGUoY29udGV4dCk7XG5cbiAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpO1xuXG4gICAgY29udGV4dC5kZWJ1ZyhgLi4uZXZhbHVhdGVkIHRoZSAnJHtyZXR1cm5TdGF0ZW1lbnRTdHJpbmd9JyByZXR1cm4gc3RhdGVtZW50IGFzICcke3ZhbHVlU3RyaW5nfScuYCk7XG5cbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiUmV0dXJuU3RhdGVtZW50XCI7XG59KTtcbiJdLCJuYW1lcyI6WyJkZWZpbmUiLCJSZXR1cm5TdGF0ZW1lbnQiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwidmFsdWUiLCJnZXRFeHByZXNzaW9uIiwiZXZhbHVhdGUiLCJyZXR1cm5TdGF0ZW1lbnRTdHJpbmciLCJnZXRTdHJpbmciLCJ0cmFjZSIsInZhbHVlU3RyaW5nIiwiZGVidWciLCJuYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFNQTs7O2VBQUE7OztnQ0FKd0I7MEJBRUQ7TUFFdkIsV0FBZUEsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyx3QkFBd0JDLHVCQUFPO0lBQ3pELFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsS0FBSyxDQUFFO1FBQ3BELEtBQUssQ0FBQ0osU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxLQUFLLEdBQUdBO0lBQ2Y7SUFFQUMsZ0JBQWdCO1FBQ2QsT0FBTyxJQUFJLENBQUNELEtBQUs7SUFDbkI7SUFFQUUsU0FBU04sT0FBTyxFQUFFO1FBQ2hCLElBQUlJO1FBRUosTUFBTUcsd0JBQXdCLElBQUksQ0FBQ0MsU0FBUyxJQUFLLEdBQUc7UUFFcERSLFFBQVFTLEtBQUssQ0FBQyxDQUFDLGdCQUFnQixFQUFFRixzQkFBc0IscUJBQXFCLENBQUM7UUFFN0VILFFBQVEsSUFBSSxDQUFDQSxLQUFLLENBQUNFLFFBQVEsQ0FBQ047UUFFNUIsTUFBTVUsY0FBY04sTUFBTUksU0FBUztRQUVuQ1IsUUFBUVcsS0FBSyxDQUFDLENBQUMsa0JBQWtCLEVBQUVKLHNCQUFzQix1QkFBdUIsRUFBRUcsWUFBWSxFQUFFLENBQUM7UUFFakcsT0FBT047SUFDVDtJQUVBLE9BQU9RLE9BQU8sa0JBQWtCO0FBQ2xDIn0=
@@ -1,43 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "default", {
6
- enumerable: true,
7
- get: function() {
8
- return _default;
9
- }
10
- });
11
- const _occamlanguages = require("occam-languages");
12
- const _elements = require("../elements");
13
- const _default = (0, _elements.define)(class Step extends _occamlanguages.Element {
14
- constructor(context, string, node, breakPoint, arrayAssignment, objectAssigment, variableAssignments){
15
- super(context, string, node, breakPoint);
16
- this.arrayAssignment = arrayAssignment;
17
- this.objectAssigment = objectAssigment;
18
- this.variableAssignments = variableAssignments;
19
- }
20
- getArrayAssignment() {
21
- return this.arrayAssignment;
22
- }
23
- getObjectAssigment() {
24
- return this.objectAssigment;
25
- }
26
- getVariableAssignments() {
27
- return this.variableAssignments;
28
- }
29
- async evaluate(context) {
30
- if (false) {
31
- ///
32
- } else if (this.arrayAssignment !== null) {
33
- this.arrayAssignment.evaluate(context);
34
- } else if (this.objectAssigment !== null) {
35
- this.objectAssigment.evaluate(context);
36
- } else if (this.variableAssignments !== null) {
37
- await this.variableAssignments.evaluate(context);
38
- }
39
- }
40
- static name = "Step";
41
- });
42
-
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50L3N0ZXAuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCB7IGRlZmluZSB9IGZyb20gXCIuLi9lbGVtZW50c1wiO1xuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmUoY2xhc3MgU3RlcCBleHRlbmRzIEVsZW1lbnQge1xuICBjb25zdHJ1Y3Rvcihjb250ZXh0LCBzdHJpbmcsIG5vZGUsIGJyZWFrUG9pbnQsIGFycmF5QXNzaWdubWVudCwgb2JqZWN0QXNzaWdtZW50LCB2YXJpYWJsZUFzc2lnbm1lbnRzKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMuYXJyYXlBc3NpZ25tZW50ID0gYXJyYXlBc3NpZ25tZW50O1xuICAgIHRoaXMub2JqZWN0QXNzaWdtZW50ID0gb2JqZWN0QXNzaWdtZW50O1xuICAgIHRoaXMudmFyaWFibGVBc3NpZ25tZW50cyA9IHZhcmlhYmxlQXNzaWdubWVudHM7XG4gIH1cblxuICBnZXRBcnJheUFzc2lnbm1lbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuYXJyYXlBc3NpZ25tZW50O1xuICB9XG5cbiAgZ2V0T2JqZWN0QXNzaWdtZW50KCkge1xuICAgIHJldHVybiB0aGlzLm9iamVjdEFzc2lnbWVudDtcbiAgfVxuXG4gIGdldFZhcmlhYmxlQXNzaWdubWVudHMoKSB7XG4gICAgcmV0dXJuIHRoaXMudmFyaWFibGVBc3NpZ25tZW50cztcbiAgfVxuXG4gIGFzeW5jIGV2YWx1YXRlKGNvbnRleHQpIHtcbiAgICBpZiAoZmFsc2UpIHtcbiAgICAgIC8vL1xuICAgIH0gZWxzZSBpZiAodGhpcy5hcnJheUFzc2lnbm1lbnQgIT09IG51bGwpIHtcbiAgICAgIHRoaXMuYXJyYXlBc3NpZ25tZW50LmV2YWx1YXRlKGNvbnRleHQpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5vYmplY3RBc3NpZ21lbnQgIT09IG51bGwpIHtcbiAgICAgIHRoaXMub2JqZWN0QXNzaWdtZW50LmV2YWx1YXRlKGNvbnRleHQpO1xuICAgIH0gZWxzZSBpZiAodGhpcy52YXJpYWJsZUFzc2lnbm1lbnRzICE9PSBudWxsKSB7XG4gICAgICBhd2FpdCB0aGlzLnZhcmlhYmxlQXNzaWdubWVudHMuZXZhbHVhdGUoY29udGV4dCk7XG4gICAgfVxuICB9XG5cbiAgc3RhdGljIG5hbWUgPSBcIlN0ZXBcIjtcbn0pO1xuIl0sIm5hbWVzIjpbImRlZmluZSIsIlN0ZXAiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwiYXJyYXlBc3NpZ25tZW50Iiwib2JqZWN0QXNzaWdtZW50IiwidmFyaWFibGVBc3NpZ25tZW50cyIsImdldEFycmF5QXNzaWdubWVudCIsImdldE9iamVjdEFzc2lnbWVudCIsImdldFZhcmlhYmxlQXNzaWdubWVudHMiLCJldmFsdWF0ZSIsIm5hbWUiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQU1BOzs7ZUFBQTs7O2dDQUp3QjswQkFFRDtNQUV2QixXQUFlQSxJQUFBQSxnQkFBTSxFQUFDLE1BQU1DLGFBQWFDLHVCQUFPO0lBQzlDLFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFBRUMsZUFBZSxFQUFFQyxlQUFlLEVBQUVDLG1CQUFtQixDQUFFO1FBQ3BHLEtBQUssQ0FBQ04sU0FBU0MsUUFBUUMsTUFBTUM7UUFFN0IsSUFBSSxDQUFDQyxlQUFlLEdBQUdBO1FBQ3ZCLElBQUksQ0FBQ0MsZUFBZSxHQUFHQTtRQUN2QixJQUFJLENBQUNDLG1CQUFtQixHQUFHQTtJQUM3QjtJQUVBQyxxQkFBcUI7UUFDbkIsT0FBTyxJQUFJLENBQUNILGVBQWU7SUFDN0I7SUFFQUkscUJBQXFCO1FBQ25CLE9BQU8sSUFBSSxDQUFDSCxlQUFlO0lBQzdCO0lBRUFJLHlCQUF5QjtRQUN2QixPQUFPLElBQUksQ0FBQ0gsbUJBQW1CO0lBQ2pDO0lBRUEsTUFBTUksU0FBU1YsT0FBTyxFQUFFO1FBQ3RCLElBQUksT0FBTztRQUNULEdBQUc7UUFDTCxPQUFPLElBQUksSUFBSSxDQUFDSSxlQUFlLEtBQUssTUFBTTtZQUN4QyxJQUFJLENBQUNBLGVBQWUsQ0FBQ00sUUFBUSxDQUFDVjtRQUNoQyxPQUFPLElBQUksSUFBSSxDQUFDSyxlQUFlLEtBQUssTUFBTTtZQUN4QyxJQUFJLENBQUNBLGVBQWUsQ0FBQ0ssUUFBUSxDQUFDVjtRQUNoQyxPQUFPLElBQUksSUFBSSxDQUFDTSxtQkFBbUIsS0FBSyxNQUFNO1lBQzVDLE1BQU0sSUFBSSxDQUFDQSxtQkFBbUIsQ0FBQ0ksUUFBUSxDQUFDVjtRQUMxQztJQUNGO0lBRUEsT0FBT1csT0FBTyxPQUFPO0FBQ3ZCIn0=