MCPcopy Create free account
hub / github.com/aiscript-dev/aiscript / ITokenStream

Interface ITokenStream

src/parser/streams/token-stream.ts:8–49  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

6 * トークンの読み取りに関するインターフェース
7*/
8export interface ITokenStream {
9 /**
10 * カーソル位置にあるトークンを取得します。
11 */
12 getToken(): Token;
13
14 /**
15 * カーソル位置にあるトークンの種類が指定したトークンの種類と一致するかどうかを示す値を取得します。
16 */
17 is(kind: TokenKind): boolean;
18
19 /**
20 * カーソル位置にあるトークンの種類を取得します。
21 */
22 getTokenKind(): TokenKind;
23
24 /**
25 * カーソル位置にあるトークンに含まれる値を取得します。
26 */
27 getTokenValue(): string;
28
29 /**
30 * カーソル位置にあるトークンの位置情報を取得します。
31 */
32 getPos(): TokenPosition;
33
34 /**
35 * カーソル位置を次のトークンへ進めます。
36 */
37 next(): void;
38
39 /**
40 * トークンの先読みを行います。カーソル位置は移動されません。
41 */
42 lookahead(offset: number): Token;
43
44 /**
45 * カーソル位置にあるトークンの種類が指定したトークンの種類と一致することを確認します。
46 * 一致しなかった場合には文法エラーを発生させます。
47 */
48 expect(kind: TokenKind): void;
49}
50
51/**
52 * トークン列からトークンを読み取るクラス

Callers 57

nextFunction · 0.65
parseLabelFunction · 0.65
parseAtomFunction · 0.65
parseReferenceFunction · 0.65
parsePrattFunction · 0.65
parseDestFunction · 0.65
parseParamsFunction · 0.65
parseBlockFunction · 0.65
parseOptionalSeparatorFunction · 0.65
parseTopLevelFunction · 0.65
parseNamespaceFunction · 0.65
parseMetaFunction · 0.65

Implementers 2

Scannersrc/parser/scanner.ts
TokenStreamsrc/parser/streams/token-stream.ts

Calls

no outgoing calls

Tested by

no test coverage detected