@odata/parser
Version:
OData(V4) Parser
37 lines (36 loc) • 1.74 kB
TypeScript
import { Token, TokenType } from './lexer';
import { CustomQueryOptionToken, ExpandToken, FormatToken, SearchToken, SkipToken, TopToken } from './token';
export type SourceArray = number[] | Uint16Array;
export declare function stringify(value: SourceArray, index: number, next: number): string;
export declare function is(value: number, compare: string): boolean;
export declare function equals(value: SourceArray, index: number, compare: string): number;
export declare function required(value: SourceArray, index: number, comparer: Function, min?: number, max?: number): number;
export declare function isType(node: Token, type: TokenType.CustomQueryOption): node is CustomQueryOptionToken;
export declare function isType(node: Token, type: TokenType.Skip): node is SkipToken;
export declare function isType(node: Token, type: TokenType.Top): node is TopToken;
/**
* find one node in ast node by type
*
* @param node
* @param type
*/
export declare function findOne(node: Token, type: TokenType.Top): TopToken;
export declare function findOne(node: Token, type: TokenType.Skip): SkipToken;
export declare function findOne(node: Token, type: TokenType.Expand): ExpandToken;
export declare function findOne(node: Token, type: TokenType.Format): FormatToken;
export declare function findOne(node: Token, type: TokenType.Search): SearchToken;
export declare function findOne(node: Token, type: TokenType): Token;
/**
* find all nodes in ast node by type
*
* @param node
* @param type
*/
export declare function findAll(node: Token, type: TokenType): Array<Token>;
declare const _default: {
stringify: typeof stringify;
is: typeof is;
equals: typeof equals;
required: typeof required;
};
export default _default;