mlogjs 0.2.0 → 0.2.1

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 (202) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +68 -18
  3. package/build/Compiler.d.ts +18 -18
  4. package/build/Compiler.js +99 -119
  5. package/build/Compiler.js.map +1 -1
  6. package/build/Scope.d.ts +26 -26
  7. package/build/Scope.js +60 -60
  8. package/build/Scope.js.map +1 -1
  9. package/build/bin.d.ts +2 -2
  10. package/build/bin.js +60 -41
  11. package/build/bin.js.map +1 -1
  12. package/build/handlers/BlockStatement.d.ts +2 -2
  13. package/build/handlers/BlockStatement.js +13 -13
  14. package/build/handlers/CallExpression.d.ts +3 -3
  15. package/build/handlers/CallExpression.js +19 -19
  16. package/build/handlers/ForStatement.d.ts +2 -2
  17. package/build/handlers/ForStatement.js +31 -31
  18. package/build/handlers/Function.d.ts +4 -4
  19. package/build/handlers/Function.js +35 -35
  20. package/build/handlers/Identifier.d.ts +2 -2
  21. package/build/handlers/Identifier.js +7 -7
  22. package/build/handlers/IfStatement.d.ts +2 -2
  23. package/build/handlers/IfStatement.js +24 -24
  24. package/build/handlers/Literal.d.ts +2 -2
  25. package/build/handlers/Literal.js +17 -17
  26. package/build/handlers/Object.d.ts +4 -4
  27. package/build/handlers/Object.js +43 -43
  28. package/build/handlers/OperationExpressions.d.ts +7 -7
  29. package/build/handlers/OperationExpressions.js +32 -32
  30. package/build/handlers/Program.d.ts +2 -2
  31. package/build/handlers/Program.js +8 -8
  32. package/build/handlers/Program.js.map +1 -1
  33. package/build/handlers/Statements.d.ts +5 -5
  34. package/build/handlers/Statements.js +29 -29
  35. package/build/handlers/TemplateExpression.d.ts +2 -2
  36. package/build/handlers/TemplateExpression.js +17 -17
  37. package/build/handlers/VariableDeclaration.d.ts +3 -3
  38. package/build/handlers/VariableDeclaration.js +55 -55
  39. package/build/handlers/WhileStatement.d.ts +2 -2
  40. package/build/handlers/WhileStatement.js +22 -22
  41. package/build/handlers/index.d.ts +14 -14
  42. package/build/handlers/index.js +30 -30
  43. package/build/index.d.ts +1 -1
  44. package/build/index.js +7 -7
  45. package/build/initScope.d.ts +2 -0
  46. package/build/initScope.js +40 -0
  47. package/build/initScope.js.map +1 -0
  48. package/build/instructions/AddressResolver.d.ts +12 -12
  49. package/build/instructions/AddressResolver.js +30 -30
  50. package/build/instructions/ControlInstructions.d.ts +11 -11
  51. package/build/instructions/ControlInstructions.js +22 -22
  52. package/build/instructions/EndInstruction.d.ts +4 -4
  53. package/build/instructions/EndInstruction.js +10 -10
  54. package/build/instructions/InstructionBase.d.ts +10 -10
  55. package/build/instructions/InstructionBase.js +20 -20
  56. package/build/instructions/JumpInstruction.d.ts +15 -15
  57. package/build/instructions/JumpInstruction.js +21 -21
  58. package/build/instructions/OperationInstruction.d.ts +5 -5
  59. package/build/instructions/OperationInstruction.js +10 -10
  60. package/build/instructions/SetCounterInstruction.d.ts +5 -5
  61. package/build/instructions/SetCounterInstruction.js +10 -10
  62. package/build/instructions/SetInstruction.d.ts +5 -5
  63. package/build/instructions/SetInstruction.js +10 -10
  64. package/build/instructions/ZeroSpaceInstruction.d.ts +4 -4
  65. package/build/instructions/ZeroSpaceInstruction.js +10 -10
  66. package/build/instructions/index.d.ts +9 -9
  67. package/build/instructions/index.js +25 -25
  68. package/build/macros/Building.d.ts +11 -11
  69. package/build/macros/Building.js +80 -80
  70. package/build/macros/Function.d.ts +12 -12
  71. package/build/macros/Function.js +19 -19
  72. package/build/macros/Math.d.ts +5 -5
  73. package/build/macros/Math.js +56 -56
  74. package/build/macros/Math.js.map +1 -1
  75. package/build/macros/Memory.d.ts +5 -5
  76. package/build/macros/Memory.js +60 -60
  77. package/build/macros/Namespace.d.ts +21 -21
  78. package/build/macros/Namespace.js +97 -97
  79. package/build/macros/Other.d.ts +5 -5
  80. package/build/macros/Other.js +19 -19
  81. package/build/macros/RawValue.d.ts +5 -5
  82. package/build/macros/RawValue.js +15 -15
  83. package/build/macros/commands/{control.d.ts → Control.d.ts} +5 -5
  84. package/build/macros/commands/{control.js → Control.js} +24 -24
  85. package/build/macros/commands/{control.js.map → Control.js.map} +0 -0
  86. package/build/macros/commands/Draw.d.ts +5 -5
  87. package/build/macros/commands/Draw.js +38 -38
  88. package/build/macros/commands/DrawFlush.d.ts +5 -5
  89. package/build/macros/commands/DrawFlush.js +16 -16
  90. package/build/macros/commands/GetLink.d.ts +5 -5
  91. package/build/macros/commands/GetLink.js +20 -20
  92. package/build/macros/commands/Lookup.d.ts +5 -5
  93. package/build/macros/commands/Lookup.js +23 -23
  94. package/build/macros/commands/Print.d.ts +5 -5
  95. package/build/macros/commands/Print.js +13 -13
  96. package/build/macros/commands/PrintFlush.d.ts +5 -5
  97. package/build/macros/commands/PrintFlush.js +16 -16
  98. package/build/macros/commands/Radar.d.ts +7 -7
  99. package/build/macros/commands/Radar.js +60 -60
  100. package/build/macros/commands/Sensor.d.ts +5 -5
  101. package/build/macros/commands/Sensor.js +19 -19
  102. package/build/macros/commands/UnitBind.d.ts +5 -5
  103. package/build/macros/commands/UnitBind.js +16 -16
  104. package/build/macros/commands/UnitControl.d.ts +5 -5
  105. package/build/macros/commands/UnitControl.js +67 -67
  106. package/build/macros/commands/UnitLocate.d.ts +5 -5
  107. package/build/macros/commands/UnitLocate.js +54 -54
  108. package/build/macros/commands/UnitRadar.d.ts +5 -5
  109. package/build/macros/commands/UnitRadar.js +40 -40
  110. package/build/macros/commands/Wait.d.ts +5 -5
  111. package/build/macros/commands/Wait.js +17 -17
  112. package/build/macros/commands/index.d.ts +14 -14
  113. package/build/macros/commands/index.js +32 -32
  114. package/build/macros/index.d.ts +7 -7
  115. package/build/macros/index.js +39 -39
  116. package/build/operators.d.ts +25 -25
  117. package/build/operators.js +101 -101
  118. package/build/types.d.ts +49 -49
  119. package/build/types.js +27 -27
  120. package/build/utils.d.ts +3 -3
  121. package/build/utils.js +12 -12
  122. package/build/values/BaseValue.d.ts +5 -5
  123. package/build/values/BaseValue.js +111 -111
  124. package/build/values/FunctionValue.d.ts +34 -34
  125. package/build/values/FunctionValue.js +103 -103
  126. package/build/values/LiteralValue.d.ts +12 -12
  127. package/build/values/LiteralValue.js +87 -87
  128. package/build/values/LiteralValue.js.map +1 -1
  129. package/build/values/ObjectValue.d.ts +17 -17
  130. package/build/values/ObjectValue.js +49 -49
  131. package/build/values/StoreValue.d.ts +11 -11
  132. package/build/values/StoreValue.js +30 -30
  133. package/build/values/TempValue.d.ts +12 -12
  134. package/build/values/TempValue.js +66 -66
  135. package/build/values/TempValue.js.map +1 -1
  136. package/build/values/VoidValue.d.ts +11 -11
  137. package/build/values/VoidValue.js +30 -30
  138. package/build/values/index.d.ts +6 -6
  139. package/build/values/index.js +22 -22
  140. package/dist/mlogjs.es.js +6366 -0
  141. package/dist/mlogjs.umd.js +8 -0
  142. package/lib/commands.d.ts +326 -326
  143. package/lib/eslib/index.d.ts +3 -3
  144. package/lib/eslib/lib.d.ts +9 -9
  145. package/lib/eslib/lib.es2015.collection.d.ts +89 -89
  146. package/lib/eslib/lib.es2015.core.d.ts +16 -16
  147. package/lib/eslib/lib.es2015.d.ts +30 -30
  148. package/lib/eslib/lib.es2015.generator.d.ts +79 -79
  149. package/lib/eslib/lib.es2015.iterable.d.ts +70 -70
  150. package/lib/eslib/lib.es5.d.ts +295 -295
  151. package/lib/eslib/lib.es6.d.ts +18 -18
  152. package/lib/globals.d.ts +328 -328
  153. package/lib/helpers.d.ts +23 -23
  154. package/lib/index.d.ts +7 -7
  155. package/lib/kinds.d.ts +36 -36
  156. package/lib/memory.d.ts +17 -17
  157. package/lib/traits.d.ts +121 -121
  158. package/lib/util.d.ts +32 -32
  159. package/package.json +73 -48
  160. package/build/macros/Blocks.d.ts +0 -5
  161. package/build/macros/Blocks.js +0 -143
  162. package/build/macros/Blocks.js.map +0 -1
  163. package/build/macros/Draw.d.ts +0 -5
  164. package/build/macros/Draw.js +0 -39
  165. package/build/macros/Draw.js.map +0 -1
  166. package/build/macros/Items.d.ts +0 -5
  167. package/build/macros/Items.js +0 -20
  168. package/build/macros/Items.js.map +0 -1
  169. package/build/macros/Liquids.d.ts +0 -5
  170. package/build/macros/Liquids.js +0 -18
  171. package/build/macros/Liquids.js.map +0 -1
  172. package/build/macros/Symbol.d.ts +0 -0
  173. package/build/macros/Symbol.js +0 -1
  174. package/build/macros/Symbol.js.map +0 -1
  175. package/build/macros/SymbolNamespace.d.ts +0 -0
  176. package/build/macros/SymbolNamespace.js +0 -1
  177. package/build/macros/SymbolNamespace.js.map +0 -1
  178. package/build/macros/TypeFactory.d.ts +0 -8
  179. package/build/macros/TypeFactory.js +0 -22
  180. package/build/macros/TypeFactory.js.map +0 -1
  181. package/build/macros/Units.d.ts +0 -5
  182. package/build/macros/Units.js +0 -18
  183. package/build/macros/Units.js.map +0 -1
  184. package/build/macros/Vars.d.ts +0 -5
  185. package/build/macros/Vars.js +0 -18
  186. package/build/macros/Vars.js.map +0 -1
  187. package/build/macros/commands/Asm.d.ts +0 -5
  188. package/build/macros/commands/Asm.js +0 -21
  189. package/build/macros/commands/Asm.js.map +0 -1
  190. package/build/macros/commands/io.d.ts +0 -8
  191. package/build/macros/commands/io.js +0 -47
  192. package/build/macros/commands/io.js.map +0 -1
  193. package/build/macros/helpers/GetBuilding.d.ts +0 -5
  194. package/build/macros/helpers/GetBuilding.js +0 -16
  195. package/build/macros/helpers/GetBuilding.js.map +0 -1
  196. package/build/macros/helpers/GetVar.d.ts +0 -5
  197. package/build/macros/helpers/GetVar.js +0 -16
  198. package/build/macros/helpers/GetVar.js.map +0 -1
  199. package/build/macros/helpers/index.d.ts +0 -2
  200. package/build/macros/helpers/index.js +0 -15
  201. package/build/macros/helpers/index.js.map +0 -1
  202. package/dist/bundle.js +0 -1
@@ -1,143 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BlockBuilder = void 0;
4
- const instructions_1 = require("../instructions");
5
- const values_1 = require("../values");
6
- const Function_1 = require("./Function");
7
- class Block extends values_1.ObjectValue {
8
- constructor(scope, name) {
9
- super(scope, {
10
- $get: new Function_1.MacroFunction(scope, (prop) => {
11
- let obj;
12
- if (prop instanceof values_1.LiteralValue && typeof prop.data === "string") {
13
- obj = new values_1.ObjectValue(scope, {
14
- $eval: new Function_1.MacroFunction(scope, () => {
15
- return this.get(scope, new values_1.LiteralValue(scope, "sensor"))[0].call(scope, [prop]);
16
- }),
17
- "$=": new Function_1.MacroFunction(scope, (value) => {
18
- return this.get(scope, new values_1.LiteralValue(scope, "control"))[0].call(scope, [prop, value]);
19
- }),
20
- });
21
- }
22
- else {
23
- obj = new values_1.ObjectValue(scope, {
24
- $eval: new Function_1.MacroFunction(scope, () => {
25
- return this.get(scope, new values_1.LiteralValue(scope, "read"))[0].call(scope, [prop]);
26
- }),
27
- "$=": new Function_1.MacroFunction(scope, (value) => {
28
- return this.get(scope, new values_1.LiteralValue(scope, "write"))[0].call(scope, [prop, value]);
29
- }),
30
- });
31
- }
32
- return [obj, []];
33
- }),
34
- puts: new Function_1.MacroFunction(scope, (...args) => {
35
- return [
36
- null,
37
- [
38
- ...args.map(arg => new instructions_1.InstructionBase("print", arg)),
39
- new instructions_1.InstructionBase("printflush", name),
40
- ],
41
- ];
42
- }),
43
- printFlush: new Function_1.MacroFunction(scope, () => {
44
- return [null, [new instructions_1.InstructionBase("printflush", name)]];
45
- }),
46
- drawFlush: new Function_1.MacroFunction(scope, () => {
47
- return [null, [new instructions_1.InstructionBase("drawflush", name)]];
48
- }),
49
- read: new Function_1.MacroFunction(scope, (i) => {
50
- if (!(i instanceof values_1.LiteralValue || i instanceof values_1.StoreValue))
51
- throw new Error("Cannot read at non-literal or non-store index.");
52
- const temp = new values_1.TempValue(scope);
53
- return [temp, [new instructions_1.InstructionBase("read", temp, name, i)]];
54
- }),
55
- write: new Function_1.MacroFunction(scope, (i, value) => {
56
- if (!(i instanceof values_1.LiteralValue || i instanceof values_1.StoreValue))
57
- throw new Error("Cannot write at non-literal or non-store index.");
58
- if (!(value instanceof values_1.LiteralValue || value instanceof values_1.StoreValue))
59
- throw new Error("Cannot write a non-literal or non-store value.");
60
- return [value, [new instructions_1.InstructionBase("write", value, name, i)]];
61
- }),
62
- // sensor result block1 @copper
63
- sensor: new Function_1.MacroFunction(scope, (attr) => {
64
- if (!(attr instanceof values_1.LiteralValue))
65
- throw new Error("Cannot use sensor with non-literal attribute.");
66
- if (typeof attr.data !== "string")
67
- throw new Error("Cannot use sensor with non-string attribute.");
68
- if (attr.data[0] === "@")
69
- throw new Error("The use of '@' is unnecessary beucase it is already done for you.");
70
- const temp = new values_1.TempValue(scope);
71
- return [
72
- temp,
73
- [new instructions_1.InstructionBase("sensor", temp, name, "@" + attr.data)],
74
- ];
75
- }),
76
- //control enabled block1 0 0 0 0
77
- control: new Function_1.MacroFunction(scope, (attr, ...args) => {
78
- if (!(attr instanceof values_1.LiteralValue))
79
- throw new Error("Cannot use control with non-literal attribute.");
80
- if (["enabled", "shoot", "shootp", "configure", "color"].indexOf(attr.data) === -1)
81
- throw new Error("Control attribute must be valid.");
82
- for (const arg of args)
83
- if (!(arg instanceof values_1.LiteralValue || arg instanceof values_1.StoreValue))
84
- throw new Error("Arguments cannot be non-literal or non-store value.");
85
- return [
86
- null,
87
- [new instructions_1.InstructionBase("control", attr.data, name, ...args)],
88
- ];
89
- }),
90
- // radar enemy any any distance turret1 1 result
91
- radar: new Function_1.MacroFunction(scope, (target0, target1, target2, sort, order) => {
92
- const targets = [target0, target1, target2];
93
- for (const target of targets) {
94
- if (!(target instanceof values_1.LiteralValue))
95
- throw new Error("Radar targets cannot be non-literal.");
96
- if ([
97
- "any",
98
- "enemy",
99
- "ally",
100
- "player",
101
- "attacker",
102
- "flying",
103
- "boss",
104
- "ground",
105
- ].indexOf(target.data) === -1)
106
- throw new Error("Radar target must be valid.");
107
- }
108
- if (!(sort instanceof values_1.LiteralValue))
109
- throw new Error("Radar sort cannot be non-literal.");
110
- if (["distance", "health", "shield", "armor", "maxHealth"].indexOf(sort.data) === -1)
111
- throw new Error("Radar sort must be valid");
112
- if (!(order instanceof values_1.LiteralValue || order instanceof values_1.StoreValue))
113
- throw new Error("Arguments cannot be non-literal or non-store value.");
114
- const temp = new values_1.TempValue(scope);
115
- return [
116
- temp,
117
- [
118
- new instructions_1.InstructionBase("radar", ...targets.map(v => v.data), sort.data, name, order, temp),
119
- ],
120
- ];
121
- }),
122
- });
123
- this.name = name;
124
- }
125
- toString() {
126
- return this.name;
127
- }
128
- }
129
- class BlockBuilder extends values_1.ObjectValue {
130
- constructor(scope) {
131
- super(scope, {
132
- $call: new Function_1.MacroFunction(scope, (nameLit) => {
133
- if (!(nameLit instanceof values_1.LiteralValue))
134
- throw new Error("Block name must be a literal.");
135
- if (typeof nameLit.data !== "string")
136
- throw new Error("Block name must be a string.");
137
- return [new Block(scope, nameLit.data), []];
138
- }),
139
- });
140
- }
141
- }
142
- exports.BlockBuilder = BlockBuilder;
143
- //# sourceMappingURL=Blocks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Blocks.js","sourceRoot":"","sources":["../../src/macros/Blocks.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import { IScope } from "../types";
2
- import { MacroFunction } from "./Function";
3
- export declare class Draw extends MacroFunction {
4
- constructor(scope: IScope);
5
- }
@@ -1,39 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Draw = void 0;
4
- const instructions_1 = require("../instructions");
5
- const values_1 = require("../values");
6
- const Function_1 = require("./Function");
7
- class Draw extends Function_1.MacroFunction {
8
- constructor(scope) {
9
- super(scope, (kind, ...args) => {
10
- if (!(kind instanceof values_1.LiteralValue))
11
- throw new Error("Draw kind must be literal.");
12
- if ([
13
- "clear",
14
- "color",
15
- "stroke",
16
- "line",
17
- "rect",
18
- "lineRect",
19
- "poly",
20
- "linePoly",
21
- "triangle",
22
- "image",
23
- ].indexOf(kind.data) === -1)
24
- throw new Error("Draw kind must be valid");
25
- return [
26
- null,
27
- [
28
- new instructions_1.InstructionBase("draw", kind.data, ...args.map(v => {
29
- if (v instanceof values_1.LiteralValue && typeof v.data === "string")
30
- return v.data;
31
- return v;
32
- })),
33
- ],
34
- ];
35
- });
36
- }
37
- }
38
- exports.Draw = Draw;
39
- //# sourceMappingURL=Draw.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Draw.js","sourceRoot":"","sources":["../../src/macros/Draw.ts"],"names":[],"mappings":";;;AAAA,kDAAkD;AAElD,sCAAyC;AACzC,yCAA2C;AAE3C,MAAa,IAAK,SAAQ,wBAAa;IACrC,YAAY,KAAa;QACvB,KAAK,CAAC,KAAK,EAAE,CAAC,IAAY,EAAE,GAAG,IAAc,EAAE,EAAE;YAC/C,IAAI,CAAC,CAAC,IAAI,YAAY,qBAAY,CAAC;gBACjC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAChD,IACE;gBACE,OAAO;gBACP,OAAO;gBACP,QAAQ;gBACR,MAAM;gBACN,MAAM;gBACN,UAAU;gBACV,MAAM;gBACN,UAAU;gBACV,UAAU;gBACV,OAAO;aACR,CAAC,OAAO,CAAC,IAAI,CAAC,IAAc,CAAC,KAAK,CAAC,CAAC;gBAErC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAC7C,OAAO;gBACL,IAAI;gBACJ;oBACE,IAAI,8BAAe,CACjB,MAAM,EACN,IAAI,CAAC,IAAc,EACnB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;wBACd,IAAI,CAAC,YAAY,qBAAY,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ;4BACzD,OAAO,CAAC,CAAC,IAAI,CAAC;wBAChB,OAAO,CAAC,CAAC;oBACX,CAAC,CAAC,CACH;iBACF;aACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AApCD,oBAoCC"}
@@ -1,5 +0,0 @@
1
- import { IScope } from "../types";
2
- import { ObjectValue } from "../values";
3
- export declare class ItemsMacro extends ObjectValue {
4
- constructor(scope: IScope);
5
- }
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ItemsMacro = void 0;
4
- const _1 = require(".");
5
- const values_1 = require("../values");
6
- class ItemsMacro extends values_1.ObjectValue {
7
- constructor(scope) {
8
- super(scope, {
9
- $get: new _1.MacroFunction(scope, prop => {
10
- var _a;
11
- if (!(prop instanceof values_1.LiteralValue) || typeof prop.data !== "string")
12
- throw new Error("Cannot use dynamic properties on object macros");
13
- const itemName = (_a = specialNameMap[prop.data]) !== null && _a !== void 0 ? _a : prop.data;
14
- return [new values_1.StoreValue(scope, `@${itemName}`), []];
15
- }),
16
- });
17
- }
18
- }
19
- exports.ItemsMacro = ItemsMacro;
20
- //# sourceMappingURL=Items.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Items.js","sourceRoot":"","sources":["../../src/macros/Items.ts"],"names":[],"mappings":";;;AAAA,wBAAkC;AAElC,sCAAkE;AAElE,MAAa,UAAW,SAAQ,oBAAW;IACzC,YAAY,KAAa;QACvB,KAAK,CAAC,KAAK,EAAE;YACX,IAAI,EAAE,IAAI,gBAAa,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE;;gBACpC,IAAI,CAAC,CAAC,IAAI,YAAY,qBAAY,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;oBAClE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;gBACpE,MAAM,QAAQ,GAAG,MAAA,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,mCAAI,IAAI,CAAC,IAAI,CAAC;gBACxD,OAAO,CAAC,IAAI,mBAAU,CAAC,KAAK,EAAE,IAAI,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACrD,CAAC,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF;AAXD,gCAWC"}
@@ -1,5 +0,0 @@
1
- import { IScope } from "../types";
2
- import { ObjectValue } from "../values";
3
- export declare class LiquidsMacro extends ObjectValue {
4
- constructor(scope: IScope);
5
- }
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LiquidsMacro = void 0;
4
- const _1 = require(".");
5
- const values_1 = require("../values");
6
- class LiquidsMacro extends values_1.ObjectValue {
7
- constructor(scope) {
8
- super(scope, {
9
- $get: new _1.MacroFunction(scope, prop => {
10
- if (!(prop instanceof values_1.LiteralValue) || typeof prop.data !== "string")
11
- throw new Error("Cannot use dynamic properties on object macros");
12
- return [new values_1.StoreValue(scope, `@${prop.data}`), []];
13
- }),
14
- });
15
- }
16
- }
17
- exports.LiquidsMacro = LiquidsMacro;
18
- //# sourceMappingURL=Liquids.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Liquids.js","sourceRoot":"","sources":["../../src/macros/Liquids.ts"],"names":[],"mappings":";;;AAAA,wBAAkC;AAElC,sCAAkE;AAElE,MAAa,YAAa,SAAQ,oBAAW;IAC3C,YAAY,KAAa;QACvB,KAAK,CAAC,KAAK,EAAE;YACX,IAAI,EAAE,IAAI,gBAAa,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE;gBACpC,IAAI,CAAC,CAAC,IAAI,YAAY,qBAAY,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;oBAClE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;gBACpE,OAAO,CAAC,IAAI,mBAAU,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACtD,CAAC,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF;AAVD,oCAUC"}
File without changes
@@ -1 +0,0 @@
1
- //# sourceMappingURL=Symbol.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Symbol.js","sourceRoot":"","sources":["../../src/macros/Symbol.ts"],"names":[],"mappings":""}
File without changes
@@ -1 +0,0 @@
1
- //# sourceMappingURL=SymbolNamespace.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SymbolNamespace.js","sourceRoot":"","sources":["../../src/macros/SymbolNamespace.ts"],"names":[],"mappings":""}
@@ -1,8 +0,0 @@
1
- import { IScope } from "../types";
2
- import { MacroFunction } from "./Function";
3
- export declare class StoreFactory extends MacroFunction {
4
- constructor(scope: IScope);
5
- }
6
- export declare class TempFactory extends MacroFunction {
7
- constructor(scope: IScope);
8
- }
@@ -1,22 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TempFactory = exports.StoreFactory = void 0;
4
- const values_1 = require("../values");
5
- const Function_1 = require("./Function");
6
- class StoreFactory extends Function_1.MacroFunction {
7
- constructor(scope) {
8
- super(scope, (value) => {
9
- if (value instanceof values_1.LiteralValue && typeof value.data === "string")
10
- return [new values_1.StoreValue(scope, value.data), []];
11
- throw new Error("Cannot create store value with name that is not a literal string");
12
- });
13
- }
14
- }
15
- exports.StoreFactory = StoreFactory;
16
- class TempFactory extends Function_1.MacroFunction {
17
- constructor(scope) {
18
- super(scope, () => [new values_1.TempValue(scope), []]);
19
- }
20
- }
21
- exports.TempFactory = TempFactory;
22
- //# sourceMappingURL=TypeFactory.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TypeFactory.js","sourceRoot":"","sources":["../../src/macros/TypeFactory.ts"],"names":[],"mappings":";;;AACA,sCAAgE;AAChE,yCAA2C;AAE3C,MAAa,YAAa,SAAQ,wBAAa;IAC7C,YAAY,KAAa;QACvB,KAAK,CAAC,KAAK,EAAE,CAAC,KAAa,EAAE,EAAE;YAC7B,IAAI,KAAK,YAAY,qBAAY,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;gBACjE,OAAO,CAAC,IAAI,mBAAU,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YACjD,MAAM,IAAI,KAAK,CACb,kEAAkE,CACnE,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAVD,oCAUC;AAED,MAAa,WAAY,SAAQ,wBAAa;IAC5C,YAAY,KAAa;QACvB,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,kBAAS,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACjD,CAAC;CACF;AAJD,kCAIC"}
@@ -1,5 +0,0 @@
1
- import { IScope } from "../types";
2
- import { ObjectValue } from "../values";
3
- export declare class UnitsMacro extends ObjectValue {
4
- constructor(scope: IScope);
5
- }
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UnitsMacro = void 0;
4
- const _1 = require(".");
5
- const values_1 = require("../values");
6
- class UnitsMacro extends values_1.ObjectValue {
7
- constructor(scope) {
8
- super(scope, {
9
- $get: new _1.MacroFunction(scope, prop => {
10
- if (!(prop instanceof values_1.LiteralValue) || typeof prop.data !== "string")
11
- throw new Error("Cannot use dynamic properties on object macros");
12
- return [new values_1.StoreValue(scope, `@${prop.data}`), []];
13
- }),
14
- });
15
- }
16
- }
17
- exports.UnitsMacro = UnitsMacro;
18
- //# sourceMappingURL=Units.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Units.js","sourceRoot":"","sources":["../../src/macros/Units.ts"],"names":[],"mappings":";;;AAAA,wBAAkC;AAElC,sCAAkE;AAElE,MAAa,UAAW,SAAQ,oBAAW;IACzC,YAAY,KAAa;QACvB,KAAK,CAAC,KAAK,EAAE;YACX,IAAI,EAAE,IAAI,gBAAa,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE;gBACpC,IAAI,CAAC,CAAC,IAAI,YAAY,qBAAY,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;oBAClE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;gBACpE,OAAO,CAAC,IAAI,mBAAU,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACtD,CAAC,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF;AAVD,gCAUC"}
@@ -1,5 +0,0 @@
1
- import { IScope } from "../types";
2
- import { ObjectValue } from "../values";
3
- export declare class VarsMacro extends ObjectValue {
4
- constructor(scope: IScope);
5
- }
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.VarsMacro = void 0;
4
- const _1 = require(".");
5
- const values_1 = require("../values");
6
- class VarsMacro extends values_1.ObjectValue {
7
- constructor(scope) {
8
- super(scope, {
9
- $get: new _1.MacroFunction(scope, prop => {
10
- if (!(prop instanceof values_1.LiteralValue) || typeof prop.data !== "string")
11
- throw new Error("Cannot use dynamic properties on object macros");
12
- return [new values_1.StoreValue(scope, `@${prop.data}`), []];
13
- }),
14
- });
15
- }
16
- }
17
- exports.VarsMacro = VarsMacro;
18
- //# sourceMappingURL=Vars.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Vars.js","sourceRoot":"","sources":["../../src/macros/Vars.ts"],"names":[],"mappings":";;;AAAA,wBAAkC;AAElC,sCAAkE;AAElE,MAAa,SAAU,SAAQ,oBAAW;IACxC,YAAY,KAAa;QACvB,KAAK,CAAC,KAAK,EAAE;YACX,IAAI,EAAE,IAAI,gBAAa,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE;gBACpC,IAAI,CAAC,CAAC,IAAI,YAAY,qBAAY,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;oBAClE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;gBACpE,OAAO,CAAC,IAAI,mBAAU,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACtD,CAAC,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF;AAVD,8BAUC"}
@@ -1,5 +0,0 @@
1
- import { MacroFunction } from "..";
2
- import { IScope } from "../../types";
3
- export declare class Asm extends MacroFunction {
4
- constructor(scope: IScope);
5
- }
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Asm = void 0;
4
- const instructions_1 = require("../../instructions");
5
- const __1 = require("..");
6
- const values_1 = require("../../values");
7
- class Asm extends __1.MacroFunction {
8
- constructor(scope) {
9
- super(scope, (code) => {
10
- console.log(code);
11
- throw new Error("unfinished");
12
- if (!(code instanceof values_1.StoreValue) &&
13
- (!(code instanceof values_1.LiteralValue) || typeof code.data !== "number"))
14
- throw new Error("The getlink index must be a number literal or a store");
15
- const temp = new values_1.TempValue(scope);
16
- return [temp, [new instructions_1.InstructionBase("getlink", temp, code)]];
17
- });
18
- }
19
- }
20
- exports.Asm = Asm;
21
- //# sourceMappingURL=Asm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Asm.js","sourceRoot":"","sources":["../../../src/macros/commands/Asm.ts"],"names":[],"mappings":";;;AAAA,qDAAqD;AACrD,0BAAmC;AAEnC,yCAAmE;AAEnE,MAAa,GAAI,SAAQ,iBAAa;IACpC,YAAY,KAAa;QACvB,KAAK,CAAC,KAAK,EAAE,CAAC,IAAY,EAAE,EAAE;YAC5B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;YAC9B,IACE,CAAC,CAAC,IAAI,YAAY,mBAAU,CAAC;gBAC7B,CAAC,CAAC,CAAC,IAAI,YAAY,qBAAY,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;gBAElE,MAAM,IAAI,KAAK,CACb,uDAAuD,CACxD,CAAC;YACJ,MAAM,IAAI,GAAG,IAAI,kBAAS,CAAC,KAAK,CAAC,CAAC;YAClC,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,8BAAe,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9D,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAhBD,kBAgBC"}
@@ -1,8 +0,0 @@
1
- import { IScope } from "../../types";
2
- import { MacroFunction } from "../Function";
3
- export declare class Draw extends MacroFunction {
4
- constructor(scope: IScope);
5
- }
6
- export declare class Print extends MacroFunction {
7
- constructor(scope: IScope);
8
- }
@@ -1,47 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Print = exports.Draw = void 0;
4
- const instructions_1 = require("../../instructions");
5
- const values_1 = require("../../values");
6
- const Function_1 = require("../Function");
7
- class Draw extends Function_1.MacroFunction {
8
- constructor(scope) {
9
- super(scope, (kind, ...args) => {
10
- if (!(kind instanceof values_1.LiteralValue))
11
- throw new Error("Draw kind must be literal.");
12
- if ([
13
- "clear",
14
- "color",
15
- "stroke",
16
- "line",
17
- "rect",
18
- "lineRect",
19
- "poly",
20
- "linePoly",
21
- "triangle",
22
- "image",
23
- ].indexOf(kind.data) === -1)
24
- throw new Error("Draw kind must be valid");
25
- return [
26
- null,
27
- [
28
- new instructions_1.InstructionBase("draw", kind.data, ...args.map(v => {
29
- if (v instanceof values_1.LiteralValue && typeof v.data === "string")
30
- return v.data;
31
- return v;
32
- })),
33
- ],
34
- ];
35
- });
36
- }
37
- }
38
- exports.Draw = Draw;
39
- class Print extends Function_1.MacroFunction {
40
- constructor(scope) {
41
- super(scope, (...values) => {
42
- return [null, [new instructions_1.InstructionBase("print", ...values)]];
43
- });
44
- }
45
- }
46
- exports.Print = Print;
47
- //# sourceMappingURL=io.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"io.js","sourceRoot":"","sources":["../../../src/macros/commands/io.ts"],"names":[],"mappings":";;;AAAA,qDAAqD;AAErD,yCAA4C;AAC5C,0CAA4C;AAE5C,MAAa,IAAK,SAAQ,wBAAa;IACrC,YAAY,KAAa;QACvB,KAAK,CAAC,KAAK,EAAE,CAAC,IAAY,EAAE,GAAG,IAAc,EAAE,EAAE;YAC/C,IAAI,CAAC,CAAC,IAAI,YAAY,qBAAY,CAAC;gBACjC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAChD,IACE;gBACE,OAAO;gBACP,OAAO;gBACP,QAAQ;gBACR,MAAM;gBACN,MAAM;gBACN,UAAU;gBACV,MAAM;gBACN,UAAU;gBACV,UAAU;gBACV,OAAO;aACR,CAAC,OAAO,CAAC,IAAI,CAAC,IAAc,CAAC,KAAK,CAAC,CAAC;gBAErC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAC7C,OAAO;gBACL,IAAI;gBACJ;oBACE,IAAI,8BAAe,CACjB,MAAM,EACN,IAAI,CAAC,IAAc,EACnB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;wBACd,IAAI,CAAC,YAAY,qBAAY,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ;4BACzD,OAAO,CAAC,CAAC,IAAI,CAAC;wBAChB,OAAO,CAAC,CAAC;oBACX,CAAC,CAAC,CACH;iBACF;aACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AApCD,oBAoCC;AAED,MAAa,KAAM,SAAQ,wBAAa;IACtC,YAAY,KAAa;QACvB,KAAK,CAAC,KAAK,EAAE,CAAC,GAAG,MAAgB,EAAE,EAAE;YACnC,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,8BAAe,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAND,sBAMC"}
@@ -1,5 +0,0 @@
1
- import { IScope } from "../../types";
2
- import { MacroFunction } from "../Function";
3
- export declare class GetBuilding extends MacroFunction {
4
- constructor(scope: IScope);
5
- }
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GetBuilding = void 0;
4
- const values_1 = require("../../values");
5
- const Function_1 = require("../Function");
6
- class GetBuilding extends Function_1.MacroFunction {
7
- constructor(scope) {
8
- super(scope, (name) => {
9
- if (!(name instanceof values_1.LiteralValue) || typeof name.data !== "string")
10
- throw new Error("The name of the building must be a string literal.");
11
- return [new values_1.StoreValue(scope, name.data), []];
12
- });
13
- }
14
- }
15
- exports.GetBuilding = GetBuilding;
16
- //# sourceMappingURL=GetBuilding.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GetBuilding.js","sourceRoot":"","sources":["../../../src/macros/helpers/GetBuilding.ts"],"names":[],"mappings":";;;AAEA,yCAAwD;AACxD,0CAA4C;AAE5C,MAAa,WAAY,SAAQ,wBAAa;IAC5C,YAAY,KAAa;QACvB,KAAK,CAAC,KAAK,EAAE,CAAC,IAAY,EAAE,EAAE;YAC5B,IAAI,CAAC,CAAC,IAAI,YAAY,qBAAY,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;gBAClE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;YAExE,OAAO,CAAC,IAAI,mBAAU,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AATD,kCASC"}
@@ -1,5 +0,0 @@
1
- import { IScope } from "../../types";
2
- import { MacroFunction } from "../Function";
3
- export declare class GetVar extends MacroFunction {
4
- constructor(scope: IScope);
5
- }
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GetVar = void 0;
4
- const values_1 = require("../../values");
5
- const Function_1 = require("../Function");
6
- class GetVar extends Function_1.MacroFunction {
7
- constructor(scope) {
8
- super(scope, (name) => {
9
- if (!(name instanceof values_1.LiteralValue) || typeof name.data !== "string")
10
- throw new Error("The name of the variable must be a string literal.");
11
- return [new values_1.StoreValue(scope, name.data), []];
12
- });
13
- }
14
- }
15
- exports.GetVar = GetVar;
16
- //# sourceMappingURL=GetVar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GetVar.js","sourceRoot":"","sources":["../../../src/macros/helpers/GetVar.ts"],"names":[],"mappings":";;;AAEA,yCAAwD;AACxD,0CAA4C;AAE5C,MAAa,MAAO,SAAQ,wBAAa;IACvC,YAAY,KAAa;QACvB,KAAK,CAAC,KAAK,EAAE,CAAC,IAAY,EAAE,EAAE;YAC5B,IAAI,CAAC,CAAC,IAAI,YAAY,qBAAY,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;gBAClE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;YAExE,OAAO,CAAC,IAAI,mBAAU,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AATD,wBASC"}
@@ -1,2 +0,0 @@
1
- export * from "./GetBuilding";
2
- export * from "./GetVar";
@@ -1,15 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
- };
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- __exportStar(require("./GetBuilding"), exports);
14
- __exportStar(require("./GetVar"), exports);
15
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/macros/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gDAA8B;AAC9B,2CAAyB"}