@dseict/psc-interpreter 0.0.2 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,39 +1,39 @@
1
1
  import { ParseTreeVisitor } from 'antlr4';
2
- import { ProgramContext } from "./PSCParser.js";
3
- import { AddOpContext } from "./PSCParser.js";
4
- import { MulOpContext } from "./PSCParser.js";
5
- import { ExpOpContext } from "./PSCParser.js";
6
- import { CompOpContext } from "./PSCParser.js";
7
- import { ExprContext } from "./PSCParser.js";
8
- import { OrExprContext } from "./PSCParser.js";
9
- import { AndExprContext } from "./PSCParser.js";
10
- import { CompExprContext } from "./PSCParser.js";
11
- import { AddExprContext } from "./PSCParser.js";
12
- import { MulExprContext } from "./PSCParser.js";
13
- import { ExpExprContext } from "./PSCParser.js";
14
- import { UnaryExprContext } from "./PSCParser.js";
15
- import { NotExprContext } from "./PSCParser.js";
16
- import { PrimaryExprContext } from "./PSCParser.js";
17
- import { GroupExprContext } from "./PSCParser.js";
18
- import { AtomContext } from "./PSCParser.js";
19
- import { LitsContext } from "./PSCParser.js";
20
- import { IntLitsContext } from "./PSCParser.js";
21
- import { FloatLitsContext } from "./PSCParser.js";
22
- import { ArrayLitsContext } from "./PSCParser.js";
23
- import { StmtsContext } from "./PSCParser.js";
24
- import { StmtContext } from "./PSCParser.js";
25
- import { BlockContext } from "./PSCParser.js";
26
- import { IfStmtContext } from "./PSCParser.js";
27
- import { WhileStmtContext } from "./PSCParser.js";
28
- import { DoWhileStmtContext } from "./PSCParser.js";
29
- import { RepeatUntilStmtContext } from "./PSCParser.js";
30
- import { ForStmtContext } from "./PSCParser.js";
31
- import { AsmStmtContext } from "./PSCParser.js";
32
- import { LvalueContext } from "./PSCParser.js";
33
- import { InputStmtContext } from "./PSCParser.js";
34
- import { OutputStmtContext } from "./PSCParser.js";
35
- import { SubprogramContext } from "./PSCParser.js";
36
- import { ReturnStmtContext } from "./PSCParser.js";
2
+ import { ProgramContext } from "./PSCParser";
3
+ import { AddOpContext } from "./PSCParser";
4
+ import { MulOpContext } from "./PSCParser";
5
+ import { ExpOpContext } from "./PSCParser";
6
+ import { CompOpContext } from "./PSCParser";
7
+ import { ExprContext } from "./PSCParser";
8
+ import { OrExprContext } from "./PSCParser";
9
+ import { AndExprContext } from "./PSCParser";
10
+ import { CompExprContext } from "./PSCParser";
11
+ import { AddExprContext } from "./PSCParser";
12
+ import { MulExprContext } from "./PSCParser";
13
+ import { ExpExprContext } from "./PSCParser";
14
+ import { UnaryExprContext } from "./PSCParser";
15
+ import { NotExprContext } from "./PSCParser";
16
+ import { PrimaryExprContext } from "./PSCParser";
17
+ import { GroupExprContext } from "./PSCParser";
18
+ import { AtomContext } from "./PSCParser";
19
+ import { LitsContext } from "./PSCParser";
20
+ import { IntLitsContext } from "./PSCParser";
21
+ import { FloatLitsContext } from "./PSCParser";
22
+ import { ArrayLitsContext } from "./PSCParser";
23
+ import { StmtsContext } from "./PSCParser";
24
+ import { StmtContext } from "./PSCParser";
25
+ import { BlockContext } from "./PSCParser";
26
+ import { IfStmtContext } from "./PSCParser";
27
+ import { WhileStmtContext } from "./PSCParser";
28
+ import { DoWhileStmtContext } from "./PSCParser";
29
+ import { RepeatUntilStmtContext } from "./PSCParser";
30
+ import { ForStmtContext } from "./PSCParser";
31
+ import { AsmStmtContext } from "./PSCParser";
32
+ import { LvalueContext } from "./PSCParser";
33
+ import { InputStmtContext } from "./PSCParser";
34
+ import { OutputStmtContext } from "./PSCParser";
35
+ import { SubprogramContext } from "./PSCParser";
36
+ import { ReturnStmtContext } from "./PSCParser";
37
37
  /**
38
38
  * This interface defines a complete generic visitor for a parse tree produced
39
39
  * by `PSCParser`.
@@ -1 +1 @@
1
- {"version":3,"file":"PSCParserVisitor.d.ts","sourceRoot":"","sources":["../../src/_antlr/PSCParserVisitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PSCParserVisitor.d.ts","sourceRoot":"","sources":["../../src/_antlr/PSCParserVisitor.ts"],"names":[],"mappings":"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"}
@@ -1,40 +1,40 @@
1
- // Generated from ./PSCParser.g4 by ANTLR 4.13.2
1
+ // Generated from ./PSCParser.g4 by ANTLR 4.13.0
2
2
  import { ParseTreeVisitor } from 'antlr4';
3
- import { ProgramContext } from "./PSCParser.js";
4
- import { AddOpContext } from "./PSCParser.js";
5
- import { MulOpContext } from "./PSCParser.js";
6
- import { ExpOpContext } from "./PSCParser.js";
7
- import { CompOpContext } from "./PSCParser.js";
8
- import { ExprContext } from "./PSCParser.js";
9
- import { OrExprContext } from "./PSCParser.js";
10
- import { AndExprContext } from "./PSCParser.js";
11
- import { CompExprContext } from "./PSCParser.js";
12
- import { AddExprContext } from "./PSCParser.js";
13
- import { MulExprContext } from "./PSCParser.js";
14
- import { ExpExprContext } from "./PSCParser.js";
15
- import { UnaryExprContext } from "./PSCParser.js";
16
- import { NotExprContext } from "./PSCParser.js";
17
- import { PrimaryExprContext } from "./PSCParser.js";
18
- import { GroupExprContext } from "./PSCParser.js";
19
- import { AtomContext } from "./PSCParser.js";
20
- import { LitsContext } from "./PSCParser.js";
21
- import { IntLitsContext } from "./PSCParser.js";
22
- import { FloatLitsContext } from "./PSCParser.js";
23
- import { ArrayLitsContext } from "./PSCParser.js";
24
- import { StmtsContext } from "./PSCParser.js";
25
- import { StmtContext } from "./PSCParser.js";
26
- import { BlockContext } from "./PSCParser.js";
27
- import { IfStmtContext } from "./PSCParser.js";
28
- import { WhileStmtContext } from "./PSCParser.js";
29
- import { DoWhileStmtContext } from "./PSCParser.js";
30
- import { RepeatUntilStmtContext } from "./PSCParser.js";
31
- import { ForStmtContext } from "./PSCParser.js";
32
- import { AsmStmtContext } from "./PSCParser.js";
33
- import { LvalueContext } from "./PSCParser.js";
34
- import { InputStmtContext } from "./PSCParser.js";
35
- import { OutputStmtContext } from "./PSCParser.js";
36
- import { SubprogramContext } from "./PSCParser.js";
37
- import { ReturnStmtContext } from "./PSCParser.js";
3
+ import { ProgramContext } from "./PSCParser";
4
+ import { AddOpContext } from "./PSCParser";
5
+ import { MulOpContext } from "./PSCParser";
6
+ import { ExpOpContext } from "./PSCParser";
7
+ import { CompOpContext } from "./PSCParser";
8
+ import { ExprContext } from "./PSCParser";
9
+ import { OrExprContext } from "./PSCParser";
10
+ import { AndExprContext } from "./PSCParser";
11
+ import { CompExprContext } from "./PSCParser";
12
+ import { AddExprContext } from "./PSCParser";
13
+ import { MulExprContext } from "./PSCParser";
14
+ import { ExpExprContext } from "./PSCParser";
15
+ import { UnaryExprContext } from "./PSCParser";
16
+ import { NotExprContext } from "./PSCParser";
17
+ import { PrimaryExprContext } from "./PSCParser";
18
+ import { GroupExprContext } from "./PSCParser";
19
+ import { AtomContext } from "./PSCParser";
20
+ import { LitsContext } from "./PSCParser";
21
+ import { IntLitsContext } from "./PSCParser";
22
+ import { FloatLitsContext } from "./PSCParser";
23
+ import { ArrayLitsContext } from "./PSCParser";
24
+ import { StmtsContext } from "./PSCParser";
25
+ import { StmtContext } from "./PSCParser";
26
+ import { BlockContext } from "./PSCParser";
27
+ import { IfStmtContext } from "./PSCParser";
28
+ import { WhileStmtContext } from "./PSCParser";
29
+ import { DoWhileStmtContext } from "./PSCParser";
30
+ import { RepeatUntilStmtContext } from "./PSCParser";
31
+ import { ForStmtContext } from "./PSCParser";
32
+ import { AsmStmtContext } from "./PSCParser";
33
+ import { LvalueContext } from "./PSCParser";
34
+ import { InputStmtContext } from "./PSCParser";
35
+ import { OutputStmtContext } from "./PSCParser";
36
+ import { SubprogramContext } from "./PSCParser";
37
+ import { ReturnStmtContext } from "./PSCParser";
38
38
  /**
39
39
  * This interface defines a complete generic visitor for a parse tree produced
40
40
  * by `PSCParser`.
@@ -1 +1 @@
1
- {"version":3,"file":"PSCParserVisitor.js","sourceRoot":"","sources":["../../src/_antlr/PSCParserVisitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PSCParserVisitor.js","sourceRoot":"","sources":["../../src/_antlr/PSCParserVisitor.ts"],"names":[],"mappings":"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"}
package/dist/error.d.ts CHANGED
@@ -2,31 +2,31 @@ import type { ParserRuleContext } from "antlr4";
2
2
  export declare class PSCSyntaxError extends Error {
3
3
  constructor(line: number, column: number, msg: string);
4
4
  }
5
- export declare class AccessNonExistingVariableError extends Error {
5
+ export declare class PSCAccessNonExistingVariableError extends Error {
6
6
  constructor(ctx: ParserRuleContext | undefined, variable: string);
7
7
  }
8
- export declare class OperationValueTypeMismatchError extends Error {
8
+ export declare class PSCOperationValueTypeMismatchError extends Error {
9
9
  constructor(ctx: ParserRuleContext | undefined, operator: string, expectedType: string, got: string);
10
10
  }
11
- export declare class ConditionNotBooleanError extends Error {
11
+ export declare class PSCConditionNotBooleanError extends Error {
12
12
  constructor(ctx: ParserRuleContext | undefined, got: string);
13
13
  }
14
- export declare class ForRangeNotIntegerError extends Error {
14
+ export declare class PSCForRangeNotIntegerError extends Error {
15
15
  constructor(ctx: ParserRuleContext | undefined, got: string);
16
16
  }
17
- export declare class ForVariableReuseError extends Error {
17
+ export declare class PSCForVariableReuseError extends Error {
18
18
  constructor(ctx: ParserRuleContext | undefined, name: string);
19
19
  }
20
- export declare class InvalidArrayIndexError extends Error {
20
+ export declare class PSCInvalidArrayIndexError extends Error {
21
21
  constructor(ctx: ParserRuleContext | undefined, index: string);
22
22
  }
23
- export declare class ArrayAccessNotArrayError extends Error {
23
+ export declare class PSCArrayAccessNotArrayError extends Error {
24
24
  constructor(ctx: ParserRuleContext | undefined, got: string);
25
25
  }
26
- export declare class UnmatchedArgumentsError extends Error {
26
+ export declare class PSCUnmatchedArgumentsError extends Error {
27
27
  constructor(ctx: ParserRuleContext | undefined, name: string, expectedParams: number, gotParams: number);
28
28
  }
29
- export declare class ImpossibleError extends Error {
29
+ export declare class PSCImpossibleError extends Error {
30
30
  constructor(ctx: ParserRuleContext | undefined, message: string);
31
31
  }
32
32
  //# sourceMappingURL=error.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAahD,qBAAa,cAAe,SAAQ,KAAK;gBAC3B,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;CAGtD;AAED,qBAAa,8BAA+B,SAAQ,KAAK;gBAC3C,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM;CAKjE;AAED,qBAAa,+BAAgC,SAAQ,KAAK;gBAEtD,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAClC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,GAAG,EAAE,MAAM;CAMd;AAED,qBAAa,wBAAyB,SAAQ,KAAK;gBACrC,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM;CAK5D;AAED,qBAAa,uBAAwB,SAAQ,KAAK;gBACpC,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM;CAK5D;AAED,qBAAa,qBAAsB,SAAQ,KAAK;gBAClC,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM;CAK7D;AAED,qBAAa,sBAAuB,SAAQ,KAAK;gBACnC,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM;CAK9D;AACD,qBAAa,wBAAyB,SAAQ,KAAK;gBACrC,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM;CAK5D;AAED,qBAAa,uBAAwB,SAAQ,KAAK;gBAE9C,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAClC,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM;CAMpB;AAED,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM;CAKhE"}
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAahD,qBAAa,cAAe,SAAQ,KAAK;gBAC3B,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;CAGtD;AAED,qBAAa,iCAAkC,SAAQ,KAAK;gBAC9C,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM;CAKjE;AAED,qBAAa,kCAAmC,SAAQ,KAAK;gBAEzD,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAClC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,GAAG,EAAE,MAAM;CAMd;AAED,qBAAa,2BAA4B,SAAQ,KAAK;gBACxC,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM;CAK5D;AAED,qBAAa,0BAA2B,SAAQ,KAAK;gBACvC,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM;CAK5D;AAED,qBAAa,wBAAyB,SAAQ,KAAK;gBACrC,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM;CAK7D;AAED,qBAAa,yBAA0B,SAAQ,KAAK;gBACtC,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM;CAK9D;AACD,qBAAa,2BAA4B,SAAQ,KAAK;gBACxC,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM;CAK5D;AAED,qBAAa,0BAA2B,SAAQ,KAAK;gBAEjD,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAClC,IAAI,EAAE,MAAM,EACZ,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM;CAMpB;AAED,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,GAAG,EAAE,iBAAiB,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM;CAKhE"}
package/dist/error.js CHANGED
@@ -12,47 +12,47 @@ export class PSCSyntaxError extends Error {
12
12
  super(`Syntax error at line ${line}, column ${column}: ${msg}`);
13
13
  }
14
14
  }
15
- export class AccessNonExistingVariableError extends Error {
15
+ export class PSCAccessNonExistingVariableError extends Error {
16
16
  constructor(ctx, variable) {
17
17
  super(`Cannot access variable ${variable}, which does not exists. ${ctx && generateLineColMessage(ctx)}`);
18
18
  }
19
19
  }
20
- export class OperationValueTypeMismatchError extends Error {
20
+ export class PSCOperationValueTypeMismatchError extends Error {
21
21
  constructor(ctx, operator, expectedType, got) {
22
22
  super(`${operator} can only be applied to ${expectedType}, got ${got}. ${ctx && generateLineColMessage(ctx)}`);
23
23
  }
24
24
  }
25
- export class ConditionNotBooleanError extends Error {
25
+ export class PSCConditionNotBooleanError extends Error {
26
26
  constructor(ctx, got) {
27
27
  super(`A condition must be evaluated to a boolean, got ${got}. ${ctx && generateLineColMessage(ctx)}`);
28
28
  }
29
29
  }
30
- export class ForRangeNotIntegerError extends Error {
30
+ export class PSCForRangeNotIntegerError extends Error {
31
31
  constructor(ctx, got) {
32
32
  super(`For loop range must evaluate to an integer, got ${got}. ${ctx && generateLineColMessage(ctx)}`);
33
33
  }
34
34
  }
35
- export class ForVariableReuseError extends Error {
35
+ export class PSCForVariableReuseError extends Error {
36
36
  constructor(ctx, name) {
37
37
  super(`Cannot reuse loop variable '${name}' in a for loop. ${ctx && generateLineColMessage(ctx)}`);
38
38
  }
39
39
  }
40
- export class InvalidArrayIndexError extends Error {
40
+ export class PSCInvalidArrayIndexError extends Error {
41
41
  constructor(ctx, index) {
42
42
  super(`Array index ${index} is invalid. ${ctx && generateLineColMessage(ctx)}`);
43
43
  }
44
44
  }
45
- export class ArrayAccessNotArrayError extends Error {
45
+ export class PSCArrayAccessNotArrayError extends Error {
46
46
  constructor(ctx, got) {
47
47
  super(`Cannot access an array index on a non-array value, got ${got}. ${ctx && generateLineColMessage(ctx)}`);
48
48
  }
49
49
  }
50
- export class UnmatchedArgumentsError extends Error {
50
+ export class PSCUnmatchedArgumentsError extends Error {
51
51
  constructor(ctx, name, expectedParams, gotParams) {
52
52
  super(`Subprogram ${name} expects ${expectedParams} arguments, but got ${gotParams}. ${ctx && generateLineColMessage(ctx)}`);
53
53
  }
54
54
  }
55
- export class ImpossibleError extends Error {
55
+ export class PSCImpossibleError extends Error {
56
56
  constructor(ctx, message) {
57
57
  super(`The following error should not be possible. Please report this bug:\n${message}. ${ctx && generateLineColMessage(ctx)}`);
58
58
  }
package/dist/error.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAEA,SAAS,sBAAsB,CAAC,GAAsB;IACpD,IACE,GAAG,CAAC,IAAI;QACR,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EACzE,CAAC;QACD,OAAO,YAAY,GAAG,CAAC,KAAK,CAAC,IAAI,QAAQ,GAAG,CAAC,KAAK,CAAC,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,IAAI,QAAQ,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;IAC7G,CAAC;SAAM,CAAC;QACN,OAAO,UAAU,GAAG,CAAC,KAAK,CAAC,IAAI,QAAQ,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;IAC7D,CAAC;AACH,CAAC;AAED,MAAM,OAAO,cAAe,SAAQ,KAAK;IACvC,YAAY,IAAY,EAAE,MAAc,EAAE,GAAW;QACnD,KAAK,CAAC,wBAAwB,IAAI,YAAY,MAAM,KAAK,GAAG,EAAE,CAAC,CAAC;IAClE,CAAC;CACF;AAED,MAAM,OAAO,8BAA+B,SAAQ,KAAK;IACvD,YAAY,GAAkC,EAAE,QAAgB;QAC9D,KAAK,CACH,0BAA0B,QAAQ,4BAA4B,GAAG,IAAI,sBAAsB,CAAC,GAAG,CAAC,EAAE,CACnG,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,+BAAgC,SAAQ,KAAK;IACxD,YACE,GAAkC,EAClC,QAAgB,EAChB,YAAoB,EACpB,GAAW;QAEX,KAAK,CACH,GAAG,QAAQ,2BAA2B,YAAY,SAAS,GAAG,KAAK,GAAG,IAAI,sBAAsB,CAAC,GAAG,CAAC,EAAE,CACxG,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACjD,YAAY,GAAkC,EAAE,GAAW;QACzD,KAAK,CACH,mDAAmD,GAAG,KAAK,GAAG,IAAI,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAChG,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAChD,YAAY,GAAkC,EAAE,GAAW;QACzD,KAAK,CACH,mDAAmD,GAAG,KAAK,GAAG,IAAI,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAChG,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,YAAY,GAAkC,EAAE,IAAY;QAC1D,KAAK,CACH,+BAA+B,IAAI,oBAAoB,GAAG,IAAI,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAC5F,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IAC/C,YAAY,GAAkC,EAAE,KAAa;QAC3D,KAAK,CACH,eAAe,KAAK,gBAAgB,GAAG,IAAI,sBAAsB,CAAC,GAAG,CAAC,EAAE,CACzE,CAAC;IACJ,CAAC;CACF;AACD,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACjD,YAAY,GAAkC,EAAE,GAAW;QACzD,KAAK,CACH,0DAA0D,GAAG,KAAK,GAAG,IAAI,sBAAsB,CAAC,GAAG,CAAC,EAAE,CACvG,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAChD,YACE,GAAkC,EAClC,IAAY,EACZ,cAAsB,EACtB,SAAiB;QAEjB,KAAK,CACH,cAAc,IAAI,YAAY,cAAc,uBAAuB,SAAS,KAAK,GAAG,IAAI,sBAAsB,CAAC,GAAG,CAAC,EAAE,CACtH,CAAC;IACJ,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,KAAK;IACxC,YAAY,GAAkC,EAAE,OAAe;QAC7D,KAAK,CACH,wEAAwE,OAAO,KAAK,GAAG,IAAI,sBAAsB,CAAC,GAAG,CAAC,EAAE,CACzH,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ import type { PSCTypes } from "./visitor";
2
+ export interface PSCEventParams {
3
+ startLine: number;
4
+ startCol: number;
5
+ endLine?: number;
6
+ endCol?: number;
7
+ }
8
+ export interface PreExecStmtParams extends PSCEventParams {
9
+ stmtType: string;
10
+ }
11
+ export interface PostExecStmtParams extends PSCEventParams {
12
+ stmtType: string;
13
+ }
14
+ export type PreWhileCondition = PSCEventParams;
15
+ export interface PostWhileCondition extends PSCEventParams {
16
+ shouldContinue: boolean;
17
+ }
18
+ export type PreDoWhileCondition = PSCEventParams;
19
+ export interface PostDoWhileCondition extends PSCEventParams {
20
+ shouldContinue: boolean;
21
+ }
22
+ export type PreRepeatUntilCondition = PSCEventParams;
23
+ export interface PostRepeatUntilCondition extends PSCEventParams {
24
+ shouldContinue: boolean;
25
+ }
26
+ export interface ForVariableChangeParams extends PSCEventParams {
27
+ variableName: string;
28
+ oldValue?: number;
29
+ newValue: number;
30
+ }
31
+ export type PreEvalExprParams = PSCEventParams;
32
+ export interface PostEvalExprParams extends PSCEventParams {
33
+ result: PSCTypes;
34
+ }
35
+ type PSCEventParamsMap = {
36
+ pre_exec_stmt: PreExecStmtParams;
37
+ post_exec_stmt: PostExecStmtParams;
38
+ pre_while_condition: PreWhileCondition;
39
+ post_while_condition: PostWhileCondition;
40
+ pre_do_while_condition: PreDoWhileCondition;
41
+ post_do_while_condition: PostDoWhileCondition;
42
+ pre_repeat_until_condition: PreRepeatUntilCondition;
43
+ post_repeat_until_condition: PostRepeatUntilCondition;
44
+ for_variable_change: ForVariableChangeParams;
45
+ pre_eval_expr: PreEvalExprParams;
46
+ post_eval_expr: PostEvalExprParams;
47
+ };
48
+ export type PSCEventType = keyof PSCEventParamsMap;
49
+ export type PSCEventCallback<T extends PSCEventType = PSCEventType> = (params: PSCEventParamsMap[T]) => void;
50
+ export declare class PSCEventBus {
51
+ #private;
52
+ on<T extends PSCEventType>(eventType: T, handler: PSCEventCallback<T>): () => void;
53
+ emit<T extends PSCEventType>(eventType: T, params: PSCEventParamsMap[T]): void;
54
+ }
55
+ export {};
56
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE1C,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAkB,SAAQ,cAAc;IACvD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACxD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC;AAE/C,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACxD,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,MAAM,mBAAmB,GAAG,cAAc,CAAC;AAEjD,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IAC1D,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,MAAM,uBAAuB,GAAG,cAAc,CAAC;AAErD,MAAM,WAAW,wBAAyB,SAAQ,cAAc;IAC9D,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,uBAAwB,SAAQ,cAAc;IAC7D,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAC;AAE/C,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACxD,MAAM,EAAE,QAAQ,CAAC;CAClB;AAED,KAAK,iBAAiB,GAAG;IACvB,aAAa,EAAE,iBAAiB,CAAC;IACjC,cAAc,EAAE,kBAAkB,CAAC;IACnC,mBAAmB,EAAE,iBAAiB,CAAC;IACvC,oBAAoB,EAAE,kBAAkB,CAAC;IACzC,sBAAsB,EAAE,mBAAmB,CAAC;IAC5C,uBAAuB,EAAE,oBAAoB,CAAC;IAC9C,0BAA0B,EAAE,uBAAuB,CAAC;IACpD,2BAA2B,EAAE,wBAAwB,CAAC;IACtD,mBAAmB,EAAE,uBAAuB,CAAC;IAC7C,aAAa,EAAE,iBAAiB,CAAC;IACjC,cAAc,EAAE,kBAAkB,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,MAAM,iBAAiB,CAAC;AAEnD,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,IAAI,CACpE,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,KACzB,IAAI,CAAC;AAEV,qBAAa,WAAW;;IAKtB,EAAE,CAAC,CAAC,SAAS,YAAY,EACvB,SAAS,EAAE,CAAC,EACZ,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAC3B,MAAM,IAAI;IAWb,IAAI,CAAC,CAAC,SAAS,YAAY,EACzB,SAAS,EAAE,CAAC,EACZ,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAC3B,IAAI;CAQR"}
package/dist/events.js ADDED
@@ -0,0 +1,22 @@
1
+ export class PSCEventBus {
2
+ #handlers = {};
3
+ on(eventType, handler) {
4
+ let set = this.#handlers[eventType];
5
+ if (set === undefined) {
6
+ set = this.#handlers[eventType] = new Set();
7
+ }
8
+ set.add(handler);
9
+ return () => {
10
+ set?.delete(handler);
11
+ };
12
+ }
13
+ emit(eventType, params) {
14
+ const handlers = this.#handlers[eventType];
15
+ if (handlers) {
16
+ for (const handler of handlers) {
17
+ handler(params);
18
+ }
19
+ }
20
+ }
21
+ }
22
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAmEA,MAAM,OAAO,WAAW;IACtB,SAAS,GAEL,EAAE,CAAC;IAEP,EAAE,CACA,SAAY,EACZ,OAA4B;QAE5B,IAAI,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QACpC,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,IAAI,GAAG,EAAoB,CAAC;QAChE,CAAC;QACD,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACjB,OAAO,GAAG,EAAE;YACV,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QACvB,CAAC,CAAC;IACJ,CAAC;IAED,IAAI,CACF,SAAY,EACZ,MAA4B;QAE5B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,QAAQ,EAAE,CAAC;YACb,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,OAAO,CAAC,MAAM,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
package/dist/index.d.ts CHANGED
@@ -1,8 +1,9 @@
1
- export type InterpreterOptions = {
2
- strictVariableScope: boolean;
3
- arrayStartIndex: number;
4
- outputFunction?: (output: string) => void;
5
- inputFunction?: () => Promise<string>;
6
- };
7
- export declare function interpret(code: string, options?: Partial<InterpreterOptions>): Promise<void>;
1
+ import { type PSCVisitorOptions } from "./visitor";
2
+ import type { PSCEventCallback, PSCEventType } from "./events";
3
+ export declare class PSCInterpreter {
4
+ #private;
5
+ constructor(options?: Partial<PSCVisitorOptions>);
6
+ interpret(code: string): Promise<void>;
7
+ on(eventType: PSCEventType, handler: PSCEventCallback): void;
8
+ }
8
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAuDA,MAAM,MAAM,kBAAkB,GAAG;IAC/B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;CACvC,CAAC;AAEF,wBAAsB,SAAS,CAC7B,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACpC,OAAO,CAAC,IAAI,CAAC,CAgBf"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAuB,KAAK,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAExE,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE/D,qBAAa,cAAc;;gBAGb,OAAO,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC;IAQ1C,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY5C,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,gBAAgB,GAAG,IAAI;CAG7D"}