@jmespath-community/jmespath
Version:
Typescript implementation of the JMESPath Community specification
34 lines (33 loc) • 1.17 kB
TypeScript
import type { ExpressionNode } from './AST.type';
import { LexerToken } from './Lexer.type';
import { Options } from './Parser.type';
declare class TokenParser {
index: number;
tokens: LexerToken[];
parse(expression: string, options?: Options): ExpressionNode;
private loadTokens;
expression(rbp: number): ExpressionNode;
private lookahead;
private lookaheadToken;
private advance;
nud(token: LexerToken): ExpressionNode;
led(tokenName: string, left: ExpressionNode): ExpressionNode;
private static isKeyword;
private match;
private errorToken;
private parseIndexExpression;
private projectIfSlice;
private parseSliceExpression;
private parseLetExpression;
private parseCommaSeparatedExpressionsUntilKeyword;
private parseCommaSeparatedExpressionsUntilToken;
private parseCommaSeparatedExpressionsUntil;
private parseComparator;
private parseArithmetic;
private parseDotRHS;
private parseProjectionRHS;
private parseMultiselectList;
private parseMultiselectHash;
}
export declare const Parser: TokenParser;
export default Parser;