From 8b610f2bcfc223333254ce9679730c42dce6d26e Mon Sep 17 00:00:00 2001 From: Kai Stevenson Date: Mon, 3 Nov 2025 23:41:31 -0800 Subject: add createFn --- src/js-lang/core/lexer.ts | 46 ---------------------------------------------- 1 file changed, 46 deletions(-) delete mode 100644 src/js-lang/core/lexer.ts (limited to 'src/js-lang/core/lexer.ts') diff --git a/src/js-lang/core/lexer.ts b/src/js-lang/core/lexer.ts deleted file mode 100644 index 95e0e19..0000000 --- a/src/js-lang/core/lexer.ts +++ /dev/null @@ -1,46 +0,0 @@ -import { TokenType, Lex, Token } from "../../ts-lang"; - -const WHITESPACE_TOKENS = [ - TokenType.SPACE, - TokenType.COMMA, - TokenType.SEMICOLON, -] as string[]; - -export const lex = (raw: Raw): Lex => { - let _raw: string = raw; - let nameCollection = ""; - const tokens: Token[] = []; - - while (_raw) { - const head = _raw[0]; - _raw = _raw.slice(1); - - const processNameCollection = () => { - if (nameCollection) { - tokens.push({ type: TokenType.NAME, name: nameCollection }); - nameCollection = ""; - } - }; - - if (WHITESPACE_TOKENS.includes(head)) { - processNameCollection(); - continue; - } - - if (head === TokenType.OPEN_PAREN) { - processNameCollection(); - tokens.push({ type: TokenType.OPEN_PAREN, name: "" }); - continue; - } - - if (head === TokenType.CLOSE_PAREN) { - processNameCollection(); - tokens.push({ type: TokenType.CLOSE_PAREN, name: "" }); - continue; - } - - nameCollection += head; - } - - return tokens as Lex; -}; -- cgit v1.2.3-70-g09d2