UNPKG

@pawel-up/jexl

Version:

Javascript Expression Language: Powerful context-based expression parser and evaluator

68 lines 1.81 kB
import type { Grammar } from '../grammar.js'; export interface Token { type: string; raw?: string; right?: Token; _parent?: Token; args?: Token[]; value?: unknown | unknown[]; operator?: string; expr?: Token; subject?: Token; relative?: boolean; from?: Token; name?: string; pool?: string; left?: Token; test?: Token; consequent?: Token; alternate?: Token; } export default class Parser { _grammar: Grammar; _state: string; _tree: Token | null; _exprStr: string; _relative: boolean; _stopMap: Record<string, unknown>; _subParser: any; _parentStop: any; _cursor?: Token; _nextIdentEncapsulate?: boolean; _nextIdentRelative?: boolean; _curObjKey?: string; constructor(grammar: Grammar, prefix?: string, stopMap?: Record<string, unknown>); addToken(token: Token): boolean | unknown; addTokens(tokens: Token[]): void; complete(): Token | null; isRelative(): boolean; _endSubExpression(): void; _placeAtCursor(node: Token): void; _placeBeforeCursor(node: Token): void; _setParent(node: Token, parent: Token): void; _startSubExpression(exprStr?: string): void; private argVal; private arrayStart; private arrayVal; private binaryOp; private dot; private filter; private functionCall; private _buildFullIdentifierPath; private identifier; private literal; private objKey; private objStart; private objVal; private subExpression; private ternaryEnd; private ternaryMid; private ternaryStart; private transform; private unaryOp; private _getHandlerMethod; private pipe; private _getTokenHandlerMethod; private _getSubHandlerMethod; } //# sourceMappingURL=Parser.d.ts.map