simplex-lang 0.2.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.
- package/README.md +530 -13
- package/build/parser/index.js +1161 -479
- package/build/parser/index.js.map +1 -1
- package/build/src/compiler.d.ts +26 -18
- package/build/src/compiler.js +211 -457
- package/build/src/compiler.js.map +1 -1
- package/build/src/constants.d.ts +25 -0
- package/build/src/constants.js +29 -0
- package/build/src/constants.js.map +1 -0
- package/build/src/error-mapping.d.ts +31 -0
- package/build/src/error-mapping.js +72 -0
- package/build/src/error-mapping.js.map +1 -0
- package/build/src/errors.d.ts +8 -5
- package/build/src/errors.js +8 -10
- package/build/src/errors.js.map +1 -1
- package/build/src/index.d.ts +1 -0
- package/build/src/index.js +1 -0
- package/build/src/index.js.map +1 -1
- package/build/src/simplex-tree.d.ts +25 -3
- package/build/src/simplex.peggy +120 -3
- package/build/src/tools/index.d.ts +25 -6
- package/build/src/tools/index.js +91 -19
- package/build/src/tools/index.js.map +1 -1
- package/build/src/version.js +1 -1
- package/build/src/visitors.d.ts +15 -0
- package/build/src/visitors.js +330 -0
- package/build/src/visitors.js.map +1 -0
- package/package.json +10 -8
- package/parser/index.js +1161 -479
- package/parser/index.js.map +1 -1
- package/src/compiler.ts +332 -609
- package/src/constants.ts +30 -0
- package/src/error-mapping.ts +112 -0
- package/src/errors.ts +8 -12
- package/src/index.ts +1 -0
- package/src/simplex-tree.ts +30 -2
- package/src/simplex.peggy +120 -3
- package/src/tools/index.ts +117 -24
- package/src/visitors.ts +491 -0
- package/build/src/tools/cast.d.ts +0 -2
- package/build/src/tools/cast.js +0 -20
- package/build/src/tools/cast.js.map +0 -1
- package/build/src/tools/ensure.d.ts +0 -3
- package/build/src/tools/ensure.js +0 -30
- package/build/src/tools/ensure.js.map +0 -1
- package/build/src/tools/guards.d.ts +0 -2
- package/build/src/tools/guards.js +0 -20
- package/build/src/tools/guards.js.map +0 -1
- package/src/tools/cast.ts +0 -26
- package/src/tools/ensure.ts +0 -41
- package/src/tools/guards.ts +0 -29
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../src/compiler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../src/compiler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export declare const TOPIC_TOKEN = "%";
|
|
2
|
+
export declare const GEN: {
|
|
3
|
+
readonly bool: "bool";
|
|
4
|
+
readonly bop: "bop";
|
|
5
|
+
readonly lop: "lop";
|
|
6
|
+
readonly uop: "uop";
|
|
7
|
+
readonly call: "call";
|
|
8
|
+
readonly getIdentifierValue: "getIdentifierValue";
|
|
9
|
+
readonly prop: "prop";
|
|
10
|
+
readonly pipe: "pipe";
|
|
11
|
+
readonly globals: "globals";
|
|
12
|
+
readonly get: "get";
|
|
13
|
+
readonly scope: "scope";
|
|
14
|
+
readonly _get: "_get";
|
|
15
|
+
readonly _scope: "_scope";
|
|
16
|
+
readonly _varNames: "_varNames";
|
|
17
|
+
readonly _varValues: "_varValues";
|
|
18
|
+
readonly ensObj: "ensObj";
|
|
19
|
+
readonly ensArr: "ensArr";
|
|
20
|
+
readonly str: "str";
|
|
21
|
+
readonly nna: "nna";
|
|
22
|
+
};
|
|
23
|
+
export declare const SCOPE_NAMES = 0;
|
|
24
|
+
export declare const SCOPE_VALUES = 1;
|
|
25
|
+
export declare const SCOPE_PARENT = 2;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
// Topic reference token used in pipe expressions
|
|
2
|
+
export const TOPIC_TOKEN = '%';
|
|
3
|
+
// Generated variable names used in bootstrap code and visitors
|
|
4
|
+
export const GEN = {
|
|
5
|
+
bool: 'bool',
|
|
6
|
+
bop: 'bop',
|
|
7
|
+
lop: 'lop',
|
|
8
|
+
uop: 'uop',
|
|
9
|
+
call: 'call',
|
|
10
|
+
getIdentifierValue: 'getIdentifierValue',
|
|
11
|
+
prop: 'prop',
|
|
12
|
+
pipe: 'pipe',
|
|
13
|
+
globals: 'globals',
|
|
14
|
+
get: 'get',
|
|
15
|
+
scope: 'scope',
|
|
16
|
+
_get: '_get',
|
|
17
|
+
_scope: '_scope',
|
|
18
|
+
_varNames: '_varNames',
|
|
19
|
+
_varValues: '_varValues',
|
|
20
|
+
ensObj: 'ensObj',
|
|
21
|
+
ensArr: 'ensArr',
|
|
22
|
+
str: 'str',
|
|
23
|
+
nna: 'nna',
|
|
24
|
+
};
|
|
25
|
+
// Semantic indices into the scope array [names, values, parent]
|
|
26
|
+
export const SCOPE_NAMES = 0;
|
|
27
|
+
export const SCOPE_VALUES = 1;
|
|
28
|
+
export const SCOPE_PARENT = 2;
|
|
29
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,iDAAiD;AACjD,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAA;AAE9B,+DAA+D;AAC/D,MAAM,CAAC,MAAM,GAAG,GAAG;IACjB,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,kBAAkB,EAAE,oBAAoB;IACxC,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;IACxB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,KAAK;CACF,CAAA;AAEV,gEAAgE;AAChE,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAA;AAC5B,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAA;AAC7B,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAA"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { ExpressionError } from './errors.js';
|
|
2
|
+
import type { Location } from './simplex-tree.js';
|
|
3
|
+
import type { SourceLocation } from './visitors.js';
|
|
4
|
+
export type { SourceLocation };
|
|
5
|
+
export interface ErrorMapper {
|
|
6
|
+
/**
|
|
7
|
+
* Map a runtime error from generated code back to source expression location.
|
|
8
|
+
* Returns ExpressionError with source location, or null if unable to map.
|
|
9
|
+
*
|
|
10
|
+
* @param err — the caught runtime error
|
|
11
|
+
* @param expression — original SimplEx expression string
|
|
12
|
+
* @param offsets — source location mapping from code generation
|
|
13
|
+
* @param codeOffset — length of bootstrap code prepended before the expression
|
|
14
|
+
*/
|
|
15
|
+
mapError(err: unknown, expression: string, offsets: SourceLocation[], codeOffset: number): ExpressionError | null;
|
|
16
|
+
/**
|
|
17
|
+
* Test if this mapper is compatible with the current JS engine.
|
|
18
|
+
* Called once during registration.
|
|
19
|
+
*/
|
|
20
|
+
probe(): boolean;
|
|
21
|
+
}
|
|
22
|
+
/** Map a code column offset back to an AST Location via the offsets array. */
|
|
23
|
+
export declare function getExpressionErrorLocation(colOffset: number, locations: SourceLocation[]): Location | null;
|
|
24
|
+
export declare var v8ErrorMapper: ErrorMapper;
|
|
25
|
+
/**
|
|
26
|
+
* Register an ErrorMapper. If the mapper passes its probe(), it becomes
|
|
27
|
+
* the active mapper. Skips if the mapper is already active.
|
|
28
|
+
*/
|
|
29
|
+
export declare function registerErrorMapper(mapper: ErrorMapper): void;
|
|
30
|
+
/** Get the currently active ErrorMapper (auto-detected or last registered). */
|
|
31
|
+
export declare function getActiveErrorMapper(): ErrorMapper | null;
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { ExpressionError } from './errors.js';
|
|
2
|
+
// --- Helper ---
|
|
3
|
+
/** Map a code column offset back to an AST Location via the offsets array. */
|
|
4
|
+
export function getExpressionErrorLocation(colOffset, locations) {
|
|
5
|
+
var curCol = 0;
|
|
6
|
+
for (const loc of locations) {
|
|
7
|
+
curCol += loc.len;
|
|
8
|
+
if (curCol >= colOffset)
|
|
9
|
+
return loc.location;
|
|
10
|
+
}
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
// --- V8 ErrorMapper ---
|
|
14
|
+
var V8_STACK_REGEX = /<anonymous>:(?<row>\d+):(?<col>\d+)/g;
|
|
15
|
+
export var v8ErrorMapper = {
|
|
16
|
+
probe() {
|
|
17
|
+
try {
|
|
18
|
+
new Function('throw new Error("__simplex_probe__")')();
|
|
19
|
+
}
|
|
20
|
+
catch (err) {
|
|
21
|
+
return /<anonymous>:\d+:\d+/.test(err.stack ?? '');
|
|
22
|
+
}
|
|
23
|
+
return false;
|
|
24
|
+
},
|
|
25
|
+
mapError(err, expression, offsets, codeOffset) {
|
|
26
|
+
if (!(err instanceof Error))
|
|
27
|
+
return null;
|
|
28
|
+
var evalRow = err.stack
|
|
29
|
+
?.split('\n')
|
|
30
|
+
.map(r => r.trim())
|
|
31
|
+
.find(r => r.startsWith('at eval '));
|
|
32
|
+
if (!evalRow)
|
|
33
|
+
return null;
|
|
34
|
+
V8_STACK_REGEX.lastIndex = 0;
|
|
35
|
+
var match = V8_STACK_REGEX.exec(evalRow);
|
|
36
|
+
var rowStr = match?.groups?.['row'];
|
|
37
|
+
var colStr = match?.groups?.['col'];
|
|
38
|
+
if (!rowStr || !colStr)
|
|
39
|
+
return null;
|
|
40
|
+
var row = Number.parseInt(rowStr);
|
|
41
|
+
if (row !== 3)
|
|
42
|
+
return null;
|
|
43
|
+
var col = Number.parseInt(colStr);
|
|
44
|
+
var adjustedCol = col - codeOffset;
|
|
45
|
+
if (adjustedCol < 0)
|
|
46
|
+
return null;
|
|
47
|
+
var location = getExpressionErrorLocation(adjustedCol, offsets);
|
|
48
|
+
return new ExpressionError(err.message, expression, location, {
|
|
49
|
+
cause: err
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
// --- Registration ---
|
|
54
|
+
var activeErrorMapper = null;
|
|
55
|
+
/**
|
|
56
|
+
* Register an ErrorMapper. If the mapper passes its probe(), it becomes
|
|
57
|
+
* the active mapper. Skips if the mapper is already active.
|
|
58
|
+
*/
|
|
59
|
+
export function registerErrorMapper(mapper) {
|
|
60
|
+
if (activeErrorMapper === mapper)
|
|
61
|
+
return;
|
|
62
|
+
if (mapper.probe()) {
|
|
63
|
+
activeErrorMapper = mapper;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
/** Get the currently active ErrorMapper (auto-detected or last registered). */
|
|
67
|
+
export function getActiveErrorMapper() {
|
|
68
|
+
return activeErrorMapper;
|
|
69
|
+
}
|
|
70
|
+
// Auto-register V8 mapper at module load
|
|
71
|
+
registerErrorMapper(v8ErrorMapper);
|
|
72
|
+
//# sourceMappingURL=error-mapping.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-mapping.js","sourceRoot":"","sources":["../../src/error-mapping.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAgC7C,iBAAiB;AAEjB,8EAA8E;AAC9E,MAAM,UAAU,0BAA0B,CACxC,SAAiB,EACjB,SAA2B;IAE3B,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,CAAC,GAAG,CAAA;QACjB,IAAI,MAAM,IAAI,SAAS;YAAE,OAAO,GAAG,CAAC,QAAQ,CAAA;IAC9C,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,yBAAyB;AAEzB,IAAI,cAAc,GAAG,sCAAsC,CAAA;AAE3D,MAAM,CAAC,IAAI,aAAa,GAAgB;IACtC,KAAK;QACH,IAAI,CAAC;YACH,IAAI,QAAQ,CAAC,sCAAsC,CAAC,EAAE,CAAA;QACxD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,qBAAqB,CAAC,IAAI,CAAE,GAAa,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA;QAC/D,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAED,QAAQ,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU;QAC3C,IAAI,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC;YAAE,OAAO,IAAI,CAAA;QAExC,IAAI,OAAO,GAAG,GAAG,CAAC,KAAK;YACrB,EAAE,KAAK,CAAC,IAAI,CAAC;aACZ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aAClB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAA;QACtC,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAA;QAEzB,cAAc,CAAC,SAAS,GAAG,CAAC,CAAA;QAC5B,IAAI,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACxC,IAAI,MAAM,GAAG,KAAK,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,CAAA;QACnC,IAAI,MAAM,GAAG,KAAK,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,CAAA;QACnC,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAA;QAEnC,IAAI,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACjC,IAAI,GAAG,KAAK,CAAC;YAAE,OAAO,IAAI,CAAA;QAE1B,IAAI,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACjC,IAAI,WAAW,GAAG,GAAG,GAAG,UAAU,CAAA;QAClC,IAAI,WAAW,GAAG,CAAC;YAAE,OAAO,IAAI,CAAA;QAEhC,IAAI,QAAQ,GAAG,0BAA0B,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;QAC/D,OAAO,IAAI,eAAe,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE;YAC5D,KAAK,EAAE,GAAG;SACX,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAED,uBAAuB;AAEvB,IAAI,iBAAiB,GAAuB,IAAI,CAAA;AAEhD;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAmB;IACrD,IAAI,iBAAiB,KAAK,MAAM;QAAE,OAAM;IACxC,IAAI,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;QACnB,iBAAiB,GAAG,MAAM,CAAA;IAC5B,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,oBAAoB;IAClC,OAAO,iBAAiB,CAAA;AAC1B,CAAC;AAED,yCAAyC;AACzC,mBAAmB,CAAC,aAAa,CAAC,CAAA"}
|
package/build/src/errors.d.ts
CHANGED
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
import { Location } from './simplex-tree.js';
|
|
2
|
-
|
|
2
|
+
/** Base error with source expression and location info. */
|
|
3
|
+
export declare class SimplexError extends Error {
|
|
3
4
|
expression: string;
|
|
4
5
|
location: Location | null;
|
|
5
6
|
constructor(message: string, expression: string, location: Location | null, options?: ErrorOptions);
|
|
6
7
|
}
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
/** Runtime error thrown when expression evaluation fails (e.g. unknown identifier). */
|
|
9
|
+
export declare class ExpressionError extends SimplexError {
|
|
10
|
+
}
|
|
11
|
+
/** Error thrown during compilation (e.g. duplicate let bindings, invalid keys). */
|
|
12
|
+
export declare class CompileError extends SimplexError {
|
|
11
13
|
}
|
|
14
|
+
/** TypeError with expected-vs-actual type info (e.g. "Expected number, but got string"). */
|
|
12
15
|
export declare class UnexpectedTypeError extends TypeError {
|
|
13
16
|
expectedTypes: string[];
|
|
14
17
|
receivedValue: unknown;
|
package/build/src/errors.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { typeOf } from './tools/index.js';
|
|
2
|
-
|
|
2
|
+
/** Base error with source expression and location info. */
|
|
3
|
+
export class SimplexError extends Error {
|
|
3
4
|
expression;
|
|
4
5
|
location;
|
|
5
6
|
constructor(message, expression, location, options) {
|
|
@@ -9,16 +10,13 @@ export class ExpressionError extends Error {
|
|
|
9
10
|
this.name = this.constructor.name;
|
|
10
11
|
}
|
|
11
12
|
}
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
this.expression = expression;
|
|
18
|
-
this.location = location;
|
|
19
|
-
this.name = this.constructor.name;
|
|
20
|
-
}
|
|
13
|
+
/** Runtime error thrown when expression evaluation fails (e.g. unknown identifier). */
|
|
14
|
+
export class ExpressionError extends SimplexError {
|
|
15
|
+
}
|
|
16
|
+
/** Error thrown during compilation (e.g. duplicate let bindings, invalid keys). */
|
|
17
|
+
export class CompileError extends SimplexError {
|
|
21
18
|
}
|
|
19
|
+
/** TypeError with expected-vs-actual type info (e.g. "Expected number, but got string"). */
|
|
22
20
|
export class UnexpectedTypeError extends TypeError {
|
|
23
21
|
expectedTypes;
|
|
24
22
|
receivedValue;
|
package/build/src/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAEzC,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAEzC,2DAA2D;AAC3D,MAAM,OAAO,YAAa,SAAQ,KAAK;IAG5B;IACA;IAHT,YACE,OAAe,EACR,UAAkB,EAClB,QAAyB,EAChC,OAAsB;QAEtB,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAJhB,eAAU,GAAV,UAAU,CAAQ;QAClB,aAAQ,GAAR,QAAQ,CAAiB;QAIhC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA;IACnC,CAAC;CACF;AAED,uFAAuF;AACvF,MAAM,OAAO,eAAgB,SAAQ,YAAY;CAAG;AAEpD,mFAAmF;AACnF,MAAM,OAAO,YAAa,SAAQ,YAAY;CAAG;AAEjD,4FAA4F;AAC5F,MAAM,OAAO,mBAAoB,SAAQ,SAAS;IAIvC;IACA;IAJT,WAAW,GAAG,iBAAiB,CAAA;IAE/B,YACS,aAAuB,EACvB,aAAsB;QAE7B,KAAK,CACH,YAAY,aAAa,CAAC,MAAM,KAAK,CAAC;YACpC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;YAClB,CAAC,CAAC,aAAa;iBACZ,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;gBACpB,OAAO,CAAC,CAAC,EAAE,KAAK,KAAK,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YAChE,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;iBACZ,IAAI,CAAC,EAAE,CACZ,aAAa,MAAM,CAAC,aAAa,CAAC,UAAU,CAC7C,CAAA;QAbM,kBAAa,GAAb,aAAa,CAAU;QACvB,kBAAa,GAAb,aAAa,CAAS;QAa7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA;IACnC,CAAC;CACF"}
|
package/build/src/index.d.ts
CHANGED
package/build/src/index.js
CHANGED
package/build/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,mBAAmB,CAAA;AACjC,cAAc,kBAAkB,CAAA;AAChC,cAAc,cAAc,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA;AAC3B,cAAc,mBAAmB,CAAA;AACjC,cAAc,kBAAkB,CAAA;AAChC,cAAc,cAAc,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type Expression = ArrayExpression | BinaryExpression | CallExpression | ConditionalExpression | IdentifierExpression | LogicalExpression | LiteralExpression | MemberExpression | ObjectExpression | NullishCoalescingExpression | PipeSequence | TopicReference | UnaryExpression | LambdaExpression | LetExpression;
|
|
1
|
+
export type Expression = ArrayExpression | BinaryExpression | CallExpression | ConditionalExpression | IdentifierExpression | LogicalExpression | LiteralExpression | MemberExpression | NonNullAssertExpression | ObjectExpression | NullishCoalescingExpression | PipeSequence | TemplateLiteralExpression | TopicReference | UnaryExpression | LambdaExpression | LetExpression;
|
|
2
2
|
export type ExpressionType = Expression['type'];
|
|
3
3
|
export type ExpressionByType = {
|
|
4
4
|
[P in ExpressionType]: Extract<Expression, {
|
|
@@ -33,17 +33,23 @@ export interface PropertyAssignment {
|
|
|
33
33
|
type: 'Property';
|
|
34
34
|
key: Expression;
|
|
35
35
|
value: Expression;
|
|
36
|
+
computed: boolean;
|
|
36
37
|
kind: 'init';
|
|
37
38
|
location: Location;
|
|
38
39
|
}
|
|
40
|
+
export interface SpreadElement {
|
|
41
|
+
type: 'SpreadElement';
|
|
42
|
+
argument: Expression;
|
|
43
|
+
location: Location;
|
|
44
|
+
}
|
|
39
45
|
export interface ObjectExpression {
|
|
40
46
|
type: 'ObjectExpression';
|
|
41
|
-
properties: PropertyAssignment[];
|
|
47
|
+
properties: (PropertyAssignment | SpreadElement)[];
|
|
42
48
|
location: Location;
|
|
43
49
|
}
|
|
44
50
|
export interface ArrayExpression {
|
|
45
51
|
type: 'ArrayExpression';
|
|
46
|
-
elements: (Expression | null)[];
|
|
52
|
+
elements: (Expression | SpreadElement | null)[];
|
|
47
53
|
location: Location;
|
|
48
54
|
}
|
|
49
55
|
export type MemberExpression = {
|
|
@@ -136,3 +142,19 @@ export interface LetExpression {
|
|
|
136
142
|
expression: Expression;
|
|
137
143
|
location: Location;
|
|
138
144
|
}
|
|
145
|
+
export interface TemplateElement {
|
|
146
|
+
value: string;
|
|
147
|
+
location: Location;
|
|
148
|
+
}
|
|
149
|
+
export interface NonNullAssertExpression {
|
|
150
|
+
type: 'NonNullAssertExpression';
|
|
151
|
+
expression: Expression;
|
|
152
|
+
location: Location;
|
|
153
|
+
}
|
|
154
|
+
export interface TemplateLiteralExpression {
|
|
155
|
+
type: 'TemplateLiteral';
|
|
156
|
+
tag: Expression | null;
|
|
157
|
+
quasis: TemplateElement[];
|
|
158
|
+
expressions: Expression[];
|
|
159
|
+
location: Location;
|
|
160
|
+
}
|
package/build/src/simplex.peggy
CHANGED
|
@@ -271,6 +271,47 @@ SingleStringCharacter
|
|
|
271
271
|
/ "\\" sequence:EscapeSequence { return sequence; }
|
|
272
272
|
/ LineContinuation
|
|
273
273
|
|
|
274
|
+
TemplateLiteral "template literal"
|
|
275
|
+
= "`" head:TemplateCharacter* parts:TemplatePart* "`" {
|
|
276
|
+
var quasis = [];
|
|
277
|
+
var expressions = [];
|
|
278
|
+
|
|
279
|
+
quasis.push({
|
|
280
|
+
value: head.join(""),
|
|
281
|
+
location: getLocation(location())
|
|
282
|
+
});
|
|
283
|
+
|
|
284
|
+
for (var i = 0; i < parts.length; i++) {
|
|
285
|
+
expressions.push(parts[i].expression);
|
|
286
|
+
quasis.push({
|
|
287
|
+
value: (parts[i].suffix || []).join(""),
|
|
288
|
+
location: getLocation(location())
|
|
289
|
+
});
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
return {
|
|
293
|
+
type: "TemplateLiteral",
|
|
294
|
+
tag: null,
|
|
295
|
+
quasis: quasis,
|
|
296
|
+
expressions: expressions,
|
|
297
|
+
location: getLocation(location())
|
|
298
|
+
};
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
TemplatePart
|
|
302
|
+
= "${" __ expression:Expression __ "}" suffix:TemplateCharacter* {
|
|
303
|
+
return { expression: expression, suffix: suffix };
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
TemplateCharacter
|
|
307
|
+
= "\\" sequence:TemplateEscapeSequence { return sequence; }
|
|
308
|
+
/ !("`" / "${" / "\\") SourceCharacter { return text(); }
|
|
309
|
+
|
|
310
|
+
TemplateEscapeSequence
|
|
311
|
+
= "`" { return "`"; }
|
|
312
|
+
/ "$" { return "$"; }
|
|
313
|
+
/ EscapeSequence
|
|
314
|
+
|
|
274
315
|
LineContinuation
|
|
275
316
|
= "\\" LineTerminatorSequence { return ""; }
|
|
276
317
|
|
|
@@ -381,6 +422,7 @@ PrimaryExpression
|
|
|
381
422
|
= Identifier
|
|
382
423
|
/ Literal
|
|
383
424
|
/ TopicReference
|
|
425
|
+
/ TemplateLiteral
|
|
384
426
|
/ ArrayLiteral
|
|
385
427
|
/ ObjectLiteral
|
|
386
428
|
/ "(" __ expression:Expression __ ")" { return expression; }
|
|
@@ -410,12 +452,12 @@ ArrayLiteral
|
|
|
410
452
|
|
|
411
453
|
ElementList
|
|
412
454
|
= head:(
|
|
413
|
-
elision:(Elision __)? element:Expression {
|
|
455
|
+
elision:(Elision __)? element:(SpreadElement / Expression) {
|
|
414
456
|
return optionalList(extractOptional(elision, 0)).concat(element);
|
|
415
457
|
}
|
|
416
458
|
)
|
|
417
459
|
tail:(
|
|
418
|
-
__ "," __ elision:(Elision __)? element:Expression {
|
|
460
|
+
__ "," __ elision:(Elision __)? element:(SpreadElement / Expression) {
|
|
419
461
|
return optionalList(extractOptional(elision, 0)).concat(element);
|
|
420
462
|
}
|
|
421
463
|
)*
|
|
@@ -452,12 +494,33 @@ PropertyNameAndValueList
|
|
|
452
494
|
return buildList(head, tail, 3);
|
|
453
495
|
}
|
|
454
496
|
|
|
497
|
+
SpreadElement
|
|
498
|
+
= "..." __ argument:Expression {
|
|
499
|
+
return {
|
|
500
|
+
type: "SpreadElement",
|
|
501
|
+
argument: argument,
|
|
502
|
+
location: getLocation(location())
|
|
503
|
+
};
|
|
504
|
+
}
|
|
505
|
+
|
|
455
506
|
PropertyAssignment
|
|
456
|
-
=
|
|
507
|
+
= SpreadElement
|
|
508
|
+
/ key:PropertyName __ ":" __ value:Expression {
|
|
509
|
+
return {
|
|
510
|
+
type: "Property",
|
|
511
|
+
key: key,
|
|
512
|
+
value: value,
|
|
513
|
+
computed: false,
|
|
514
|
+
kind: "init",
|
|
515
|
+
location: getLocation(location())
|
|
516
|
+
};
|
|
517
|
+
}
|
|
518
|
+
/ "[" __ key:Expression __ "]" __ ":" __ value:Expression {
|
|
457
519
|
return {
|
|
458
520
|
type: "Property",
|
|
459
521
|
key: key,
|
|
460
522
|
value: value,
|
|
523
|
+
computed: true,
|
|
461
524
|
kind: "init",
|
|
462
525
|
location: getLocation(location())
|
|
463
526
|
};
|
|
@@ -488,9 +551,31 @@ MemberExpression
|
|
|
488
551
|
property: property, computed: false, extension: true, location: getLocation(location())
|
|
489
552
|
};
|
|
490
553
|
}
|
|
554
|
+
/ __ template:TemplateLiteral {
|
|
555
|
+
return {
|
|
556
|
+
tagged: true, template: template, location: getLocation(location())
|
|
557
|
+
};
|
|
558
|
+
}
|
|
559
|
+
/ "!" !"=" {
|
|
560
|
+
return {
|
|
561
|
+
nonNullAssert: true, location: getLocation(location())
|
|
562
|
+
};
|
|
563
|
+
}
|
|
491
564
|
)*
|
|
492
565
|
{
|
|
493
566
|
return tail.reduce(function(result, element) {
|
|
567
|
+
if (element.tagged) {
|
|
568
|
+
element.template.tag = result;
|
|
569
|
+
element.template.location = getLocation(location());
|
|
570
|
+
return element.template;
|
|
571
|
+
}
|
|
572
|
+
if (element.nonNullAssert) {
|
|
573
|
+
return {
|
|
574
|
+
type: "NonNullAssertExpression",
|
|
575
|
+
expression: result,
|
|
576
|
+
location: element.location
|
|
577
|
+
};
|
|
578
|
+
}
|
|
494
579
|
return {
|
|
495
580
|
type: "MemberExpression",
|
|
496
581
|
object: result,
|
|
@@ -534,12 +619,44 @@ CallExpression
|
|
|
534
619
|
type: "MemberExpression",
|
|
535
620
|
property: property,
|
|
536
621
|
computed: false,
|
|
622
|
+
extension: false,
|
|
623
|
+
location: getLocation(location())
|
|
624
|
+
};
|
|
625
|
+
}
|
|
626
|
+
/ __ "::" __ property:IdentifierName {
|
|
627
|
+
return {
|
|
628
|
+
type: "MemberExpression",
|
|
629
|
+
property: property,
|
|
630
|
+
computed: false,
|
|
631
|
+
extension: true,
|
|
537
632
|
location: getLocation(location())
|
|
538
633
|
};
|
|
539
634
|
}
|
|
635
|
+
/ __ template:TemplateLiteral {
|
|
636
|
+
return {
|
|
637
|
+
tagged: true, template: template, location: getLocation(location())
|
|
638
|
+
};
|
|
639
|
+
}
|
|
640
|
+
/ "!" !"=" {
|
|
641
|
+
return {
|
|
642
|
+
nonNullAssert: true, location: getLocation(location())
|
|
643
|
+
};
|
|
644
|
+
}
|
|
540
645
|
)*
|
|
541
646
|
{
|
|
542
647
|
return tail.reduce(function(result, element) {
|
|
648
|
+
if (element.tagged) {
|
|
649
|
+
element.template.tag = result;
|
|
650
|
+
element.template.location = getLocation(location());
|
|
651
|
+
return element.template;
|
|
652
|
+
}
|
|
653
|
+
if (element.nonNullAssert) {
|
|
654
|
+
return {
|
|
655
|
+
type: "NonNullAssertExpression",
|
|
656
|
+
expression: result,
|
|
657
|
+
location: element.location
|
|
658
|
+
};
|
|
659
|
+
}
|
|
543
660
|
element[TYPES_TO_PROPERTY_NAMES[element.type]] = result;
|
|
544
661
|
|
|
545
662
|
return element;
|
|
@@ -1,11 +1,30 @@
|
|
|
1
|
-
export * from './cast.js';
|
|
2
|
-
export * from './ensure.js';
|
|
3
|
-
export * from './guards.js';
|
|
4
1
|
/**
|
|
5
|
-
*
|
|
2
|
+
* Alias for `Object.prototype.toString`
|
|
6
3
|
*/
|
|
7
|
-
export declare
|
|
4
|
+
export declare const objToStringAlias: () => string;
|
|
8
5
|
/**
|
|
9
|
-
*
|
|
6
|
+
* The method is needed to obtain the most specific readable data type.
|
|
7
|
+
*
|
|
8
|
+
* *Usage note:* Type handling, from a performance perspective, should be done
|
|
9
|
+
* in a targeted manner. It is not possible to replace specific checks like typeof
|
|
10
|
+
* `some === "number"` or `Num.isFinite(some)` with a universal
|
|
11
|
+
* `typeOf(some) === "FiniteNumber"`.
|
|
10
12
|
*/
|
|
11
13
|
export declare function typeOf(val: unknown): string;
|
|
14
|
+
/** Check if value is a plain object (not Array, Map, etc.). */
|
|
15
|
+
export declare function isObject(val: unknown): val is object;
|
|
16
|
+
export declare function isSimpleValue(val: unknown): val is number | string | boolean | bigint | null | undefined;
|
|
17
|
+
/** Coerce any value to boolean (standard JS truthiness). */
|
|
18
|
+
export declare function castToBoolean(val: unknown): boolean;
|
|
19
|
+
/** Coerce value to string; objects use Object.prototype.toString. */
|
|
20
|
+
export declare function castToString(val: unknown): string;
|
|
21
|
+
/** Validate that value is a finite number or bigint; throw UnexpectedTypeError otherwise. */
|
|
22
|
+
export declare function ensureNumber(val: unknown): number | bigint;
|
|
23
|
+
/** Validate that value is a function; throw UnexpectedTypeError otherwise. */
|
|
24
|
+
export declare function ensureFunction(val: unknown): Function;
|
|
25
|
+
/** Validate that value is a plain object; throw UnexpectedTypeError otherwise. */
|
|
26
|
+
export declare function ensureObject(val: unknown): object;
|
|
27
|
+
/** Validate that value is an array; throw UnexpectedTypeError otherwise. */
|
|
28
|
+
export declare function ensureArray(val: unknown): unknown[];
|
|
29
|
+
/** Validate that value is comparable (<, >, <=, >=); must be number, bigint, or string. */
|
|
30
|
+
export declare function ensureRelationalComparable(val: unknown): number | string | bigint;
|