@mojir/lits 2.2.2 → 2.2.4
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 +0 -8
- package/dist/cli/cli.js +1145 -1105
- package/dist/cli/src/AutoCompleter/AutoCompleter.d.ts +2 -1
- package/dist/cli/src/builtin/bindingNode.d.ts +3 -3
- package/dist/cli/src/builtin/index.d.ts +0 -1
- package/dist/cli/src/builtin/interface.d.ts +3 -4
- package/dist/cli/src/builtin/specialExpressionTypes.d.ts +0 -1
- package/dist/cli/src/builtin/specialExpressions/and.d.ts +2 -2
- package/dist/cli/src/builtin/specialExpressions/array.d.ts +2 -2
- package/dist/cli/src/builtin/specialExpressions/block.d.ts +2 -2
- package/dist/cli/src/builtin/specialExpressions/cond.d.ts +2 -2
- package/dist/cli/src/builtin/specialExpressions/if.d.ts +2 -2
- package/dist/cli/src/builtin/specialExpressions/loop.d.ts +2 -2
- package/dist/cli/src/builtin/specialExpressions/loops.d.ts +4 -4
- package/dist/cli/src/builtin/specialExpressions/object.d.ts +2 -2
- package/dist/cli/src/builtin/specialExpressions/or.d.ts +2 -2
- package/dist/cli/src/builtin/specialExpressions/qq.d.ts +2 -2
- package/dist/cli/src/builtin/specialExpressions/recur.d.ts +2 -2
- package/dist/cli/src/builtin/specialExpressions/switch.d.ts +2 -2
- package/dist/cli/src/builtin/specialExpressions/throw.d.ts +2 -2
- package/dist/cli/src/builtin/specialExpressions/try.d.ts +2 -2
- package/dist/cli/src/builtin/specialExpressions/unless.d.ts +2 -2
- package/dist/cli/src/builtin/utils.d.ts +2 -2
- package/dist/cli/src/evaluator/index.d.ts +2 -2
- package/dist/cli/src/evaluator/interface.d.ts +4 -3
- package/dist/cli/src/getUndefinedSymbols/index.d.ts +2 -2
- package/dist/cli/src/parser/ParserContext.d.ts +20 -0
- package/dist/cli/src/parser/helpers.d.ts +19 -0
- package/dist/cli/src/parser/index.d.ts +3 -0
- package/dist/cli/src/parser/subParsers/getPrecedence.d.ts +3 -0
- package/dist/cli/src/parser/subParsers/parseArray.d.ts +3 -0
- package/dist/cli/src/parser/subParsers/parseBindingTarget.d.ts +6 -0
- package/dist/cli/src/parser/subParsers/parseCond.d.ts +4 -0
- package/dist/cli/src/parser/subParsers/parseDo.d.ts +3 -0
- package/dist/cli/src/parser/subParsers/parseForOrDoseq.d.ts +4 -0
- package/dist/cli/src/parser/subParsers/parseFunction.d.ts +4 -0
- package/dist/cli/src/parser/subParsers/parseFunctionCall.d.ts +3 -0
- package/dist/cli/src/parser/subParsers/parseIfOrUnless.d.ts +5 -0
- package/dist/cli/src/parser/subParsers/parseImplicitBlock.d.ts +5 -0
- package/dist/cli/src/parser/subParsers/parseLet.d.ts +4 -0
- package/dist/cli/src/parser/subParsers/parseLoop.d.ts +4 -0
- package/dist/cli/src/parser/subParsers/parseNumber.d.ts +3 -0
- package/dist/cli/src/parser/subParsers/parseObject.d.ts +3 -0
- package/dist/cli/src/parser/subParsers/parseOperand.d.ts +3 -0
- package/dist/cli/src/parser/subParsers/parseRegexpShorthand.d.ts +3 -0
- package/dist/cli/src/parser/subParsers/parseReservedSymbol.d.ts +3 -0
- package/dist/cli/src/parser/subParsers/parseString.d.ts +4 -0
- package/dist/cli/src/parser/subParsers/parseSwitch.d.ts +4 -0
- package/dist/cli/src/parser/subParsers/parseSymbol.d.ts +3 -0
- package/dist/cli/src/parser/subParsers/parseTry.d.ts +4 -0
- package/dist/cli/src/parser/types.d.ts +19 -26
- package/dist/cli/src/testFramework/index.d.ts +3 -2
- package/dist/cli/src/tokenizer/token.d.ts +0 -2
- package/dist/cli/src/tokenizer/tokenizers.d.ts +2 -2
- package/dist/cli/src/typeGuards/astNode.d.ts +18 -19
- package/dist/cli/src/typeGuards/index.d.ts +0 -1
- package/dist/cli/src/typeGuards/lits.d.ts +0 -1
- package/dist/full.esm.js +1 -1
- package/dist/full.esm.js.map +1 -1
- package/dist/full.js +1 -1
- package/dist/full.js.map +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lits.iife.js +1 -1
- package/dist/lits.iife.js.map +1 -1
- package/dist/modules/assert.esm.js.map +1 -1
- package/dist/modules/assert.js.map +1 -1
- package/dist/modules/bitwise.esm.js.map +1 -1
- package/dist/modules/bitwise.js.map +1 -1
- package/dist/modules/collection.esm.js.map +1 -1
- package/dist/modules/collection.js.map +1 -1
- package/dist/modules/functional.esm.js.map +1 -1
- package/dist/modules/functional.js.map +1 -1
- package/dist/modules/grid.esm.js.map +1 -1
- package/dist/modules/grid.js.map +1 -1
- package/dist/modules/linear-algebra.esm.js.map +1 -1
- package/dist/modules/linear-algebra.js.map +1 -1
- package/dist/modules/matrix.esm.js.map +1 -1
- package/dist/modules/matrix.js.map +1 -1
- package/dist/modules/number-theory.esm.js.map +1 -1
- package/dist/modules/number-theory.js.map +1 -1
- package/dist/modules/random.esm.js.map +1 -1
- package/dist/modules/random.js.map +1 -1
- package/dist/modules/sequence.esm.js.map +1 -1
- package/dist/modules/sequence.js.map +1 -1
- package/dist/modules/src/AutoCompleter/AutoCompleter.d.ts +2 -1
- package/dist/modules/src/builtin/bindingNode.d.ts +3 -3
- package/dist/modules/src/builtin/index.d.ts +0 -1
- package/dist/modules/src/builtin/interface.d.ts +3 -4
- package/dist/modules/src/builtin/specialExpressionTypes.d.ts +0 -1
- package/dist/modules/src/builtin/specialExpressions/and.d.ts +2 -2
- package/dist/modules/src/builtin/specialExpressions/array.d.ts +2 -2
- package/dist/modules/src/builtin/specialExpressions/block.d.ts +2 -2
- package/dist/modules/src/builtin/specialExpressions/cond.d.ts +2 -2
- package/dist/modules/src/builtin/specialExpressions/if.d.ts +2 -2
- package/dist/modules/src/builtin/specialExpressions/loop.d.ts +2 -2
- package/dist/modules/src/builtin/specialExpressions/loops.d.ts +4 -4
- package/dist/modules/src/builtin/specialExpressions/object.d.ts +2 -2
- package/dist/modules/src/builtin/specialExpressions/or.d.ts +2 -2
- package/dist/modules/src/builtin/specialExpressions/qq.d.ts +2 -2
- package/dist/modules/src/builtin/specialExpressions/recur.d.ts +2 -2
- package/dist/modules/src/builtin/specialExpressions/switch.d.ts +2 -2
- package/dist/modules/src/builtin/specialExpressions/throw.d.ts +2 -2
- package/dist/modules/src/builtin/specialExpressions/try.d.ts +2 -2
- package/dist/modules/src/builtin/specialExpressions/unless.d.ts +2 -2
- package/dist/modules/src/builtin/utils.d.ts +2 -2
- package/dist/modules/src/evaluator/index.d.ts +2 -2
- package/dist/modules/src/evaluator/interface.d.ts +4 -3
- package/dist/modules/src/getUndefinedSymbols/index.d.ts +2 -2
- package/dist/modules/src/parser/ParserContext.d.ts +20 -0
- package/dist/modules/src/parser/helpers.d.ts +19 -0
- package/dist/modules/src/parser/index.d.ts +3 -0
- package/dist/modules/src/parser/subParsers/getPrecedence.d.ts +3 -0
- package/dist/modules/src/parser/subParsers/parseArray.d.ts +3 -0
- package/dist/modules/src/parser/subParsers/parseBindingTarget.d.ts +6 -0
- package/dist/modules/src/parser/subParsers/parseCond.d.ts +4 -0
- package/dist/modules/src/parser/subParsers/parseDo.d.ts +3 -0
- package/dist/modules/src/parser/subParsers/parseForOrDoseq.d.ts +4 -0
- package/dist/modules/src/parser/subParsers/parseFunction.d.ts +4 -0
- package/dist/modules/src/parser/subParsers/parseFunctionCall.d.ts +3 -0
- package/dist/modules/src/parser/subParsers/parseIfOrUnless.d.ts +5 -0
- package/dist/modules/src/parser/subParsers/parseImplicitBlock.d.ts +5 -0
- package/dist/modules/src/parser/subParsers/parseLet.d.ts +4 -0
- package/dist/modules/src/parser/subParsers/parseLoop.d.ts +4 -0
- package/dist/modules/src/parser/subParsers/parseNumber.d.ts +3 -0
- package/dist/modules/src/parser/subParsers/parseObject.d.ts +3 -0
- package/dist/modules/src/parser/subParsers/parseOperand.d.ts +3 -0
- package/dist/modules/src/parser/subParsers/parseRegexpShorthand.d.ts +3 -0
- package/dist/modules/src/parser/subParsers/parseReservedSymbol.d.ts +3 -0
- package/dist/modules/src/parser/subParsers/parseString.d.ts +4 -0
- package/dist/modules/src/parser/subParsers/parseSwitch.d.ts +4 -0
- package/dist/modules/src/parser/subParsers/parseSymbol.d.ts +3 -0
- package/dist/modules/src/parser/subParsers/parseTry.d.ts +4 -0
- package/dist/modules/src/parser/types.d.ts +19 -26
- package/dist/modules/src/testFramework/index.d.ts +3 -2
- package/dist/modules/src/tokenizer/token.d.ts +0 -2
- package/dist/modules/src/tokenizer/tokenizers.d.ts +2 -2
- package/dist/modules/src/typeGuards/astNode.d.ts +18 -19
- package/dist/modules/src/typeGuards/index.d.ts +0 -1
- package/dist/modules/src/typeGuards/lits.d.ts +0 -1
- package/dist/modules/string.esm.js.map +1 -1
- package/dist/modules/string.js.map +1 -1
- package/dist/modules/vector.esm.js.map +1 -1
- package/dist/modules/vector.js.map +1 -1
- package/dist/src/AutoCompleter/AutoCompleter.d.ts +2 -1
- package/dist/src/builtin/bindingNode.d.ts +3 -3
- package/dist/src/builtin/index.d.ts +0 -1
- package/dist/src/builtin/interface.d.ts +3 -4
- package/dist/src/builtin/specialExpressionTypes.d.ts +0 -1
- package/dist/src/builtin/specialExpressions/and.d.ts +2 -2
- package/dist/src/builtin/specialExpressions/array.d.ts +2 -2
- package/dist/src/builtin/specialExpressions/block.d.ts +2 -2
- package/dist/src/builtin/specialExpressions/cond.d.ts +2 -2
- package/dist/src/builtin/specialExpressions/if.d.ts +2 -2
- package/dist/src/builtin/specialExpressions/loop.d.ts +2 -2
- package/dist/src/builtin/specialExpressions/loops.d.ts +4 -4
- package/dist/src/builtin/specialExpressions/object.d.ts +2 -2
- package/dist/src/builtin/specialExpressions/or.d.ts +2 -2
- package/dist/src/builtin/specialExpressions/qq.d.ts +2 -2
- package/dist/src/builtin/specialExpressions/recur.d.ts +2 -2
- package/dist/src/builtin/specialExpressions/switch.d.ts +2 -2
- package/dist/src/builtin/specialExpressions/throw.d.ts +2 -2
- package/dist/src/builtin/specialExpressions/try.d.ts +2 -2
- package/dist/src/builtin/specialExpressions/unless.d.ts +2 -2
- package/dist/src/builtin/utils.d.ts +2 -2
- package/dist/src/evaluator/index.d.ts +2 -2
- package/dist/src/evaluator/interface.d.ts +4 -3
- package/dist/src/getUndefinedSymbols/index.d.ts +2 -2
- package/dist/src/parser/ParserContext.d.ts +20 -0
- package/dist/src/parser/helpers.d.ts +19 -0
- package/dist/src/parser/index.d.ts +3 -0
- package/dist/src/parser/subParsers/getPrecedence.d.ts +3 -0
- package/dist/src/parser/subParsers/parseArray.d.ts +3 -0
- package/dist/src/parser/subParsers/parseBindingTarget.d.ts +6 -0
- package/dist/src/parser/subParsers/parseCond.d.ts +4 -0
- package/dist/src/parser/subParsers/parseDo.d.ts +3 -0
- package/dist/src/parser/subParsers/parseForOrDoseq.d.ts +4 -0
- package/dist/src/parser/subParsers/parseFunction.d.ts +4 -0
- package/dist/src/parser/subParsers/parseFunctionCall.d.ts +3 -0
- package/dist/src/parser/subParsers/parseIfOrUnless.d.ts +5 -0
- package/dist/src/parser/subParsers/parseImplicitBlock.d.ts +5 -0
- package/dist/src/parser/subParsers/parseLet.d.ts +4 -0
- package/dist/src/parser/subParsers/parseLoop.d.ts +4 -0
- package/dist/src/parser/subParsers/parseNumber.d.ts +3 -0
- package/dist/src/parser/subParsers/parseObject.d.ts +3 -0
- package/dist/src/parser/subParsers/parseOperand.d.ts +3 -0
- package/dist/src/parser/subParsers/parseRegexpShorthand.d.ts +3 -0
- package/dist/src/parser/subParsers/parseReservedSymbol.d.ts +3 -0
- package/dist/src/parser/subParsers/parseString.d.ts +4 -0
- package/dist/src/parser/subParsers/parseSwitch.d.ts +4 -0
- package/dist/src/parser/subParsers/parseSymbol.d.ts +3 -0
- package/dist/src/parser/subParsers/parseTry.d.ts +4 -0
- package/dist/src/parser/types.d.ts +19 -26
- package/dist/src/testFramework/index.d.ts +3 -2
- package/dist/src/tokenizer/token.d.ts +0 -2
- package/dist/src/tokenizer/tokenizers.d.ts +2 -2
- package/dist/src/typeGuards/astNode.d.ts +18 -19
- package/dist/src/typeGuards/index.d.ts +0 -1
- package/dist/src/typeGuards/lits.d.ts +0 -1
- package/dist/testFramework.esm.js +1 -1
- package/dist/testFramework.esm.js.map +1 -1
- package/dist/testFramework.js +1 -1
- package/dist/testFramework.js.map +1 -1
- package/package.json +1 -1
- package/dist/cli/src/parser/Parser.d.ts +0 -58
- package/dist/modules/src/parser/Parser.d.ts +0 -58
- package/dist/src/parser/Parser.d.ts +0 -58
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Any } from '../../interface';
|
|
2
|
-
import type {
|
|
2
|
+
import type { AstNode, SpecialExpressionNode } from '../../parser/types';
|
|
3
3
|
import type { BuiltinSpecialExpression } from '../interface';
|
|
4
4
|
import type { specialExpressionTypes } from '../specialExpressionTypes';
|
|
5
|
-
export type CondNode = SpecialExpressionNode<[typeof specialExpressionTypes['cond'], [
|
|
5
|
+
export type CondNode = SpecialExpressionNode<[typeof specialExpressionTypes['cond'], [AstNode, AstNode][]]>;
|
|
6
6
|
export declare const condSpecialExpression: BuiltinSpecialExpression<Any, CondNode>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Any } from '../../interface';
|
|
2
|
-
import type {
|
|
2
|
+
import type { AstNode, SpecialExpressionNode } from '../../parser/types';
|
|
3
3
|
import type { BuiltinSpecialExpression } from '../interface';
|
|
4
4
|
import type { specialExpressionTypes } from '../specialExpressionTypes';
|
|
5
|
-
export type IfNode = SpecialExpressionNode<[typeof specialExpressionTypes['if'], [
|
|
5
|
+
export type IfNode = SpecialExpressionNode<[typeof specialExpressionTypes['if'], [AstNode, AstNode, AstNode?]]>;
|
|
6
6
|
export declare const ifSpecialExpression: BuiltinSpecialExpression<Any, IfNode>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Any } from '../../interface';
|
|
2
|
-
import type {
|
|
2
|
+
import type { AstNode, BindingNode, SpecialExpressionNode } from '../../parser/types';
|
|
3
3
|
import type { BuiltinSpecialExpression } from '../interface';
|
|
4
4
|
import type { specialExpressionTypes } from '../specialExpressionTypes';
|
|
5
|
-
export type LoopNode = SpecialExpressionNode<[typeof specialExpressionTypes['loop'], BindingNode[],
|
|
5
|
+
export type LoopNode = SpecialExpressionNode<[typeof specialExpressionTypes['loop'], BindingNode[], AstNode]>;
|
|
6
6
|
export declare const loopSpecialExpression: BuiltinSpecialExpression<Any, LoopNode>;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { Any } from '../../interface';
|
|
2
|
-
import type {
|
|
2
|
+
import type { AstNode, BindingNode, SpecialExpressionNode } from '../../parser/types';
|
|
3
3
|
import type { BuiltinSpecialExpression } from '../interface';
|
|
4
4
|
import type { specialExpressionTypes } from '../specialExpressionTypes';
|
|
5
|
-
export type LoopBindingNode = [BindingNode, BindingNode[],
|
|
6
|
-
export type ForNode = SpecialExpressionNode<[typeof specialExpressionTypes['for'], LoopBindingNode[],
|
|
7
|
-
export type DoSeqNode = SpecialExpressionNode<[typeof specialExpressionTypes['doseq'], LoopBindingNode[],
|
|
5
|
+
export type LoopBindingNode = [BindingNode, BindingNode[], AstNode?, AstNode?];
|
|
6
|
+
export type ForNode = SpecialExpressionNode<[typeof specialExpressionTypes['for'], LoopBindingNode[], AstNode]>;
|
|
7
|
+
export type DoSeqNode = SpecialExpressionNode<[typeof specialExpressionTypes['doseq'], LoopBindingNode[], AstNode]>;
|
|
8
8
|
export declare const forSpecialExpression: BuiltinSpecialExpression<Any, ForNode>;
|
|
9
9
|
export declare const doseqSpecialExpression: BuiltinSpecialExpression<null, DoSeqNode>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Any } from '../../interface';
|
|
2
|
-
import type {
|
|
2
|
+
import type { AstNode, SpecialExpressionNode } from '../../parser/types';
|
|
3
3
|
import type { BuiltinSpecialExpression } from '../interface';
|
|
4
4
|
import type { specialExpressionTypes } from '../specialExpressionTypes';
|
|
5
|
-
export type ObjectNode = SpecialExpressionNode<[typeof specialExpressionTypes['object'],
|
|
5
|
+
export type ObjectNode = SpecialExpressionNode<[typeof specialExpressionTypes['object'], AstNode[]]>;
|
|
6
6
|
export declare const objectSpecialExpression: BuiltinSpecialExpression<Any, ObjectNode>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Any } from '../../interface';
|
|
2
|
-
import type {
|
|
2
|
+
import type { AstNode, SpecialExpressionNode } from '../../parser/types';
|
|
3
3
|
import type { BuiltinSpecialExpression } from '../interface';
|
|
4
4
|
import type { specialExpressionTypes } from '../specialExpressionTypes';
|
|
5
|
-
export type OrNode = SpecialExpressionNode<[typeof specialExpressionTypes['||'],
|
|
5
|
+
export type OrNode = SpecialExpressionNode<[typeof specialExpressionTypes['||'], AstNode[]]>;
|
|
6
6
|
export declare const orSpecialExpression: BuiltinSpecialExpression<Any, OrNode>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Any } from '../../interface';
|
|
2
|
-
import type {
|
|
2
|
+
import type { AstNode, SpecialExpressionNode } from '../../parser/types';
|
|
3
3
|
import type { BuiltinSpecialExpression } from '../interface';
|
|
4
4
|
import type { specialExpressionTypes } from '../specialExpressionTypes';
|
|
5
|
-
export type QqNode = SpecialExpressionNode<[typeof specialExpressionTypes['??'],
|
|
5
|
+
export type QqNode = SpecialExpressionNode<[typeof specialExpressionTypes['??'], AstNode[]]>;
|
|
6
6
|
export declare const qqSpecialExpression: BuiltinSpecialExpression<Any, QqNode>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { AstNode, SpecialExpressionNode } from '../../parser/types';
|
|
2
2
|
import type { BuiltinSpecialExpression } from '../interface';
|
|
3
3
|
import type { specialExpressionTypes } from '../specialExpressionTypes';
|
|
4
|
-
export type RecurNode = SpecialExpressionNode<[typeof specialExpressionTypes['recur'],
|
|
4
|
+
export type RecurNode = SpecialExpressionNode<[typeof specialExpressionTypes['recur'], AstNode[]]>;
|
|
5
5
|
export declare const recurSpecialExpression: BuiltinSpecialExpression<null, RecurNode>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Any } from '../../interface';
|
|
2
|
-
import type {
|
|
2
|
+
import type { AstNode, SpecialExpressionNode } from '../../parser/types';
|
|
3
3
|
import type { BuiltinSpecialExpression } from '../interface';
|
|
4
4
|
import type { specialExpressionTypes } from '../specialExpressionTypes';
|
|
5
|
-
export type SwitchNode = SpecialExpressionNode<[typeof specialExpressionTypes['switch'],
|
|
5
|
+
export type SwitchNode = SpecialExpressionNode<[typeof specialExpressionTypes['switch'], AstNode, [AstNode, AstNode][]]>;
|
|
6
6
|
export declare const switchSpecialExpression: BuiltinSpecialExpression<Any, SwitchNode>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { AstNode, SpecialExpressionNode } from '../../parser/types';
|
|
2
2
|
import type { BuiltinSpecialExpression } from '../interface';
|
|
3
3
|
import type { specialExpressionTypes } from '../specialExpressionTypes';
|
|
4
|
-
export type ThrowNode = SpecialExpressionNode<[typeof specialExpressionTypes['throw'],
|
|
4
|
+
export type ThrowNode = SpecialExpressionNode<[typeof specialExpressionTypes['throw'], AstNode]>;
|
|
5
5
|
export declare const throwSpecialExpression: BuiltinSpecialExpression<null, ThrowNode>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Any } from '../../interface';
|
|
2
|
-
import type {
|
|
2
|
+
import type { AstNode, SpecialExpressionNode, SymbolNode } from '../../parser/types';
|
|
3
3
|
import type { BuiltinSpecialExpression } from '../interface';
|
|
4
4
|
import type { specialExpressionTypes } from '../specialExpressionTypes';
|
|
5
|
-
export type TryNode = SpecialExpressionNode<[typeof specialExpressionTypes['try'],
|
|
5
|
+
export type TryNode = SpecialExpressionNode<[typeof specialExpressionTypes['try'], AstNode, SymbolNode | undefined, AstNode]>;
|
|
6
6
|
export declare const trySpecialExpression: BuiltinSpecialExpression<Any, TryNode>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Any } from '../../interface';
|
|
2
|
-
import type {
|
|
2
|
+
import type { AstNode, SpecialExpressionNode } from '../../parser/types';
|
|
3
3
|
import type { BuiltinSpecialExpression } from '../interface';
|
|
4
4
|
import type { specialExpressionTypes } from '../specialExpressionTypes';
|
|
5
|
-
export type UnlessNode = SpecialExpressionNode<[typeof specialExpressionTypes['unless'], [
|
|
5
|
+
export type UnlessNode = SpecialExpressionNode<[typeof specialExpressionTypes['unless'], [AstNode, AstNode, AstNode?]]>;
|
|
6
6
|
export declare const unlessSpecialExpression: BuiltinSpecialExpression<Any, UnlessNode>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ContextStack } from '../evaluator/ContextStack';
|
|
2
|
-
import type {
|
|
2
|
+
import type { AstNode, BindingTarget } from '../parser/types';
|
|
3
3
|
import type { SourceCodeInfo } from '../tokenizer/token';
|
|
4
4
|
import type { Builtin } from './interface';
|
|
5
|
-
export type Function = [BindingTarget[],
|
|
5
|
+
export type Function = [BindingTarget[], AstNode[]];
|
|
6
6
|
export declare function assertNameNotDefined<T>(name: T, contextStack: ContextStack, builtin: Builtin, sourceCodeInfo?: SourceCodeInfo): asserts name is T;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Any } from '../interface';
|
|
2
|
-
import type { Ast,
|
|
2
|
+
import type { Ast, AstNode } from '../parser/types';
|
|
3
3
|
import type { ContextStack } from './ContextStack';
|
|
4
4
|
export declare function evaluate(ast: Ast, contextStack: ContextStack): Any;
|
|
5
|
-
export declare function evaluateNode(node:
|
|
5
|
+
export declare function evaluateNode(node: AstNode, contextStack: ContextStack): Any;
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import type { Any, Arr } from '../interface';
|
|
2
|
-
import type {
|
|
2
|
+
import type { AstNode, FunctionLike } from '../parser/types';
|
|
3
3
|
import type { SourceCodeInfo } from '../tokenizer/token';
|
|
4
4
|
import type { ContextStack } from './ContextStack';
|
|
5
|
-
|
|
5
|
+
interface ContextEntry {
|
|
6
6
|
value: Any;
|
|
7
7
|
}
|
|
8
8
|
export type Context = Record<string, ContextEntry>;
|
|
9
|
-
export type EvaluateNode = (node:
|
|
9
|
+
export type EvaluateNode = (node: AstNode, contextStack: ContextStack) => Any;
|
|
10
10
|
export type ExecuteFunction = (fn: FunctionLike, params: Arr, contextStack: ContextStack, sourceCodeInfo?: SourceCodeInfo) => Any;
|
|
11
11
|
export type LookUpResult = ContextEntry | null;
|
|
12
12
|
export declare function isContextEntry(value: unknown): value is ContextEntry;
|
|
13
|
+
export {};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Builtin } from '../builtin/interface';
|
|
2
2
|
import type { ContextStack } from '../evaluator/ContextStack';
|
|
3
3
|
import type { EvaluateNode } from '../evaluator/interface';
|
|
4
|
-
import type { Ast,
|
|
4
|
+
import type { Ast, AstNode } from '../parser/types';
|
|
5
5
|
export type UndefinedSymbols = Set<string>;
|
|
6
6
|
export declare const getUndefinedSymbols: GetUndefinedSymbols;
|
|
7
|
-
export type GetUndefinedSymbols = (ast: Ast |
|
|
7
|
+
export type GetUndefinedSymbols = (ast: Ast | AstNode[], contextStack: ContextStack, builtin: Builtin, evaluateNode: EvaluateNode) => UndefinedSymbols;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { SourceCodeInfo, Token } from '../tokenizer/token';
|
|
2
|
+
import type { TokenStream } from '../tokenizer/tokenize';
|
|
3
|
+
import type { AstNode } from './types';
|
|
4
|
+
export declare class ParserContext {
|
|
5
|
+
private readonly tokens;
|
|
6
|
+
private position;
|
|
7
|
+
private storedPosition;
|
|
8
|
+
parseExpression: (precedence?: number, moduleScope?: boolean) => AstNode;
|
|
9
|
+
constructor(tokenStream: TokenStream);
|
|
10
|
+
advance(): void;
|
|
11
|
+
tryPeek(): Token | undefined;
|
|
12
|
+
peek(): Token;
|
|
13
|
+
isAtEnd(): boolean;
|
|
14
|
+
peekSourceCodeInfo(): SourceCodeInfo | undefined;
|
|
15
|
+
storePosition(): number;
|
|
16
|
+
restorePosition(): void;
|
|
17
|
+
peekAhead(count: number): Token | undefined;
|
|
18
|
+
getPosition(): number;
|
|
19
|
+
getTokenAt(pos: number): Token | undefined;
|
|
20
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { OperatorToken, SourceCodeInfo } from '../tokenizer/token';
|
|
2
|
+
import type { AstNode, BindingTarget, NormalBuiltinSymbolNode, NormalExpressionNodeWithName, SymbolNode, UserDefinedSymbolNode } from './types';
|
|
3
|
+
import type { ParserContext } from './ParserContext';
|
|
4
|
+
export declare const exponentiationPrecedence = 12;
|
|
5
|
+
export declare const binaryFunctionalOperatorPrecedence = 3;
|
|
6
|
+
export declare const conditionalOperatorPrecedence = 1;
|
|
7
|
+
export declare function withSourceCodeInfo<T extends AstNode | BindingTarget>(node: T, sourceCodeInfo: SourceCodeInfo | undefined): T;
|
|
8
|
+
export declare function stringToSymbolNode(value: string, sourceCodeInfo: SourceCodeInfo | undefined): SymbolNode;
|
|
9
|
+
export declare function stringFromQuotedSymbol(value: string): string;
|
|
10
|
+
/**
|
|
11
|
+
* Extract the symbol name from any symbol node type.
|
|
12
|
+
* UserDefinedSymbolNode: node[1] is the string name
|
|
13
|
+
* NormalBuiltinSymbolNode: node[1] is an index, need reverse lookup
|
|
14
|
+
* SpecialBuiltinSymbolNode: node[1] is an index, need reverse lookup
|
|
15
|
+
*/
|
|
16
|
+
export declare function getSymbolName(symbol: SymbolNode): string;
|
|
17
|
+
export declare function createNamedNormalExpressionNode(symbolNode: NormalBuiltinSymbolNode | UserDefinedSymbolNode, params: AstNode[], sourceCodeInfo: SourceCodeInfo | undefined): NormalExpressionNodeWithName;
|
|
18
|
+
export declare function isAtExpressionEnd(ctx: ParserContext): boolean;
|
|
19
|
+
export declare function fromBinaryOperatorToNode(operator: OperatorToken, symbolNode: SymbolNode, left: AstNode, right: AstNode, sourceCodeInfo: SourceCodeInfo | undefined): AstNode;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { BindingTarget } from '../types';
|
|
2
|
+
import type { ParserContext } from '../ParserContext';
|
|
3
|
+
export declare function parseBindingTarget(ctx: ParserContext, { requireDefaultValue, noRest }?: {
|
|
4
|
+
requireDefaultValue?: true;
|
|
5
|
+
noRest?: true;
|
|
6
|
+
}): BindingTarget;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { CondNode } from '../../builtin/specialExpressions/cond';
|
|
2
|
+
import { type SymbolToken } from '../../tokenizer/token';
|
|
3
|
+
import type { ParserContext } from '../ParserContext';
|
|
4
|
+
export declare function parseCond(ctx: ParserContext, token: SymbolToken): CondNode;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { DoSeqNode, ForNode } from '../../builtin/specialExpressions/loops';
|
|
2
|
+
import type { SymbolToken } from '../../tokenizer/token';
|
|
3
|
+
import type { ParserContext } from '../ParserContext';
|
|
4
|
+
export declare function parseForOrDoseq(ctx: ParserContext, firstToken: SymbolToken): ForNode | DoSeqNode;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { LambdaNode } from '../../builtin/specialExpressions/functions';
|
|
2
|
+
import type { ParserContext } from '../ParserContext';
|
|
3
|
+
export declare function parseLambdaFunction(ctx: ParserContext): LambdaNode | null;
|
|
4
|
+
export declare function parseShorthandLambdaFunction(ctx: ParserContext): LambdaNode;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { IfNode } from '../../builtin/specialExpressions/if';
|
|
2
|
+
import type { UnlessNode } from '../../builtin/specialExpressions/unless';
|
|
3
|
+
import type { SymbolToken } from '../../tokenizer/token';
|
|
4
|
+
import type { ParserContext } from '../ParserContext';
|
|
5
|
+
export declare function parseIfOrUnless(ctx: ParserContext, token: SymbolToken): IfNode | UnlessNode;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { AstNode } from '../types';
|
|
2
|
+
import type { ParserContext } from '../ParserContext';
|
|
3
|
+
type ImplicitBlockEnd = 'end' | 'else' | 'catch' | 'case';
|
|
4
|
+
export declare function parseImplicitBlock(ctx: ParserContext, ends: ImplicitBlockEnd[]): AstNode;
|
|
5
|
+
export {};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { LoopNode } from '../../builtin/specialExpressions/loop';
|
|
2
|
+
import type { SymbolToken } from '../../tokenizer/token';
|
|
3
|
+
import type { ParserContext } from '../ParserContext';
|
|
4
|
+
export declare function parseLoop(ctx: ParserContext, firstToken: SymbolToken): LoopNode;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { SwitchNode } from '../../builtin/specialExpressions/switch';
|
|
2
|
+
import { type SymbolToken } from '../../tokenizer/token';
|
|
3
|
+
import type { ParserContext } from '../ParserContext';
|
|
4
|
+
export declare function parseSwitch(ctx: ParserContext, token: SymbolToken): SwitchNode;
|
|
@@ -6,12 +6,9 @@ import type { FunctionType, NodeType, NodeTypes } from '../constants/constants';
|
|
|
6
6
|
import type { Context } from '../evaluator/interface';
|
|
7
7
|
import type { Any, Arr, Coll } from '../interface';
|
|
8
8
|
import type { ReservedSymbol } from '../tokenizer/reservedNames';
|
|
9
|
-
import type { SourceCodeInfo
|
|
9
|
+
import type { SourceCodeInfo } from '../tokenizer/token';
|
|
10
10
|
import type { FUNCTION_SYMBOL, REGEXP_SYMBOL } from '../utils/symbols';
|
|
11
|
-
export
|
|
12
|
-
position: number;
|
|
13
|
-
}
|
|
14
|
-
export type EvaluatedFunction = [BindingTarget[], Node[], Context];
|
|
11
|
+
export type EvaluatedFunction = [BindingTarget[], AstNode[], Context];
|
|
15
12
|
interface GenericLitsFunction {
|
|
16
13
|
[FUNCTION_SYMBOL]: true;
|
|
17
14
|
sourceCodeInfo?: SourceCodeInfo;
|
|
@@ -93,23 +90,19 @@ export interface ModuleFunction extends GenericLitsFunction {
|
|
|
93
90
|
export type LitsFunction = NativeJsFunction | UserDefinedFunction | NormalBuiltinFunction | SpecialBuiltinFunction | ModuleFunction | PartialFunction | CompFunction | ConstantlyFunction | JuxtFunction | ComplementFunction | EveryPredFunction | SomePredFunction | FNullFunction;
|
|
94
91
|
export type LitsFunctionType = LitsFunction['functionType'];
|
|
95
92
|
export type FunctionLike = LitsFunction | Coll | number;
|
|
96
|
-
export type
|
|
97
|
-
token: Token;
|
|
98
|
-
nameToken?: Token;
|
|
99
|
-
};
|
|
100
|
-
export type Node<T extends NodeType = NodeType, Payload = unknown> = [T, Payload] | [T, Payload, SourceCodeInfo];
|
|
93
|
+
export type AstNode<T extends NodeType = NodeType, Payload = unknown> = [T, Payload] | [T, Payload, SourceCodeInfo];
|
|
101
94
|
export type ExpressionNode = NormalExpressionNode | SpecialExpressionNode | NumberNode | StringNode;
|
|
102
|
-
export type SpreadNode =
|
|
103
|
-
export type NumberNode =
|
|
104
|
-
export type StringNode =
|
|
105
|
-
export type UserDefinedSymbolNode =
|
|
106
|
-
export type NormalBuiltinSymbolNode =
|
|
107
|
-
export type SpecialBuiltinSymbolNode =
|
|
95
|
+
export type SpreadNode = AstNode<typeof NodeTypes.Spread, AstNode>;
|
|
96
|
+
export type NumberNode = AstNode<typeof NodeTypes.Number, number>;
|
|
97
|
+
export type StringNode = AstNode<typeof NodeTypes.String, string>;
|
|
98
|
+
export type UserDefinedSymbolNode = AstNode<typeof NodeTypes.UserDefinedSymbol, string>;
|
|
99
|
+
export type NormalBuiltinSymbolNode = AstNode<typeof NodeTypes.NormalBuiltinSymbol, number>;
|
|
100
|
+
export type SpecialBuiltinSymbolNode = AstNode<typeof NodeTypes.SpecialBuiltinSymbol, SpecialExpressionType>;
|
|
108
101
|
export type SymbolNode = UserDefinedSymbolNode | NormalBuiltinSymbolNode | SpecialBuiltinSymbolNode;
|
|
109
|
-
export type ReservedSymbolNode =
|
|
110
|
-
export type SpecialExpressionNode<T extends [SpecialExpressionType, ...unknown[]] = [SpecialExpressionType, ...unknown[]]> =
|
|
111
|
-
export type NormalExpressionNodeWithName =
|
|
112
|
-
export type NormalExpressionNodeExpression =
|
|
102
|
+
export type ReservedSymbolNode = AstNode<typeof NodeTypes.ReservedSymbol, ReservedSymbol>;
|
|
103
|
+
export type SpecialExpressionNode<T extends [SpecialExpressionType, ...unknown[]] = [SpecialExpressionType, ...unknown[]]> = AstNode<typeof NodeTypes.SpecialExpression, T>;
|
|
104
|
+
export type NormalExpressionNodeWithName = AstNode<typeof NodeTypes.NormalExpression, [NormalBuiltinSymbolNode | UserDefinedSymbolNode, AstNode[]]>;
|
|
105
|
+
export type NormalExpressionNodeExpression = AstNode<typeof NodeTypes.NormalExpression, [AstNode, AstNode[]]>;
|
|
113
106
|
export type NormalExpressionNode = NormalExpressionNodeWithName | NormalExpressionNodeExpression;
|
|
114
107
|
export declare const bindingTargetTypes: {
|
|
115
108
|
readonly symbol: 11;
|
|
@@ -119,13 +112,13 @@ export declare const bindingTargetTypes: {
|
|
|
119
112
|
};
|
|
120
113
|
export type BindingTargetType = typeof bindingTargetTypes[keyof typeof bindingTargetTypes];
|
|
121
114
|
type GenericTarget<T extends BindingTargetType, Payload extends unknown[]> = [T, Payload] | [T, Payload, SourceCodeInfo];
|
|
122
|
-
export type SymbolBindingTarget = GenericTarget<typeof bindingTargetTypes.symbol, [SymbolNode,
|
|
123
|
-
export type RestBindingTarget = GenericTarget<typeof bindingTargetTypes.rest, [string,
|
|
124
|
-
export type ObjectBindingTarget = GenericTarget<typeof bindingTargetTypes.object, [Record<string, BindingTarget>,
|
|
125
|
-
export type ArrayBindingTarget = GenericTarget<typeof bindingTargetTypes.array, [(BindingTarget | null)[],
|
|
115
|
+
export type SymbolBindingTarget = GenericTarget<typeof bindingTargetTypes.symbol, [SymbolNode, AstNode | undefined]>;
|
|
116
|
+
export type RestBindingTarget = GenericTarget<typeof bindingTargetTypes.rest, [string, AstNode | undefined]>;
|
|
117
|
+
export type ObjectBindingTarget = GenericTarget<typeof bindingTargetTypes.object, [Record<string, BindingTarget>, AstNode | undefined]>;
|
|
118
|
+
export type ArrayBindingTarget = GenericTarget<typeof bindingTargetTypes.array, [(BindingTarget | null)[], AstNode | undefined]>;
|
|
126
119
|
export type BindingTarget = SymbolBindingTarget | RestBindingTarget | ObjectBindingTarget | ArrayBindingTarget;
|
|
127
|
-
export type BindingNode =
|
|
128
|
-
type AstBody =
|
|
120
|
+
export type BindingNode = AstNode<typeof NodeTypes.Binding, [BindingTarget, AstNode]>;
|
|
121
|
+
type AstBody = AstNode[];
|
|
129
122
|
export interface Ast {
|
|
130
123
|
body: AstBody;
|
|
131
124
|
hasDebugData: boolean;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
interface RunTestParams {
|
|
2
2
|
testPath: string;
|
|
3
3
|
testNamePattern?: RegExp;
|
|
4
4
|
}
|
|
5
|
-
|
|
5
|
+
interface TestResult {
|
|
6
6
|
/**
|
|
7
7
|
* Test report
|
|
8
8
|
* http://testanything.org/
|
|
@@ -12,3 +12,4 @@ export interface TestResult {
|
|
|
12
12
|
}
|
|
13
13
|
export declare function runTest({ testPath: filePath, testNamePattern }: RunTestParams): TestResult;
|
|
14
14
|
export declare function getErrorYaml(error: unknown): string;
|
|
15
|
+
export {};
|
|
@@ -2,8 +2,6 @@ import type { ReservedSymbol } from './reservedNames';
|
|
|
2
2
|
import { type SymbolicBinaryOperator, type SymbolicOperator } from './operators';
|
|
3
3
|
export declare const tokenTypes: readonly ["LBrace", "LBracket", "RBrace", "RBracket", "LParen", "RParen", "BasePrefixedNumber", "DocString", "Error", "MultiLineComment", "Number", "Operator", "RegexpShorthand", "ReservedSymbol", "SingleLineComment", "Shebang", "string", "Symbol", "Whitespace"];
|
|
4
4
|
export type TokenType = typeof tokenTypes[number];
|
|
5
|
-
declare const modifierNames: readonly ["&rest", "&let", "&when", "&while"];
|
|
6
|
-
export type ModifierName = typeof modifierNames[number];
|
|
7
5
|
type GenericToken<T extends TokenType, V extends string = string> = [T, V] | [T, V, SourceCodeInfo];
|
|
8
6
|
export type ErrorToken = ['Error', string, SourceCodeInfo | undefined, string];
|
|
9
7
|
export type LBraceToken = GenericToken<'LBrace', '{'>;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import type { BasePrefixedNumberToken, DocStringToken, ErrorToken, LBraceToken, LBracketToken, LParenToken, MultiLineCommentToken, NumberToken, OperatorToken, RBraceToken, RBracketToken, RParenToken, RegexpShorthandToken, ReservedSymbolToken, SingleLineCommentToken, StringToken, SymbolToken, Token, TokenDescriptor, WhitespaceToken } from './token';
|
|
2
|
-
|
|
2
|
+
type Tokenizer<T extends Token> = (input: string, position: number) => TokenDescriptor<T | ErrorToken>;
|
|
3
3
|
export declare const NO_MATCH: TokenDescriptor<never>;
|
|
4
4
|
export declare const tokenizeDocString: Tokenizer<DocStringToken>;
|
|
5
|
-
export declare const tokenizeWhitespace: Tokenizer<WhitespaceToken>;
|
|
6
5
|
export declare const tokenizeNumber: Tokenizer<NumberToken>;
|
|
7
6
|
export declare const tokenizeBasePrefixedNumber: Tokenizer<BasePrefixedNumberToken>;
|
|
8
7
|
export declare const tokenizeSymbol: Tokenizer<SymbolToken>;
|
|
@@ -12,3 +11,4 @@ export declare const tokenizeMultiLineComment: Tokenizer<MultiLineCommentToken>;
|
|
|
12
11
|
export declare const tokenizeShebang: Tokenizer<SingleLineCommentToken>;
|
|
13
12
|
export declare const tokenizeSingleLineComment: Tokenizer<SingleLineCommentToken>;
|
|
14
13
|
export declare const tokenizers: [Tokenizer<WhitespaceToken>, Tokenizer<MultiLineCommentToken>, Tokenizer<SingleLineCommentToken>, Tokenizer<ReservedSymbolToken>, Tokenizer<LParenToken>, Tokenizer<RParenToken>, Tokenizer<LBracketToken>, Tokenizer<RBracketToken>, Tokenizer<LBraceToken>, Tokenizer<RBraceToken>, Tokenizer<DocStringToken>, Tokenizer<StringToken>, Tokenizer<RegexpShorthandToken>, Tokenizer<BasePrefixedNumberToken>, Tokenizer<NumberToken>, Tokenizer<OperatorToken>, Tokenizer<SymbolToken>];
|
|
14
|
+
export {};
|
|
@@ -1,20 +1,19 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { AstNode, ExpressionNode, NormalBuiltinSymbolNode, NormalExpressionNode, NormalExpressionNodeWithName, SpecialBuiltinSymbolNode, SpreadNode, SymbolNode, UserDefinedSymbolNode } from '../parser/types';
|
|
2
2
|
import type { SourceCodeInfo } from '../tokenizer/token';
|
|
3
|
-
export declare function isSymbolNode(node:
|
|
4
|
-
export declare function asSymbolNode(node:
|
|
5
|
-
export declare function assertSymbolNode(node:
|
|
6
|
-
export declare function isUserDefinedSymbolNode(node:
|
|
7
|
-
export declare function asUserDefinedSymbolNode(node:
|
|
8
|
-
export declare function
|
|
9
|
-
export declare function
|
|
10
|
-
export declare function
|
|
11
|
-
export declare function
|
|
12
|
-
export declare function
|
|
13
|
-
export declare function
|
|
14
|
-
export declare function
|
|
15
|
-
export declare function
|
|
16
|
-
export declare function
|
|
17
|
-
export declare function
|
|
18
|
-
export declare function
|
|
19
|
-
export declare function
|
|
20
|
-
export declare function isSpreadNode(node: Node): node is SpreadNode;
|
|
3
|
+
export declare function isSymbolNode(node: AstNode): node is SymbolNode;
|
|
4
|
+
export declare function asSymbolNode(node: AstNode, sourceCodeInfo?: SourceCodeInfo): SymbolNode;
|
|
5
|
+
export declare function assertSymbolNode(node: AstNode, sourceCodeInfo?: SourceCodeInfo): asserts node is SymbolNode;
|
|
6
|
+
export declare function isUserDefinedSymbolNode(node: AstNode): node is UserDefinedSymbolNode;
|
|
7
|
+
export declare function asUserDefinedSymbolNode(node: AstNode, sourceCodeInfo?: SourceCodeInfo): UserDefinedSymbolNode;
|
|
8
|
+
export declare function isNormalBuiltinSymbolNode(node: AstNode): node is NormalBuiltinSymbolNode;
|
|
9
|
+
export declare function isSpecialBuiltinSymbolNode(node: AstNode): node is SpecialBuiltinSymbolNode;
|
|
10
|
+
export declare function isNormalExpressionNode(node: AstNode): node is NormalExpressionNode;
|
|
11
|
+
export declare function asNormalExpressionNode(node: AstNode, sourceCodeInfo?: SourceCodeInfo): NormalExpressionNode;
|
|
12
|
+
export declare function assertNormalExpressionNode(node: AstNode, sourceCodeInfo?: SourceCodeInfo): asserts node is NormalExpressionNode;
|
|
13
|
+
export declare function isNormalExpressionNodeWithName(node: AstNode): node is NormalExpressionNodeWithName;
|
|
14
|
+
export declare function asNormalExpressionNodeWithName(node: AstNode, sourceCodeInfo?: SourceCodeInfo): NormalExpressionNodeWithName;
|
|
15
|
+
export declare function assertNormalExpressionNodeWithName(node: AstNode, sourceCodeInfo?: SourceCodeInfo): asserts node is NormalExpressionNodeWithName;
|
|
16
|
+
export declare function isExpressionNode(node: AstNode): node is ExpressionNode;
|
|
17
|
+
export declare function asExpressionNode(node: AstNode, sourceCodeInfo?: SourceCodeInfo): ExpressionNode;
|
|
18
|
+
export declare function assertExpressionNode(node: AstNode, sourceCodeInfo?: SourceCodeInfo): asserts node is ExpressionNode;
|
|
19
|
+
export declare function isSpreadNode(node: AstNode): node is SpreadNode;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { UnknownRecord } from '../interface';
|
|
2
2
|
import type { SourceCodeInfo } from '../tokenizer/token';
|
|
3
|
-
export declare function isNonUndefined<T>(value: T | undefined): value is T;
|
|
4
3
|
export declare function asNonUndefined<T>(value: T | undefined, sourceCodeInfo?: SourceCodeInfo): T;
|
|
5
4
|
export declare function assertNonUndefined<T>(value: T | undefined, sourceCodeInfo?: SourceCodeInfo): asserts value is T;
|
|
6
5
|
export declare function isUnknownRecord(value: unknown): value is Record<string, unknown>;
|
|
@@ -19,6 +19,5 @@ export declare function assertRegularExpression(value: unknown, sourceCodeInfo?:
|
|
|
19
19
|
export declare function isStringOrRegularExpression(value: unknown): value is string | RegularExpression;
|
|
20
20
|
export declare function asStringOrRegularExpression(value: unknown, sourceCodeInfo?: SourceCodeInfo): string | RegularExpression;
|
|
21
21
|
export declare function assertStringOrRegularExpression(value: unknown, sourceCodeInfo?: SourceCodeInfo): asserts value is string | RegularExpression;
|
|
22
|
-
export declare function isFunctionLike(value: unknown): value is FunctionLike;
|
|
23
22
|
export declare function asFunctionLike(value: unknown, sourceCodeInfo?: SourceCodeInfo): FunctionLike;
|
|
24
23
|
export declare function assertFunctionLike(value: unknown, sourceCodeInfo?: SourceCodeInfo): asserts value is FunctionLike;
|