UNPKG

@runtimeverificationinc/tsk

Version:

TypeScript/JavaScript library for K Framework functionality

77 lines (76 loc) 1.65 kB
export declare enum TokenType { EOF = 0, COMMA = 1, LPAREN = 2, RPAREN = 3, LBRACE = 4, RBRACE = 5, LBRACK = 6, RBRACK = 7, VBAR = 8, EQ = 9, GT = 10, PLUS = 11, TIMES = 12, QUESTION = 13, TILDE = 14, COLON = 15, DCOLONEQ = 16, KW_ALIAS = 17, KW_CLAIM = 18, KW_CONFIG = 19, KW_CONTEXT = 20, KW_ENDMODULE = 21, KW_IMPORTS = 22, KW_LEFT = 23, KW_LEXICAL = 24, KW_MODULE = 25, KW_NONASSOC = 26, KW_PRIORITY = 27, KW_PRIVATE = 28, KW_PUBLIC = 29, KW_REQUIRES = 30, KW_RIGHT = 31, KW_RULE = 32, KW_SYNTAX = 33, NAT = 34, STRING = 35, REGEX = 36, ID_LOWER = 37, ID_UPPER = 38, MODNAME = 39, KLABEL = 40, RULE_LABEL = 41, ATTR_KEY = 42, ATTR_CONTENT = 43, BUBBLE = 44 } export declare class Loc { line: number; col: number; constructor(line: number, col: number); add(other: string): Loc; } export declare const INIT_LOC: Loc; export declare class Token { text: string; type: TokenType; loc: Loc; constructor(text: string, type: TokenType, loc: Loc); let(options: { text?: string; type?: TokenType; loc?: Loc; }): Token; } export declare class LocationIterator implements Iterator<string> { private line; private col; private iter; private nextline; constructor(text: Iterable<string>, line?: number, col?: number); next(): IteratorResult<string>; get loc(): Loc; [Symbol.iterator](): Iterator<string>; } export declare function outerLexer(text: Iterable<string>): Generator<Token>;