[Typer] [Git][monnier/typer][instance-args] 29 commits: Rewrite the Lexer module in terms of source objects.