Give Lexer constructor a privacy scope.