mirror of
https://github.com/dlang/dmd.git
synced 2025-04-26 13:10:12 +03:00
33 lines
693 B
D
Executable file
33 lines
693 B
D
Executable file
#!/usr/bin/env dub
|
|
/+dub.sdl:
|
|
dependency "dmd" path="../../.."
|
|
+/
|
|
void main()
|
|
{
|
|
import dmd.globals;
|
|
import dmd.lexer;
|
|
import dmd.tokens;
|
|
import dmd.errorsink;
|
|
|
|
immutable expected = [
|
|
TOK.void_,
|
|
TOK.identifier,
|
|
TOK.leftParenthesis,
|
|
TOK.rightParenthesis,
|
|
TOK.leftCurly,
|
|
TOK.rightCurly
|
|
];
|
|
|
|
immutable sourceCode = "void test() {} // foobar";
|
|
scope lexer = new Lexer("test", sourceCode.ptr, 0, sourceCode.length, 0, 0, 0, new ErrorSinkStderr);
|
|
lexer.nextToken;
|
|
|
|
TOK[] result;
|
|
|
|
do
|
|
{
|
|
result ~= lexer.token.value;
|
|
} while (lexer.nextToken != TOK.endOfFile);
|
|
|
|
assert(result == expected);
|
|
}
|