pub fn new(s: &str) -> Lexer {
        // Initialize the lexer with the first character of the source string.
        let first_char = s.chars().next();

        Lexer {
            src: s,
            offset: 0,
            current_char: first_char,
            last_token_kind: None,
        }
    }
/// Create a new Lexer from the given source string.
Create a new Lexer from the given source string.
Create a new Lexer from the given source string .
pub fn new(s: &str) -> Lexer {
        // Initialize the lexer with the first character of the source string.
        let first_char = s.chars().next();
        Lexer {
            src: s,
            offset: 0,
            current_char: first_char,
            last_token_kind: None,
        }
    }
pub fn new ( s : & str ) -> Lexer { // Initialize the lexer with the first character of the source string. let first_char = s . chars ( ) . next ( ) ; Lexer { src : s , offset : 0 , current_char : first_char , last_token_kind : None , } }
Create a new Lexer from the given source string.
Create a new Lexer from the given source string .
s
&str