occam-furtle 3.0.445 → 3.0.447

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "occam-furtle",
3
3
  "author": "James Smith",
4
- "version": "3.0.445",
4
+ "version": "3.0.447",
5
5
  "license": "MIT, Anti-996",
6
6
  "homepage": "https://github.com/djalbat/occam-furtle",
7
7
  "description": "Occam's Furtle language.",
@@ -11,8 +11,8 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "necessary": "^17.6.3",
14
- "occam-grammars": "^1.3.661",
15
- "occam-languages": "^2.2.62",
14
+ "occam-grammars": "^1.3.663",
15
+ "occam-languages": "^2.2.63",
16
16
  "occam-lexers": "^23.2.8",
17
17
  "occam-parsers": "^23.2.11",
18
18
  "occam-query": "^4.1.206"
@@ -28,8 +28,8 @@
28
28
  "juxtapose": "^4.0.143",
29
29
  "lively-cli": "^3.0.3",
30
30
  "occam-grammar-utilities": "^8.1.22",
31
- "occam-model": "^1.0.577",
32
- "occam-server": "^7.0.77",
31
+ "occam-model": "^1.0.578",
32
+ "occam-server": "^7.0.78",
33
33
  "watchful-cli": "^1.7.102"
34
34
  },
35
35
  "scripts": {
@@ -10,7 +10,7 @@ import { LIST_TYPE_NAME } from "../../typeNames";
10
10
 
11
11
  const { breakable } = breakPointUtilities;
12
12
 
13
- export default define(class ArrayAssigment extends Element {
13
+ export default define(class ListAssignment extends Element {
14
14
  constructor(context, string, node, breakPoint, variable, bindings) {
15
15
  super(context, string, node, breakPoint);
16
16
 
@@ -27,9 +27,9 @@ export default define(class ArrayAssigment extends Element {
27
27
  }
28
28
 
29
29
  evaluate = breakable(function (context, continuation) {
30
- const arrayAssignmentString = this.getString(); ///
30
+ const listAssignmentString = this.getString(); ///
31
31
 
32
- context.trace(`Evaluating the '${arrayAssignmentString}' array assignment...`);
32
+ context.trace(`Evaluating the '${listAssignmentString}' list assignment...`);
33
33
 
34
34
  const value = this.variable.evaluate(context),
35
35
  valueType = value.getType(),
@@ -68,7 +68,7 @@ export default define(class ArrayAssigment extends Element {
68
68
  }
69
69
  });
70
70
 
71
- context.debug(`...evaluated the '${arrayAssignmentString}' array assignment.`);
71
+ context.debug(`...evaluated the '${listAssignmentString}' list assignment.`);
72
72
 
73
73
  return continuation();
74
74
  });
@@ -101,5 +101,5 @@ export default define(class ArrayAssigment extends Element {
101
101
  context.debug(`...evaluated the '${bindingString}' binding against the '${valueString}' value.`);
102
102
  }
103
103
 
104
- static name = "ArrayAssignment";
104
+ static name = "ListAssignment";
105
105
  });
@@ -5,16 +5,16 @@ import { Element } from "occam-languages";
5
5
  import { define } from "../elements";
6
6
 
7
7
  export default define(class Statement extends Element {
8
- constructor(context, string, node, breakPoint, arrayAssignment, objectAssignment, variableAssignments) {
8
+ constructor(context, string, node, breakPoint, listAssignment, objectAssignment, variableAssignments) {
9
9
  super(context, string, node, breakPoint);
10
10
 
11
- this.arrayAssignment = arrayAssignment;
11
+ this.listAssignment = listAssignment;
12
12
  this.objectAssignment = objectAssignment;
13
13
  this.variableAssignments = variableAssignments;
14
14
  }
15
15
 
16
- getArrayAssignment() {
17
- return this.arrayAssignment;
16
+ getListAssignment() {
17
+ return this.listAssignment;
18
18
  }
19
19
 
20
20
  getObjectAssignment() {
@@ -26,8 +26,8 @@ export default define(class Statement extends Element {
26
26
  }
27
27
 
28
28
  evaluate(context, continuation) {
29
- if (this.arrayAssignment !== null) {
30
- return this.arrayAssignment.evaluate(context, continuation);
29
+ if (this.listAssignment !== null) {
30
+ return this.listAssignment.evaluate(context, continuation);
31
31
  }
32
32
 
33
33
  if (this.objectAssignment !== null) {
@@ -16,7 +16,7 @@ const bnf = `
16
16
 
17
17
  | objectAssignment
18
18
 
19
- | arrayAssignment
19
+ | listAssignment
20
20
 
21
21
  ;
22
22
 
@@ -28,7 +28,7 @@ const bnf = `
28
28
 
29
29
  objectAssignment ::= "{" namedBindings "}" "=" variable ";" ;
30
30
 
31
- arrayAssignment ::= "[" bindings "]" "=" variable ";" ;
31
+ listAssignment ::= "[" bindings "]" "=" variable ";" ;
32
32
 
33
33
 
34
34
 
@@ -4,7 +4,7 @@ import AssignmentrNode from "../../node/assignment";
4
4
 
5
5
  import { VARIABLE_RULE_NAME, BINDINGS_RULE_NAME } from "../../ruleNames";
6
6
 
7
- export default class ArrayAssignmentNode extends AssignmentrNode {
7
+ export default class ListAssignmentNode extends AssignmentrNode {
8
8
  getVariableNode() {
9
9
  const ruleName = VARIABLE_RULE_NAME,
10
10
  variableNode = this.getNodeByRuleName(ruleName);
@@ -19,5 +19,5 @@ export default class ArrayAssignmentNode extends AssignmentrNode {
19
19
  return parametersNode;
20
20
  }
21
21
 
22
- static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return AssignmentrNode.fromRuleNameChildNodesOpacityAndPrecedence(ArrayAssignmentNode, ruleName, childNodes, opacity, precedence); }
22
+ static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) { return AssignmentrNode.fromRuleNameChildNodesOpacityAndPrecedence(ListAssignmentNode, ruleName, childNodes, opacity, precedence); }
23
23
  }
@@ -2,14 +2,14 @@
2
2
 
3
3
  import { NonTerminalNode } from "occam-languages";
4
4
 
5
- import { ARRAY_ASSIGNMENT_RULE_NAME, OBJECT_ASSIGNMENT_RULE_NAME, VARIABLE_ASSIGNMENTS_RULE_NAME } from "../ruleNames"
5
+ import { LIST_ASSIGNMENT_RULE_NAME, OBJECT_ASSIGNMENT_RULE_NAME, VARIABLE_ASSIGNMENTS_RULE_NAME } from "../ruleNames"
6
6
 
7
7
  export default class StatementNode extends NonTerminalNode {
8
- getArrayAssignmentNode() {
9
- const ruleName = ARRAY_ASSIGNMENT_RULE_NAME,
10
- arrayAssignmentNode = this.getNodeByRuleName(ruleName);
8
+ getListAssignmentNode() {
9
+ const ruleName = LIST_ASSIGNMENT_RULE_NAME,
10
+ listAssignmentNode = this.getNodeByRuleName(ruleName);
11
11
 
12
- return arrayAssignmentNode;
12
+ return listAssignmentNode;
13
13
  }
14
14
 
15
15
  getObjectAssignmentNode() {
@@ -39,8 +39,8 @@ import ProcedureCallNode from "./node/procedureCall";
39
39
  import NamedBindingsNode from "./node/bindings/named";
40
40
  import BracketedTermNode from "./node/term/bracketed";
41
41
  import ComparisonTermNode from "./node/term/comparison";
42
+ import ListAssignmentNode from "./node/assignment/list";
42
43
  import ReturnStatementNode from "./node/returnStatement";
43
- import ArrayAssignmentNode from "./node/assignment/array";
44
44
  import ObjectAssignmentNode from "./node/assignment/object";
45
45
  import AnonymousProcedureNode from "./node/anoymousProcedure";
46
46
  import VariableAssignmentNode from "./node/assignment/variable";
@@ -85,8 +85,8 @@ import { SOME_RULE_NAME,
85
85
  BRACKETED_TERM_RULE_NAME,
86
86
  PROCEDURE_CALL_RULE_NAME,
87
87
  COMPARISON_TERM_RULE_NAME,
88
+ LIST_ASSIGNMENT_RULE_NAME,
88
89
  RETURN_STATEMENT_RULE_NAME,
89
- ARRAY_ASSIGNMENT_RULE_NAME,
90
90
  OBJECT_ASSIGNMENT_RULE_NAME,
91
91
  VARIABLE_ASSIGNMENT_RULE_NAME,
92
92
  ANONYMOUS_PROCEDURE_RULE_NAME,
@@ -131,9 +131,9 @@ const NonTerminalNodeMap = {
131
131
  [NAMED_BINDINGS_RULE_NAME]: NamedBindingsNode,
132
132
  [PROCEDURE_CALL_RULE_NAME]: ProcedureCallNode,
133
133
  [BRACKETED_TERM_RULE_NAME]: BracketedTermNode,
134
+ [LIST_ASSIGNMENT_RULE_NAME]: ListAssignmentNode,
134
135
  [COMPARISON_TERM_RULE_NAME]: ComparisonTermNode,
135
136
  [RETURN_STATEMENT_RULE_NAME]: ReturnStatementNode,
136
- [ARRAY_ASSIGNMENT_RULE_NAME]: ArrayAssignmentNode,
137
137
  [OBJECT_ASSIGNMENT_RULE_NAME]: ObjectAssignmentNode,
138
138
  [ANONYMOUS_PROCEDURE_RULE_NAME]: AnonymousProcedureNode,
139
139
  [VARIABLE_ASSIGNMENT_RULE_NAME]: VariableAssignmentNode,
package/src/preamble.js CHANGED
@@ -36,8 +36,8 @@ import NamedBinding from "./element/binding/named";
36
36
  import ProcedureCall from "./element/procedureCall";
37
37
  import NamedBindings from "./element/bindings/named";
38
38
  import BracketedTerm from "./element/term/bracketed";
39
+ import listAssignment from "./element/assignment/list";
39
40
  import ComparisonTerm from "./element/term/comparison";
40
- import ArrayAssigment from "./element/assignment/array";
41
41
  import ReturnStatement from "./element/returnStatement";
42
42
  import ObjectAssignment from "./element/assignment/object";
43
43
  import AnonymousProcedure from "./element/anonymousProcedure";
package/src/ruleNames.js CHANGED
@@ -39,8 +39,8 @@ export const NAMED_BINDINGS_RULE_NAME = "namedBindings";
39
39
  export const BRACKETED_TERM_RULE_NAME = "bracketedTerm";
40
40
  export const PROCEDURE_CALL_RULE_NAME = "procedureCall";
41
41
  export const COMPARISON_TERM_RULE_NAME = "comparisonTerm";
42
+ export const LIST_ASSIGNMENT_RULE_NAME = "listAssignment";
42
43
  export const RETURN_STATEMENT_RULE_NAME = "returnStatement";
43
- export const ARRAY_ASSIGNMENT_RULE_NAME = "arrayAssignment";
44
44
  export const OBJECT_ASSIGNMENT_RULE_NAME = "objectAssignment";
45
45
  export const VARIABLE_ASSIGNMENT_RULE_NAME = "variableAssignment";
46
46
  export const ANONYMOUS_PROCEDURE_RULE_NAME = "anonymousProcedure";
@@ -287,13 +287,13 @@ export function statementFromStatementNode(statementNode, context) {
287
287
  node = statementNode, ///
288
288
  string = context.nodeAsString(node),
289
289
  breakPoint = null,
290
- arrayAssignment = arrayAssignmentFromStatementNode(statementNode, context),
290
+ listAssignment = listAssignmentFromStatementNode(statementNode, context),
291
291
  objectAssignment = objectAssignmentFromStatementNode(statementNode, context),
292
- variableAssigments = variableAssignmentsFromStatementNode(statementNode, context);
292
+ variableAssignments = variableAssignmentsFromStatementNode(statementNode, context);
293
293
 
294
294
  context = null;
295
295
 
296
- const statement = new Statement(context, string, node, breakPoint, arrayAssignment, objectAssignment, variableAssigments);
296
+ const statement = new Statement(context, string, node, breakPoint, listAssignment, objectAssignment, variableAssignments);
297
297
 
298
298
  return statement;
299
299
  }
@@ -606,26 +606,26 @@ export function comparisonTermFromComparisonTermNode(comparisonTermNode, context
606
606
  return comparisonTerm;
607
607
  }
608
608
 
609
- export function namedBindingsFromObjectAssignmentNode(objectAssignmentNode, context) {
610
- const namedBindingsNode = objectAssignmentNode.getNamedBindingsNode(),
611
- namedBindings = namedBindingsFromNamedBindingsNode(namedBindingsNode, context);
612
-
613
- return namedBindings;
614
- }
615
-
616
- export function arrayAssignmentFromArrayAssignmentNode(arrayAssignmentNode, context) {
617
- const { ArrayAssignment } = elements,
618
- node = arrayAssignmentNode, ///
609
+ export function listAssignmentFromListAssignmentNode(listAssignmentNode, context) {
610
+ const { ListAssignment } = elements,
611
+ node = listAssignmentNode, ///
619
612
  string = context.nodeAsString(node),
620
613
  breakPoint = null,
621
- variable = variableFromArrayAssignmentNode(arrayAssignmentNode, context),
622
- bindings = bindingsFromArrayAssignmentNode(arrayAssignmentNode, context);
614
+ variable = variableFromListAssignmentNode(listAssignmentNode, context),
615
+ bindings = bindingsFromListAssignmentNode(listAssignmentNode, context);
623
616
 
624
617
  context = null;
625
618
 
626
- const arrayAssignment = new ArrayAssignment(context, string, node, breakPoint, variable, bindings);
619
+ const listAssignment = new ListAssignment(context, string, node, breakPoint, variable, bindings);
620
+
621
+ return listAssignment;
622
+ }
623
+
624
+ export function namedBindingsFromObjectAssignmentNode(objectAssignmentNode, context) {
625
+ const namedBindingsNode = objectAssignmentNode.getNamedBindingsNode(),
626
+ namedBindings = namedBindingsFromNamedBindingsNode(namedBindingsNode, context);
627
627
 
628
- return arrayAssignment;
628
+ return namedBindings;
629
629
  }
630
630
 
631
631
  export function returnStatementFromReturnStatementNode(returnStatementNode, context) {
@@ -1256,13 +1256,6 @@ export function valueFromTypeAndVariableNode(type, variableNode, context) {
1256
1256
  return value;
1257
1257
  }
1258
1258
 
1259
- export function valueFromReturnStatementNode(returnStatementNode, context) {
1260
- const valueNode = returnStatementNode.getValueNode(),
1261
- value = valueFromValueNode(valueNode, context);
1262
-
1263
- return value;
1264
- }
1265
-
1266
1259
  export function nodesQueryFromExpressionNode(expressionNode, context) {
1267
1260
  let nodesQuery = null;
1268
1261
 
@@ -1306,6 +1299,13 @@ export function rightTermFromLogicalTermNode(logicalTermNode, context) {
1306
1299
  return rightTerm;
1307
1300
  }
1308
1301
 
1302
+ export function valueFromReturnStatementNode(returnStatementNode, context) {
1303
+ const valueNode = returnStatementNode.getValueNode(),
1304
+ value = valueFromValueNode(valueNode, context);
1305
+
1306
+ return value;
1307
+ }
1308
+
1309
1309
  export function elseExpressionFromTernaryNode(ternaryNode, context) {
1310
1310
  const elseExpressionNode = ternaryNode.getElseExpressionNode(),
1311
1311
  elseExpression = expressionFromExpressionNode(elseExpressionNode, context);
@@ -1421,20 +1421,32 @@ export function rightTermFromCompzrisonTermNode(comparisonTermNode, context) {
1421
1421
  return rightTerm;
1422
1422
  }
1423
1423
 
1424
- export function variableFromArrayAssignmentNode(arrayAssignmentNode, context) {
1425
- const variableNode = arrayAssignmentNode.getVariableNode(),
1424
+ export function variableFromListAssignmentNode(listAssignmentNode, context) {
1425
+ const variableNode = listAssignmentNode.getVariableNode(),
1426
1426
  variable = variableFromVariableNode(variableNode, context);
1427
1427
 
1428
1428
  return variable;
1429
1429
  }
1430
1430
 
1431
- export function bindingsFromArrayAssignmentNode(arrayAssignmentNode, context) {
1432
- const bindingsNode = arrayAssignmentNode.getBindingsNode(),
1431
+ export function bindingsFromListAssignmentNode(listAssignmentNode, context) {
1432
+ const bindingsNode = listAssignmentNode.getBindingsNode(),
1433
1433
  bindings = bindingsFromBindingsNode(bindingsNode, context);
1434
1434
 
1435
1435
  return bindings;
1436
1436
  }
1437
1437
 
1438
+ export function listAssignmentFromStatementNode(statementNode, context) {
1439
+ let listAssignment = null;
1440
+
1441
+ const listAssignmentNode = statementNode.getListAssignmentNode();
1442
+
1443
+ if (listAssignmentNode !== null) {
1444
+ listAssignment = listAssignmentFromListAssignmentNode(listAssignmentNode, context);
1445
+ }
1446
+
1447
+ return listAssignment;
1448
+ }
1449
+
1438
1450
  export function typeFromVariableAssignmentsNode(variableAssignmentsNode, context) {
1439
1451
  const typeNode = variableAssignmentsNode.getTypeNode(),
1440
1452
  type = typeFromTypeNode(typeNode, context);
@@ -1449,18 +1461,6 @@ export function anonymousProcedureFromReduceNode(reduceNode, context) {
1449
1461
  return anonymousProcedure;
1450
1462
  }
1451
1463
 
1452
- export function arrayAssignmentFromStatementNode(statementNode, context) {
1453
- let arrayAssignment = null;
1454
-
1455
- const arrayAssignmentNode = statementNode.getArrayAssignmentNode();
1456
-
1457
- if (arrayAssignmentNode !== null) {
1458
- arrayAssignment = arrayAssignmentFromArrayAssignmentNode(arrayAssignmentNode, context);
1459
- }
1460
-
1461
- return arrayAssignment;
1462
- }
1463
-
1464
1464
  export function variableFromObjectAssignmentNode(objectAssignmentNode, context) {
1465
1465
  const variableNode = objectAssignmentNode.getVariableNode(),
1466
1466
  variable = variableFromVariableNode(variableNode, context);
@@ -1499,8 +1499,8 @@ export function variableAssignmentsFromStatementNode(statementNode, context) {
1499
1499
  return variableAssignments;
1500
1500
  }
1501
1501
 
1502
- export function expressionFromVariableAssignmentNode(variableAssigmentNode, context) {
1503
- const expressionNode = variableAssigmentNode.getExpressionNode(),
1502
+ export function expressionFromVariableAssignmentNode(variableAssignmentNode, context) {
1503
+ const expressionNode = variableAssignmentNode.getExpressionNode(),
1504
1504
  expression = expressionFromExpressionNode(expressionNode, context);
1505
1505
 
1506
1506
  return expression;
@@ -1,113 +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 = /*#__PURE__*/ _interop_require_wildcard(require("../../elements"));
13
- const _exception = /*#__PURE__*/ _interop_require_default(require("../../exception"));
14
- const _typeNames = require("../../typeNames");
15
- function _interop_require_default(obj) {
16
- return obj && obj.__esModule ? obj : {
17
- default: obj
18
- };
19
- }
20
- function _getRequireWildcardCache(nodeInterop) {
21
- if (typeof WeakMap !== "function") return null;
22
- var cacheBabelInterop = new WeakMap();
23
- var cacheNodeInterop = new WeakMap();
24
- return (_getRequireWildcardCache = function(nodeInterop) {
25
- return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
26
- })(nodeInterop);
27
- }
28
- function _interop_require_wildcard(obj, nodeInterop) {
29
- if (!nodeInterop && obj && obj.__esModule) {
30
- return obj;
31
- }
32
- if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
33
- return {
34
- default: obj
35
- };
36
- }
37
- var cache = _getRequireWildcardCache(nodeInterop);
38
- if (cache && cache.has(obj)) {
39
- return cache.get(obj);
40
- }
41
- var newObj = {
42
- __proto__: null
43
- };
44
- var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
45
- for(var key in obj){
46
- if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
47
- var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
48
- if (desc && (desc.get || desc.set)) {
49
- Object.defineProperty(newObj, key, desc);
50
- } else {
51
- newObj[key] = obj[key];
52
- }
53
- }
54
- }
55
- newObj.default = obj;
56
- if (cache) {
57
- cache.set(obj, newObj);
58
- }
59
- return newObj;
60
- }
61
- const { breakable } = _occamlanguages.breakPointUtilities;
62
- const _default = (0, _elements.define)(class ArrayAssigment extends _occamlanguages.Element {
63
- constructor(context, string, node, breakPoint, variable, bindings){
64
- super(context, string, node, breakPoint);
65
- this.variable = variable;
66
- this.bindings = bindings;
67
- }
68
- getVariable() {
69
- return this.variable;
70
- }
71
- getBindings() {
72
- return this.bindings;
73
- }
74
- evaluate = breakable(function(context, continuation) {
75
- const arrayAssignmentString = this.getString(); ///
76
- context.trace(`Evaluating the '${arrayAssignmentString}' array assignment...`);
77
- const value = this.variable.evaluate(context), valueType = value.getType(), valueTypeListType = valueType.isListType();
78
- if (!valueTypeListType) {
79
- const valueString = value.getString(), message = `The '${valueString}' value's '${valueType}' type should be '${_typeNames.LIST_TYPE_NAME}'.`, exception = _exception.default.fromMessage(message);
80
- throw exception;
81
- }
82
- const bindingsLength = this.bindings.getLength(), primitiveValue = value.getPrimitiveValue(), primitiveValueLength = primitiveValue.length;
83
- if (bindingsLength > primitiveValueLength) {
84
- const valueString = value.getString(), bindingsString = this.bindings.getString(), message = `The length of the '${bindingsString}' bindings is greater than the length of the '${valueString}' list.`, exception = _exception.default.fromMessage(message);
85
- throw exception;
86
- }
87
- const values = value.lift(context);
88
- this.bindings.forEachBinding((binding, index)=>{
89
- const elided = binding.isElided();
90
- if (!elided) {
91
- const value = values[index];
92
- this.evaluateBinding(binding, value, context);
93
- }
94
- });
95
- context.debug(`...evaluated the '${arrayAssignmentString}' array assignment.`);
96
- return continuation();
97
- });
98
- evaluateBinding(binding, value, context) {
99
- const valueString = value.getString(), bindingString = binding.getString();
100
- context.trace(`Evaluating the '${bindingString}' binding against the '${valueString}' value...`);
101
- const valueType = value.getType(), bindingType = binding.getType(), bindingTypeEqualToValueType = bindingType.isEqualTo(valueType);
102
- if (!bindingTypeEqualToValueType) {
103
- const bindingTypeString = bindingType.getString(), valueTypeString = valueType.getString(), valueString = value.getString(), message = `The '${bindingString}' binding's '${bindingTypeString}' type is not equal to the '${valueString}' value's '${valueTypeString}' type.`, exception = _exception.default.fromMessage(message);
104
- throw exception;
105
- }
106
- const { Variable } = _elements.default, variable = Variable.fromBinding(binding, context);
107
- variable.assign(value, context);
108
- context.debug(`...evaluated the '${bindingString}' binding against the '${valueString}' value.`);
109
- }
110
- static name = "ArrayAssignment";
111
- });
112
-
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50L2Fzc2lnbm1lbnQvYXJyYXkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IEVsZW1lbnQsIGJyZWFrUG9pbnRVdGlsaXRpZXMgfSBmcm9tIFwib2NjYW0tbGFuZ3VhZ2VzXCI7XG5cbmltcG9ydCBlbGVtZW50cyBmcm9tIFwiLi4vLi4vZWxlbWVudHNcIjtcbmltcG9ydCBFeGNlcHRpb24gZnJvbSBcIi4uLy4uL2V4Y2VwdGlvblwiO1xuXG5pbXBvcnQgeyBkZWZpbmUgfSBmcm9tIFwiLi4vLi4vZWxlbWVudHNcIjtcbmltcG9ydCB7IExJU1RfVFlQRV9OQU1FIH0gZnJvbSBcIi4uLy4uL3R5cGVOYW1lc1wiO1xuXG5jb25zdCB7IGJyZWFrYWJsZSB9ID0gYnJlYWtQb2ludFV0aWxpdGllcztcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lKGNsYXNzIEFycmF5QXNzaWdtZW50IGV4dGVuZHMgRWxlbWVudCB7XG4gIGNvbnN0cnVjdG9yKGNvbnRleHQsIHN0cmluZywgbm9kZSwgYnJlYWtQb2ludCwgdmFyaWFibGUsIGJpbmRpbmdzKSB7XG4gICAgc3VwZXIoY29udGV4dCwgc3RyaW5nLCBub2RlLCBicmVha1BvaW50KTtcblxuICAgIHRoaXMudmFyaWFibGUgPSB2YXJpYWJsZTtcbiAgICB0aGlzLmJpbmRpbmdzID0gYmluZGluZ3M7XG4gIH1cblxuICBnZXRWYXJpYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YXJpYWJsZTtcbiAgfVxuXG4gIGdldEJpbmRpbmdzKCkge1xuICAgIHJldHVybiB0aGlzLmJpbmRpbmdzO1xuICB9XG5cbiAgZXZhbHVhdGUgPSBicmVha2FibGUoZnVuY3Rpb24gKGNvbnRleHQsIGNvbnRpbnVhdGlvbikge1xuICAgIGNvbnN0IGFycmF5QXNzaWdubWVudFN0cmluZyA9IHRoaXMuZ2V0U3RyaW5nKCk7IC8vL1xuXG4gICAgY29udGV4dC50cmFjZShgRXZhbHVhdGluZyB0aGUgJyR7YXJyYXlBc3NpZ25tZW50U3RyaW5nfScgYXJyYXkgYXNzaWdubWVudC4uLmApO1xuXG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLnZhcmlhYmxlLmV2YWx1YXRlKGNvbnRleHQpLFxuICAgICAgICAgIHZhbHVlVHlwZSA9IHZhbHVlLmdldFR5cGUoKSxcbiAgICAgICAgICB2YWx1ZVR5cGVMaXN0VHlwZSA9IHZhbHVlVHlwZS5pc0xpc3RUeXBlKCk7XG5cbiAgICBpZiAoIXZhbHVlVHlwZUxpc3RUeXBlKSB7XG4gICAgICBjb25zdCB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7dmFsdWVTdHJpbmd9JyB2YWx1ZSdzICcke3ZhbHVlVHlwZX0nIHR5cGUgc2hvdWxkIGJlICcke0xJU1RfVFlQRV9OQU1FfScuYCxcbiAgICAgICAgICAgIGV4Y2VwdGlvbiA9IEV4Y2VwdGlvbi5mcm9tTWVzc2FnZShtZXNzYWdlKTtcblxuICAgICAgdGhyb3cgZXhjZXB0aW9uO1xuICAgIH1cblxuICAgIGNvbnN0IGJpbmRpbmdzTGVuZ3RoID0gdGhpcy5iaW5kaW5ncy5nZXRMZW5ndGgoKSxcbiAgICAgICAgICBwcmltaXRpdmVWYWx1ZSA9IHZhbHVlLmdldFByaW1pdGl2ZVZhbHVlKCksXG4gICAgICAgICAgcHJpbWl0aXZlVmFsdWVMZW5ndGggPSBwcmltaXRpdmVWYWx1ZS5sZW5ndGg7XG5cbiAgICBpZiAoYmluZGluZ3NMZW5ndGggPiBwcmltaXRpdmVWYWx1ZUxlbmd0aCkge1xuICAgICAgY29uc3QgdmFsdWVTdHJpbmcgPSB2YWx1ZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgIGJpbmRpbmdzU3RyaW5nID0gdGhpcy5iaW5kaW5ncy5nZXRTdHJpbmcoKSxcbiAgICAgICAgICAgIG1lc3NhZ2UgPSBgVGhlIGxlbmd0aCBvZiB0aGUgJyR7YmluZGluZ3NTdHJpbmd9JyBiaW5kaW5ncyBpcyBncmVhdGVyIHRoYW4gdGhlIGxlbmd0aCBvZiB0aGUgJyR7dmFsdWVTdHJpbmd9JyBsaXN0LmAsXG4gICAgICAgICAgICBleGNlcHRpb24gPSBFeGNlcHRpb24uZnJvbU1lc3NhZ2UobWVzc2FnZSk7XG5cbiAgICAgIHRocm93IGV4Y2VwdGlvbjtcbiAgICB9XG5cbiAgICBjb25zdCB2YWx1ZXMgPSB2YWx1ZS5saWZ0KGNvbnRleHQpO1xuXG4gICAgdGhpcy5iaW5kaW5ncy5mb3JFYWNoQmluZGluZygoYmluZGluZywgaW5kZXgpID0+IHtcbiAgICAgIGNvbnN0IGVsaWRlZCA9IGJpbmRpbmcuaXNFbGlkZWQoKTtcblxuICAgICAgaWYgKCFlbGlkZWQpIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB2YWx1ZXNbaW5kZXhdO1xuXG4gICAgICAgIHRoaXMuZXZhbHVhdGVCaW5kaW5nKGJpbmRpbmcsIHZhbHVlLCBjb250ZXh0KTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGNvbnRleHQuZGVidWcoYC4uLmV2YWx1YXRlZCB0aGUgJyR7YXJyYXlBc3NpZ25tZW50U3RyaW5nfScgYXJyYXkgYXNzaWdubWVudC5gKTtcblxuICAgIHJldHVybiBjb250aW51YXRpb24oKTtcbiAgfSk7XG5cbiAgZXZhbHVhdGVCaW5kaW5nKGJpbmRpbmcsIHZhbHVlLCBjb250ZXh0KSB7XG4gICAgY29uc3QgdmFsdWVTdHJpbmcgPSB2YWx1ZS5nZXRTdHJpbmcoKSxcbiAgICAgICAgICBiaW5kaW5nU3RyaW5nID0gYmluZGluZy5nZXRTdHJpbmcoKTtcblxuICAgIGNvbnRleHQudHJhY2UoYEV2YWx1YXRpbmcgdGhlICcke2JpbmRpbmdTdHJpbmd9JyBiaW5kaW5nIGFnYWluc3QgdGhlICcke3ZhbHVlU3RyaW5nfScgdmFsdWUuLi5gKTtcblxuICAgIGNvbnN0IHZhbHVlVHlwZSA9IHZhbHVlLmdldFR5cGUoKSxcbiAgICAgICAgICBiaW5kaW5nVHlwZSA9IGJpbmRpbmcuZ2V0VHlwZSgpLFxuICAgICAgICAgIGJpbmRpbmdUeXBlRXF1YWxUb1ZhbHVlVHlwZSA9IGJpbmRpbmdUeXBlLmlzRXF1YWxUbyh2YWx1ZVR5cGUpO1xuXG4gICAgaWYgKCFiaW5kaW5nVHlwZUVxdWFsVG9WYWx1ZVR5cGUpIHtcbiAgICAgIGNvbnN0IGJpbmRpbmdUeXBlU3RyaW5nID0gYmluZGluZ1R5cGUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICB2YWx1ZVR5cGVTdHJpbmcgPSB2YWx1ZVR5cGUuZ2V0U3RyaW5nKCksXG4gICAgICAgICAgICB2YWx1ZVN0cmluZyA9IHZhbHVlLmdldFN0cmluZygpLFxuICAgICAgICAgICAgbWVzc2FnZSA9IGBUaGUgJyR7YmluZGluZ1N0cmluZ30nIGJpbmRpbmcncyAnJHtiaW5kaW5nVHlwZVN0cmluZ30nIHR5cGUgaXMgbm90IGVxdWFsIHRvIHRoZSAnJHt2YWx1ZVN0cmluZ30nIHZhbHVlJ3MgJyR7dmFsdWVUeXBlU3RyaW5nfScgdHlwZS5gLFxuICAgICAgICAgICAgZXhjZXB0aW9uID0gRXhjZXB0aW9uLmZyb21NZXNzYWdlKG1lc3NhZ2UpO1xuXG4gICAgICB0aHJvdyBleGNlcHRpb247XG4gICAgfVxuXG4gICAgY29uc3QgeyBWYXJpYWJsZSB9ID0gZWxlbWVudHMsXG4gICAgICAgICAgdmFyaWFibGUgPSBWYXJpYWJsZS5mcm9tQmluZGluZyhiaW5kaW5nLCBjb250ZXh0KTtcblxuICAgIHZhcmlhYmxlLmFzc2lnbih2YWx1ZSwgY29udGV4dCk7XG5cbiAgICBjb250ZXh0LmRlYnVnKGAuLi5ldmFsdWF0ZWQgdGhlICcke2JpbmRpbmdTdHJpbmd9JyBiaW5kaW5nIGFnYWluc3QgdGhlICcke3ZhbHVlU3RyaW5nfScgdmFsdWUuYCk7XG4gIH1cblxuICBzdGF0aWMgbmFtZSA9IFwiQXJyYXlBc3NpZ25tZW50XCI7XG59KTtcbiJdLCJuYW1lcyI6WyJicmVha2FibGUiLCJicmVha1BvaW50VXRpbGl0aWVzIiwiZGVmaW5lIiwiQXJyYXlBc3NpZ21lbnQiLCJFbGVtZW50IiwiY29udGV4dCIsInN0cmluZyIsIm5vZGUiLCJicmVha1BvaW50IiwidmFyaWFibGUiLCJiaW5kaW5ncyIsImdldFZhcmlhYmxlIiwiZ2V0QmluZGluZ3MiLCJldmFsdWF0ZSIsImNvbnRpbnVhdGlvbiIsImFycmF5QXNzaWdubWVudFN0cmluZyIsImdldFN0cmluZyIsInRyYWNlIiwidmFsdWUiLCJ2YWx1ZVR5cGUiLCJnZXRUeXBlIiwidmFsdWVUeXBlTGlzdFR5cGUiLCJpc0xpc3RUeXBlIiwidmFsdWVTdHJpbmciLCJtZXNzYWdlIiwiTElTVF9UWVBFX05BTUUiLCJleGNlcHRpb24iLCJFeGNlcHRpb24iLCJmcm9tTWVzc2FnZSIsImJpbmRpbmdzTGVuZ3RoIiwiZ2V0TGVuZ3RoIiwicHJpbWl0aXZlVmFsdWUiLCJnZXRQcmltaXRpdmVWYWx1ZSIsInByaW1pdGl2ZVZhbHVlTGVuZ3RoIiwibGVuZ3RoIiwiYmluZGluZ3NTdHJpbmciLCJ2YWx1ZXMiLCJsaWZ0IiwiZm9yRWFjaEJpbmRpbmciLCJiaW5kaW5nIiwiaW5kZXgiLCJlbGlkZWQiLCJpc0VsaWRlZCIsImV2YWx1YXRlQmluZGluZyIsImRlYnVnIiwiYmluZGluZ1N0cmluZyIsImJpbmRpbmdUeXBlIiwiYmluZGluZ1R5cGVFcXVhbFRvVmFsdWVUeXBlIiwiaXNFcXVhbFRvIiwiYmluZGluZ1R5cGVTdHJpbmciLCJ2YWx1ZVR5cGVTdHJpbmciLCJWYXJpYWJsZSIsImVsZW1lbnRzIiwiZnJvbUJpbmRpbmciLCJhc3NpZ24iLCJuYW1lIl0sIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkFZQTs7O2VBQUE7OztnQ0FWNkM7a0VBRXhCO2tFQUNDOzJCQUdTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUUvQixNQUFNLEVBQUVBLFNBQVMsRUFBRSxHQUFHQyxtQ0FBbUI7TUFFekMsV0FBZUMsSUFBQUEsZ0JBQU0sRUFBQyxNQUFNQyx1QkFBdUJDLHVCQUFPO0lBQ3hELFlBQVlDLE9BQU8sRUFBRUMsTUFBTSxFQUFFQyxJQUFJLEVBQUVDLFVBQVUsRUFB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
@@ -1,32 +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 ArrayAssignmentNode;
9
- }
10
- });
11
- const _assignment = /*#__PURE__*/ _interop_require_default(require("../../node/assignment"));
12
- const _ruleNames = require("../../ruleNames");
13
- function _interop_require_default(obj) {
14
- return obj && obj.__esModule ? obj : {
15
- default: obj
16
- };
17
- }
18
- class ArrayAssignmentNode extends _assignment.default {
19
- getVariableNode() {
20
- const ruleName = _ruleNames.VARIABLE_RULE_NAME, variableNode = this.getNodeByRuleName(ruleName);
21
- return variableNode;
22
- }
23
- getBindingsNode() {
24
- const ruleName = _ruleNames.BINDINGS_RULE_NAME, parametersNode = this.getNodeByRuleName(ruleName);
25
- return parametersNode;
26
- }
27
- static fromRuleNameChildNodesOpacityAndPrecedence(ruleName, childNodes, opacity, precedence) {
28
- return _assignment.default.fromRuleNameChildNodesOpacityAndPrecedence(ArrayAssignmentNode, ruleName, childNodes, opacity, precedence);
29
- }
30
- }
31
-
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ub2RlL2Fzc2lnbm1lbnQvYXJyYXkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCBBc3NpZ25tZW50ck5vZGUgZnJvbSBcIi4uLy4uL25vZGUvYXNzaWdubWVudFwiO1xuXG5pbXBvcnQgeyBWQVJJQUJMRV9SVUxFX05BTUUsIEJJTkRJTkdTX1JVTEVfTkFNRSB9IGZyb20gXCIuLi8uLi9ydWxlTmFtZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQXJyYXlBc3NpZ25tZW50Tm9kZSBleHRlbmRzIEFzc2lnbm1lbnRyTm9kZSB7XG4gIGdldFZhcmlhYmxlTm9kZSgpIHtcbiAgICBjb25zdCBydWxlTmFtZSA9IFZBUklBQkxFX1JVTEVfTkFNRSxcbiAgICAgICAgICB2YXJpYWJsZU5vZGUgPSB0aGlzLmdldE5vZGVCeVJ1bGVOYW1lKHJ1bGVOYW1lKTtcblxuICAgIHJldHVybiB2YXJpYWJsZU5vZGU7XG4gIH1cblxuICBnZXRCaW5kaW5nc05vZGUoKSB7XG4gICAgY29uc3QgcnVsZU5hbWUgPSBCSU5ESU5HU19SVUxFX05BTUUsXG4gICAgICAgICAgcGFyYW1ldGVyc05vZGUgPSB0aGlzLmdldE5vZGVCeVJ1bGVOYW1lKHJ1bGVOYW1lKTtcblxuICAgIHJldHVybiBwYXJhbWV0ZXJzTm9kZTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UocnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpIHsgcmV0dXJuIEFzc2lnbm1lbnRyTm9kZS5mcm9tUnVsZU5hbWVDaGlsZE5vZGVzT3BhY2l0eUFuZFByZWNlZGVuY2UoQXJyYXlBc3NpZ25tZW50Tm9kZSwgcnVsZU5hbWUsIGNoaWxkTm9kZXMsIG9wYWNpdHksIHByZWNlZGVuY2UpOyB9XG59XG4iXSwibmFtZXMiOlsiQXJyYXlBc3NpZ25tZW50Tm9kZSIsIkFzc2lnbm1lbnRyTm9kZSIsImdldFZhcmlhYmxlTm9kZSIsInJ1bGVOYW1lIiwiVkFSSUFCTEVfUlVMRV9OQU1FIiwidmFyaWFibGVOb2RlIiwiZ2V0Tm9kZUJ5UnVsZU5hbWUiLCJnZXRCaW5kaW5nc05vZGUiLCJCSU5ESU5HU19SVUxFX05BTUUiLCJwYXJhbWV0ZXJzTm9kZSIsImZyb21SdWxlTmFtZUNoaWxkTm9kZXNPcGFjaXR5QW5kUHJlY2VkZW5jZSIsImNoaWxkTm9kZXMiLCJvcGFjaXR5IiwicHJlY2VkZW5jZSJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBTUE7OztlQUFxQkE7OzttRUFKTzsyQkFFMkI7Ozs7OztBQUV4QyxNQUFNQSw0QkFBNEJDLG1CQUFlO0lBQzlEQyxrQkFBa0I7UUFDaEIsTUFBTUMsV0FBV0MsNkJBQWtCLEVBQzdCQyxlQUFlLElBQUksQ0FBQ0MsaUJBQWlCLENBQUNIO1FBRTVDLE9BQU9FO0lBQ1Q7SUFFQUUsa0JBQWtCO1FBQ2hCLE1BQU1KLFdBQVdLLDZCQUFrQixFQUM3QkMsaUJBQWlCLElBQUksQ0FBQ0gsaUJBQWlCLENBQUNIO1FBRTlDLE9BQU9NO0lBQ1Q7SUFFQSxPQUFPQywyQ0FBMkNQLFFBQVEsRUFBRVEsVUFBVSxFQUFFQyxPQUFPLEVBQUVDLFVBQVUsRUFBRTtRQUFFLE9BQU9aLG1CQUFlLENBQUNTLDBDQUEwQyxDQUFDVixxQkFBcUJHLFVBQVVRLFlBQVlDLFNBQVNDO0lBQWE7QUFDcE8ifQ==